Skip to content
Primary navigation

Uploads

Use Uploads to upload large files in multiple parts.

Create upload
$ openai uploads create
POST/uploads
Complete upload
$ openai uploads complete
POST/uploads/{upload_id}/complete
Cancel upload
$ openai uploads cancel
POST/uploads/{upload_id}/cancel
ModelsExpand Collapse
upload: object { id, bytes, created_at, 6 more }

The Upload object can accept byte chunks in the form of Parts.

id: string

The Upload unique identifier, which can be referenced in API endpoints.

bytes: number

The intended number of bytes to be uploaded.

created_at: number

The Unix timestamp (in seconds) for when the Upload was created.

expires_at: number

The Unix timestamp (in seconds) for when the Upload will expire.

filename: string

The name of the file to be uploaded.

object: "upload"

The object type, which is always “upload”.

purpose: string

The intended purpose of the file. Please refer here for acceptable values.

status: "pending" or "completed" or "cancelled" or "expired"

The status of the Upload.

"pending"
"completed"
"cancelled"
"expired"
file: optional object { id, bytes, created_at, 6 more }

The File object represents a document that has been uploaded to OpenAI.

id: string

The file identifier, which can be referenced in the API endpoints.

bytes: number

The size of the file, in bytes.

created_at: number

The Unix timestamp (in seconds) for when the file was created.

filename: string

The name of the file.

object: "file"

The object type, which is always file.

purpose: "assistants" or "assistants_output" or "batch" or 5 more

The intended purpose of the file. Supported values are assistants, assistants_output, batch, batch_output, fine-tune, fine-tune-results, vision, and user_data.

"assistants"
"assistants_output"
"batch"
"batch_output"
"fine-tune"
"fine-tune-results"
"vision"
"user_data"
Deprecatedstatus: "uploaded" or "processed" or "error"

Deprecated. The current status of the file, which can be either uploaded, processed, or error.

"uploaded"
"processed"
"error"
expires_at: optional number

The Unix timestamp (in seconds) for when the file will expire.

Deprecatedstatus_details: optional string

Deprecated. For details on why a fine-tuning training file failed validation, see the error field on fine_tuning.job.

UploadsParts

Use Uploads to upload large files in multiple parts.

Add upload part
$ openai uploads:parts create
POST/uploads/{upload_id}/parts
ModelsExpand Collapse
upload_part: object { id, created_at, object, upload_id }

The upload Part represents a chunk of bytes we can add to an Upload object.

id: string

The upload Part unique identifier, which can be referenced in API endpoints.

created_at: number

The Unix timestamp (in seconds) for when the Part was created.

object: "upload.part"

The object type, which is always upload.part.

upload_id: string

The ID of the Upload object that this Part was added to.