Files
api/beta/files
Nearest release: v2.1.245, published an hour after this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
api/beta/files Changed · +84 / -55 lines
### Headers ### Body parameters (form-data) #### Response (200) ### Query parameters ### Headers #### Response (200) ### Path parameters ### Headers ### Path parameters ### Headers #### Response (200) ### Path parameters ### Headers #### Response (200) ## Domain types ### Header Parameters #### Response ### Query Parameters ### Header Parameters #### Response ### Path Parameters ### Header Parameters ### Path Parameters ### Header Parameters #### Response ### Path Parameters ### Header Parameters #### Response ## Domain Types
---- -title: Files -url: https://platform.claude.com/docs/en/api/beta/files ---- - # Files ## Upload File -**post** `/v1/files` +**POST** `/v1/files` Upload File -### Header Parameters +### Headers - `"anthropic-beta": optional array of AnthropicBeta`
- `"mid-conversation-tool-changes-2026-07-01"` +### Body parameters (form-data) + +- `file: string` + + The file to upload + + format: binary + ### Returns -- `BetaFileMetadata object { id, created_at, filename, 5 more }` +- `BetaFileMetadata object` - `id: string`
RFC 3339 datetime string representing when the file was created. + format: date-time + - `filename: string` Original filename of the uploaded file. + maxLength: 500, minLength: 1 + - `mime_type: string` MIME type of the file. + maxLength: 255, minLength: 1 + - `size_bytes: number` Size of the file in bytes. + minimum: 0 + - `type: "file"` Object type.
For files, this is always `"file"`. - - `"file"` - - `downloadable: optional boolean` Whether the file can be downloaded. + default: false + - `scope: optional BetaFileScope or null` The scope of this file, indicating the context in which it was created (e.g., a session).
The type of scope (e.g., `"session"`). - - `"session"` - ### Example -```http +```bash curl https://api.anthropic.com/v1/files \ -H 'Content-Type: multipart/form-data' \ -H 'anthropic-version: 2023-06-01' \
-F 'file=@/path/to/file' ``` -#### Response +#### Response (200) ```json {
## List Files -**get** `/v1/files` +**GET** `/v1/files` List Files -### Query Parameters +### Query parameters - `after_id: optional string`
Defaults to `20`. Ranges from `1` to `1000`. + default: 20, maximum: 1000, minimum: 1 + - `scope_id: optional string` Filter by scope ID. Only returns files associated with the specified scope (e.g., a session ID). -### Header Parameters +### Headers - `"anthropic-beta": optional array of AnthropicBeta`
RFC 3339 datetime string representing when the file was created. + format: date-time + - `filename: string` Original filename of the uploaded file. + maxLength: 500, minLength: 1 + - `mime_type: string` MIME type of the file. + maxLength: 255, minLength: 1 + - `size_bytes: number` Size of the file in bytes. + minimum: 0 + - `type: "file"` Object type.
For files, this is always `"file"`. - - `"file"` - - `downloadable: optional boolean` Whether the file can be downloaded. + default: false + - `scope: optional BetaFileScope or null` The scope of this file, indicating the context in which it was created (e.g., a session).
The type of scope (e.g., `"session"`). - - `"session"` - - `first_id: optional string or null` ID of the first file in this page of results.
Whether there are more results available. + default: false + - `last_id: optional string or null` ID of the last file in this page of results.
### Example -```http +```bash curl https://api.anthropic.com/v1/files \ -H 'anthropic-version: 2023-06-01' \ -H 'anthropic-beta: files-api-2025-04-14' \
-H "X-Api-Key: $ANTHROPIC_API_KEY" ``` -#### Response +#### Response (200) ```json {
## Download File -**get** `/v1/files/{file_id}/content` +**GET** `/v1/files/{file_id}/content` Download File -### Path Parameters +### Path parameters - `file_id: string` ID of the File. -### Header Parameters +### Headers - `"anthropic-beta": optional array of AnthropicBeta`
### Example -```http +```bash curl https://api.anthropic.com/v1/files/$FILE_ID/content \ -H 'anthropic-version: 2023-06-01' \ -H 'anthropic-beta: files-api-2025-04-14' \
## Get File Metadata -**get** `/v1/files/{file_id}` +**GET** `/v1/files/{file_id}` Get File Metadata -### Path Parameters +### Path parameters - `file_id: string` ID of the File. -### Header Parameters +### Headers - `"anthropic-beta": optional array of AnthropicBeta`
### Returns -- `BetaFileMetadata object { id, created_at, filename, 5 more }` +- `BetaFileMetadata object` - `id: string`
RFC 3339 datetime string representing when the file was created. + format: date-time + - `filename: string` Original filename of the uploaded file. + maxLength: 500, minLength: 1 + - `mime_type: string` MIME type of the file. + maxLength: 255, minLength: 1 + - `size_bytes: number` Size of the file in bytes. + minimum: 0 + - `type: "file"` Object type.
For files, this is always `"file"`. - - `"file"` - - `downloadable: optional boolean` Whether the file can be downloaded. + default: false + - `scope: optional BetaFileScope or null` The scope of this file, indicating the context in which it was created (e.g., a session).
The type of scope (e.g., `"session"`). - - `"session"` - ### Example -```http +```bash curl https://api.anthropic.com/v1/files/$FILE_ID \ -H 'anthropic-version: 2023-06-01' \ -H 'anthropic-beta: files-api-2025-04-14' \
-H "X-Api-Key: $ANTHROPIC_API_KEY" ``` -#### Response +#### Response (200) ```json {
## Delete File -**delete** `/v1/files/{file_id}` +**DELETE** `/v1/files/{file_id}` Delete File -### Path Parameters +### Path parameters - `file_id: string` ID of the File. -### Header Parameters +### Headers - `"anthropic-beta": optional array of AnthropicBeta`
### Returns -- `BetaDeletedFile object { id, type }` +- `BetaDeletedFile object` - `id: string`
For file deletion, this is always `"file_deleted"`. - - `"file_deleted"` + default: file_deleted ### Example -```http +```bash 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 +#### Response (200) ```json {
} ``` -## Domain Types +## Domain types ### Beta Deleted File -- `BetaDeletedFile object { id, type }` +- `BetaDeletedFile object` - `id: string`
For file deletion, this is always `"file_deleted"`. - - `"file_deleted"` + default: file_deleted ### Beta File Metadata -- `BetaFileMetadata object { id, created_at, filename, 5 more }` +- `BetaFileMetadata object` - `id: string`
RFC 3339 datetime string representing when the file was created. + format: date-time + - `filename: string` Original filename of the uploaded file. + maxLength: 500, minLength: 1 + - `mime_type: string` MIME type of the file. + maxLength: 255, minLength: 1 + - `size_bytes: number` Size of the file in bytes. + minimum: 0 + - `type: "file"` Object type.
For files, this is always `"file"`. - - `"file"` - - `downloadable: optional boolean` Whether the file can be downloaded. + default: false + - `scope: optional BetaFileScope or null` The scope of this file, indicating the context in which it was created (e.g., a session).
The type of scope (e.g., `"session"`). - - `"session"` - ### Beta File Scope -- `BetaFileScope object { id, type }` +- `BetaFileScope object` - `id: string`
- `type: "session"` The type of scope (e.g., `"session"`). - - - `"session"`