Documentation ¶
Overview ¶
Package api has type definitions for box
Converted from the API docs with help from https://mholt.github.io/json-to-go/
Index ¶
Constants ¶
const ( ItemTypeFolder = "folder" ItemTypeFile = "file" ItemStatusActive = "active" ItemStatusTrashed = "trashed" ItemStatusDeleted = "deleted" )
Types of things in Item
Variables ¶
var ItemFields = "type,id,sequence_id,etag,sha1,name,size,created_at,modified_at,content_created_at,content_modified_at,item_status"
ItemFields are the fields needed for FileInfo
Functions ¶
This section is empty.
Types ¶
type CommitUpload ¶
type CommitUpload struct { Parts []Part `json:"parts"` Attributes struct { ContentCreatedAt Time `json:"content_created_at"` ContentModifiedAt Time `json:"content_modified_at"` } `json:"attributes"` }
CommitUpload is used in the Commit Upload call
type CreateFolder ¶
CreateFolder is the request for Create Folder
type Error ¶
type Error struct { Type string `json:"type"` Status int `json:"status"` Code string `json:"code"` ContextInfo json.RawMessage HelpURL string `json:"help_url"` Message string `json:"message"` RequestID string `json:"request_id"` }
Error is returned from box when things go wrong
type FolderItems ¶
type FolderItems struct { TotalCount int `json:"total_count"` Entries []Item `json:"entries"` Offset int `json:"offset"` Limit int `json:"limit"` Order []struct { By string `json:"by"` Direction string `json:"direction"` } `json:"order"` }
FolderItems is returned from the GetFolderItems call
type Item ¶
type Item struct { Type string `json:"type"` ID string `json:"id"` SequenceID string `json:"sequence_id"` Etag string `json:"etag"` SHA1 string `json:"sha1"` Name string `json:"name"` Size int64 `json:"size"` CreatedAt Time `json:"created_at"` ModifiedAt Time `json:"modified_at"` ContentCreatedAt Time `json:"content_created_at"` ContentModifiedAt Time `json:"content_modified_at"` ItemStatus string `json:"item_status"` // active, trashed if the file has been moved to the trash, and deleted if the file has been permanently deleted }
Item describes a folder or a file as returned by Get Folder Items and others
type Parent ¶
type Parent struct {
ID string `json:"id"`
}
Parent defined the ID of the parent directory
type Part ¶
type Part struct { PartID string `json:"part_id"` Offset int `json:"offset"` Size int `json:"size"` Sha1 string `json:"sha1"` }
Part defines the return from upload part call which are passed to commit upload also
type Time ¶
Time represents represents date and time information for the box API, by using RFC3339
func (*Time) MarshalJSON ¶
MarshalJSON turns a Time into JSON (in UTC)
func (*Time) UnmarshalJSON ¶
UnmarshalJSON turns JSON into a Time
type UpdateFileModTime ¶
type UpdateFileModTime struct {
ContentModifiedAt Time `json:"content_modified_at"`
}
UpdateFileModTime is used in Update File Info
type UpdateFileMove ¶
UpdateFileMove is the request for Upload File to change name and parent
type UploadFile ¶
type UploadFile struct { Name string `json:"name"` Parent Parent `json:"parent"` ContentCreatedAt Time `json:"content_created_at"` ContentModifiedAt Time `json:"content_modified_at"` }
UploadFile is the request for Upload File
type UploadPartResponse ¶
type UploadPartResponse struct {
Part Part `json:"part"`
}
UploadPartResponse is returned from the upload part call
type UploadSessionRequest ¶
type UploadSessionRequest struct { FolderID string `json:"folder_id,omitempty"` // don't pass for update FileSize int64 `json:"file_size"` FileName string `json:"file_name,omitempty"` // optional for update }
UploadSessionRequest is uses in Create Upload Session
type UploadSessionResponse ¶
type UploadSessionResponse struct { TotalParts int `json:"total_parts"` PartSize int64 `json:"part_size"` SessionEndpoints struct { ListParts string `json:"list_parts"` Commit string `json:"commit"` UploadPart string `json:"upload_part"` Status string `json:"status"` Abort string `json:"abort"` } `json:"session_endpoints"` SessionExpiresAt Time `json:"session_expires_at"` ID string `json:"id"` Type string `json:"type"` NumPartsProcessed int `json:"num_parts_processed"` }
UploadSessionResponse is returned from Create Upload Session