curl --request POST \
--url https://api.openai.com/v1/files \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form file='@example-file' \
--form purpose=assistants{
"id": "<string>",
"bytes": 123,
"created_at": 123,
"filename": "<string>",
"object": "file",
"purpose": "assistants",
"status": "uploaded",
"expires_at": 123,
"status_details": "<string>"
}Upload a file that can be used across various endpoints. Individual files can be up to 512 MB, and the size of all files uploaded by one organization can be up to 100 GB.
The Assistants API supports files up to 2 million tokens and of specific file types. See the Assistants Tools guide for details.
The Fine-tuning API only supports .jsonl files. The input also has certain required formats for fine-tuning chat or completions models.
The Batch API only supports .jsonl files up to 200 MB in size. The input also has a specific required format.
Please contact us if you need to increase these storage limits.
curl --request POST \
--url https://api.openai.com/v1/files \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form file='@example-file' \
--form purpose=assistants{
"id": "<string>",
"bytes": 123,
"created_at": 123,
"filename": "<string>",
"object": "file",
"purpose": "assistants",
"status": "uploaded",
"expires_at": 123,
"status_details": "<string>"
}Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
The File object (not file name) to be uploaded.
The intended purpose of the uploaded file. One of: - assistants: Used in the Assistants API - batch: Used in the Batch API - fine-tune: Used for fine-tuning - vision: Images used for vision fine-tuning - user_data: Flexible file type for any purpose - evals: Used for eval data sets
assistants, batch, fine-tune, vision, user_data, evals OK
The File object represents a document that has been uploaded to OpenAI.
The file identifier, which can be referenced in the API endpoints.
The size of the file, in bytes.
The Unix timestamp (in seconds) for when the file was created.
The name of the file.
The object type, which is always file.
file The intended purpose of the file. Supported values are assistants, assistants_output, batch, batch_output, fine-tune, fine-tune-results and vision.
assistants, assistants_output, batch, batch_output, fine-tune, fine-tune-results, vision Deprecated. The current status of the file, which can be either uploaded, processed, or error.
uploaded, processed, error The Unix timestamp (in seconds) for when the file will expire.
Deprecated. For details on why a fine-tuning training file failed validation, see the error field on fine_tuning.job.
Was this page helpful?