Files
Upload File
POST /v1/files
Upload File
Headers
"anthropic-workspace-id": optional string
Body parameters (form-data)
file: stringThe file to upload. Only the final path component of the part's
filenameis kept; an absent or emptyfilenameis replaced withunnamedplus the extension for the file's storedmime_type, when known.format: binary
expires_in_seconds: optional numberSeconds from upload until the file expires and its bytes become permanently unavailable. Must be between 3600 (one hour) and 7776000 (ninety days).
minimum: 3600, maximum: 7776000
Returns
FileMetadata objecttype: "file"Object type.
For files, this is always
"file".id: stringUnique object identifier.
The format and length of IDs may change over time.
created_at: stringRFC 3339 datetime string representing when the file was created.
format: date-time
filename: stringOriginal filename of the uploaded file.
maxLength: 500, minLength: 1
mime_type: stringMIME type of the file.
maxLength: 255, minLength: 1
size_bytes: numberSize of the file in bytes.
minimum: 0
downloadable: optional booleanWhether the file can be downloaded.
default: false
expires_at: optional string or nullRFC 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.format: date-time
Example
curl https://api.anthropic.com/v1/files \
-H 'Content-Type: multipart/form-data' \
-H 'anthropic-version: 2023-06-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY" \
-F 'file=@/path/to/file'Response (200)
{
"id": "file_011CNha8iCJcU1wXNR6q4V8w",
"created_at": "2025-04-15T18:37:24.100435Z",
"filename": "document.pdf",
"mime_type": "application/pdf",
"size_bytes": 102400,
"type": "file",
"downloadable": false,
"expires_at": "2025-05-15T18:37:24.100435Z"
}List Files
GET /v1/files
List Files
Query parameters
ids: optional array of stringRestrict the result set to Files whose
idis in this list. At most 100 entries (after de-duplication). Mutually exclusive withpageandlimit. When supplied, the response is always a single page (next_pageis null). IDs that do not resolve to a visible File — including deleted Files — are silently omitted.limit: optional numberNumber of items to return per page.
Defaults to
20. Ranges from1to1000.default: 20, maximum: 1000, minimum: 1
page: optional stringOpaque page cursor returned in a prior list response's
next_page. Prefixedpage_.
Headers
"anthropic-workspace-id": optional string
Returns
data: array of FileMetadataList of file metadata objects.
type: "file"Object type.
For files, this is always
"file".id: stringUnique object identifier.
The format and length of IDs may change over time.
created_at: stringRFC 3339 datetime string representing when the file was created.
format: date-time
filename: stringOriginal filename of the uploaded file.
maxLength: 500, minLength: 1
mime_type: stringMIME type of the file.
maxLength: 255, minLength: 1
size_bytes: numberSize of the file in bytes.
minimum: 0
downloadable: optional booleanWhether the file can be downloaded.
default: false
expires_at: optional string or nullRFC 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.format: date-time
next_page: optional string or nullOpaque cursor for the next page. Supply as
?page=to fetch the next page; null when there are no more results.
Example
curl https://api.anthropic.com/v1/files \
-H 'anthropic-version: 2023-06-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"data": [
{
"id": "file_011CNha8iCJcU1wXNR6q4V8w",
"created_at": "2025-04-15T18:37:24.100435Z",
"filename": "document.pdf",
"mime_type": "application/pdf",
"size_bytes": 102400,
"type": "file",
"downloadable": false,
"expires_at": "2025-05-15T18:37:24.100435Z"
}
],
"next_page": "next_page"
}Download File
GET /v1/files/\{file_id\}/content
Download File
Path parameters
file_id: stringID of the File.
Headers
"anthropic-workspace-id": optional string
Example
curl https://api.anthropic.com/v1/files/$FILE_ID/content \
-H 'anthropic-version: 2023-06-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Get File Metadata
GET /v1/files/\{file_id\}
Get File Metadata
Path parameters
file_id: stringID of the File.
Headers
"anthropic-workspace-id": optional string
Returns
FileMetadata objecttype: "file"Object type.
For files, this is always
"file".id: stringUnique object identifier.
The format and length of IDs may change over time.
created_at: stringRFC 3339 datetime string representing when the file was created.
format: date-time
filename: stringOriginal filename of the uploaded file.
maxLength: 500, minLength: 1
mime_type: stringMIME type of the file.
maxLength: 255, minLength: 1
size_bytes: numberSize of the file in bytes.
minimum: 0
downloadable: optional booleanWhether the file can be downloaded.
default: false
expires_at: optional string or nullRFC 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.format: date-time
Example
curl https://api.anthropic.com/v1/files/$FILE_ID \
-H 'anthropic-version: 2023-06-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "file_011CNha8iCJcU1wXNR6q4V8w",
"created_at": "2025-04-15T18:37:24.100435Z",
"filename": "document.pdf",
"mime_type": "application/pdf",
"size_bytes": 102400,
"type": "file",
"downloadable": false,
"expires_at": "2025-05-15T18:37:24.100435Z"
}Delete File
DELETE /v1/files/\{file_id\}
Delete File
Path parameters
file_id: stringID of the File.
Headers
"anthropic-workspace-id": optional string
Returns
DeletedFile objecttype: optional "file_deleted"Deleted object type.
For file deletion, this is always
"file_deleted".default: file_deleted
id: stringID of the deleted file.
Example
curl https://api.anthropic.com/v1/files/$FILE_ID \
-X DELETE \
-H 'anthropic-version: 2023-06-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "file_011CNha8iCJcU1wXNR6q4V8w",
"type": "file_deleted"
}Domain types
Deleted File
DeletedFile objecttype: optional "file_deleted"Deleted object type.
For file deletion, this is always
"file_deleted".default: file_deleted
id: stringID of the deleted file.
File Metadata
FileMetadata objecttype: "file"Object type.
For files, this is always
"file".id: stringUnique object identifier.
The format and length of IDs may change over time.
created_at: stringRFC 3339 datetime string representing when the file was created.
format: date-time
filename: stringOriginal filename of the uploaded file.
maxLength: 500, minLength: 1
mime_type: stringMIME type of the file.
maxLength: 255, minLength: 1
size_bytes: numberSize of the file in bytes.
minimum: 0
downloadable: optional booleanWhether the file can be downloaded.
default: false
expires_at: optional string or nullRFC 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.format: date-time