Claude Platform Docs

Files

Upload File
files.upload(**kwargs) -> FileMetadata
POST/v1/files
List Files
files.list(**kwargs) -> PageCursor<FileMetadata>
GET/v1/files
Download File
files.download(file_id) -> StringIO
GET/v1/files/{file_id}/content
Get File Metadata
files.retrieve_metadata(file_id) -> FileMetadata
GET/v1/files/{file_id}
Delete File
files.delete(file_id) -> DeletedFile
DELETE/v1/files/{file_id}
Models
class DeletedFile { id, type }
id: String

ID of the deleted file.

type: :file_deleted

Deleted object type.

For file deletion, this is always "file_deleted".

class FileMetadata { id, created_at, filename, 5 more }
id: String

Unique object identifier.

The format and length of IDs may change over time.

created_at: Time

RFC 3339 datetime string representing when the file was created.

formatdate-time
filename: String

Original filename of the uploaded file.

maxLength500
minLength1
mime_type: String

MIME type of the file.

maxLength255
minLength1
size_bytes: Integer

Size of the file in bytes.

minimum0
type: :file

Object type.

For files, this is always "file".

downloadable: bool

Whether the file can be downloaded.

expires_at: Time

RFC 3339 datetime string representing when the file will expire and become unavailable for download. Null if the file does not expire. For files uploaded with expires_in_seconds, this is the upload time plus that value.

formatdate-time