Upload file
post /files
Upload file
Returns
-
FileObject object { id, bytes, created_at, 6 more }The
Fileobject represents a document that has been uploaded to OpenAI.-
id: stringThe file identifier, which can be referenced in the API endpoints.
-
bytes: numberThe size of the file, in bytes.
-
created_at: numberThe Unix timestamp (in seconds) for when the file was created.
-
filename: stringThe name of the file.
-
object: "file"The object type, which is always
file."file"
-
purpose: "assistants" or "assistants_output" or "batch" or 5 moreThe intended purpose of the file. Supported values are
assistants,assistants_output,batch,batch_output,fine-tune,fine-tune-results,vision, anduser_data.-
"assistants" -
"assistants_output" -
"batch" -
"batch_output" -
"fine-tune" -
"fine-tune-results" -
"vision" -
"user_data"
-
-
status: "uploaded" or "processed" or "error"Deprecated. The current status of the file, which can be either
uploaded,processed, orerror.-
"uploaded" -
"processed" -
"error"
-
-
expires_at: optional numberThe Unix timestamp (in seconds) for when the file will expire.
-
status_details: optional stringDeprecated. For details on why a fine-tuning training file failed validation, see the
errorfield onfine_tuning.job.
-
Example
curl https://api.openai.com/v1/files \
-H 'Content-Type: multipart/form-data' \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-F 'file=@/path/to/file' \
-F purpose=assistants
Response
{
"id": "id",
"bytes": 0,
"created_at": 0,
"filename": "filename",
"object": "file",
"purpose": "assistants",
"status": "uploaded",
"expires_at": 0,
"status_details": "status_details"
}
Example
curl https://api.openai.com/v1/files \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-F purpose="fine-tune" \
-F file="@mydata.jsonl"
-F expires_after[anchor]="created_at"
-F expires_after[seconds]=2592000
Response
{
"id": "file-abc123",
"object": "file",
"bytes": 120000,
"created_at": 1677610602,
"expires_at": 1677614202,
"filename": "mydata.jsonl",
"purpose": "fine-tune",
}