Skip to content
Primary navigation

Add upload part

client.uploads.parts.create(stringuploadID, PartCreateParams { data } body, RequestOptionsoptions?): UploadPart { id, created_at, object, upload_id }
POST/uploads/{upload_id}/parts

Adds a Part to an Upload object. A Part represents a chunk of bytes from the file you are trying to upload.

Each Part can be at most 64 MB, and you can add Parts until you hit the Upload maximum of 8 GB.

It is possible to add multiple Parts in parallel. You can decide the intended order of the Parts when you complete the Upload.

ParametersExpand Collapse
uploadID: string
body: PartCreateParams { data }

The chunk of bytes for this Part.

ReturnsExpand Collapse
UploadPart { 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.

Add upload part

import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: process.env['OPENAI_API_KEY'], // This is the default and can be omitted
});

const uploadPart = await client.uploads.parts.create('upload_abc123', {
  data: fs.createReadStream('path/to/file'),
});

console.log(uploadPart.id);
{
  "id": "part_def456",
  "object": "upload.part",
  "created_at": 1719185911,
  "upload_id": "upload_abc123"
}
Returns Examples
{
  "id": "part_def456",
  "object": "upload.part",
  "created_at": 1719185911,
  "upload_id": "upload_abc123"
}