Skip to main content

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Download Microsoft Edge More info about Internet Explorer and Microsoft Edge
microsoft-foundry.rest.security.o-auth2-auth

Uploads

Add an upload part

POST /openai/v1/uploads/{upload_id}/parts

Adds an upload part to the parent resource.

Path parameters

upload_id string required

The ID of the Upload.

Request Body

The multipart request body.

Content-Type: multipart/form-data
data OpenAI.AddUploadPartRequest required

The chunk of bytes for this Part.

Responses

The request has succeeded.

Body

Content-Type: application/json
id string required

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

created_at integer required

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

upload_id string required

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

object enum required

The object type, which is always upload.part.

upload.part

Client error

Body

Content-Type: application/json
error OpenAI.Error required
code string | null required
message string required
param string | null
type string
misalignment OpenAI.MisalignmentErrorDetailsResource
review_target string | null
error_type string | enum
Any of the following:
string
enum
potentially_unintended_data_transferpotentially_unintended_data_accesspotentially_unintended_destructive_activityother
detailed_explanation string

The public explanation for this block.

steer OpenAI._MisalignmentSteer
message string required

The public continuation instruction.

details OpenAI.Error[]
additionalInfo object
debugInfo object

Server error

Body

Content-Type: application/json
error OpenAI.Error required
code string | null required
message string required
param string | null
type string
misalignment OpenAI.MisalignmentErrorDetailsResource
review_target string | null
error_type string | enum
Any of the following:
string
enum
potentially_unintended_data_transferpotentially_unintended_data_accesspotentially_unintended_destructive_activityother
detailed_explanation string

The public explanation for this block.

steer OpenAI._MisalignmentSteer
message string required

The public continuation instruction.

details OpenAI.Error[]
additionalInfo object
debugInfo object

Request

curl https://api.openai.com/v1/uploads/upload_abc123/parts
  -F data="aHR0cHM6Ly9hcGkub3BlbmFpLmNvbS92MS91cGxvYWRz..."
import fs from 'fs';
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);
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ.get("OPENAI_API_KEY"),  # This is the default and can be omitted
)
upload_part = client.uploads.parts.create(
    upload_id="upload_abc123",
    data=b"Example data",
)
print(upload_part.id)
package main

import (
    "bytes"
    "context"
    "fmt"
    "io"

    "github.com/openai/openai-go"
    "github.com/openai/openai-go/option"
)

func main() {
    client := openai.NewClient(
        option.WithAPIKey("My API Key"),
    )
    uploadPart, err := client.Uploads.Parts.New(
        context.TODO(),
        "upload_abc123",
        openai.UploadPartNewParams{
            Data: io.Reader(bytes.NewBuffer([]byte("Example data"))),
        },
    )
    if err != nil {
        panic(err.Error())
    }
    fmt.Printf("%+v
", uploadPart.ID)
}
package com.openai.example;

import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.uploads.parts.PartCreateParams;
import com.openai.models.uploads.parts.UploadPart;
import java.io.ByteArrayInputStream;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        OpenAIClient client = OpenAIOkHttpClient.fromEnv();

        PartCreateParams params = PartCreateParams.builder()
            .uploadId("upload_abc123")
            .data(new ByteArrayInputStream("Example data".getBytes()))
            .build();
        UploadPart uploadPart = client.uploads().parts().create(params);
    }
}
require "openai"

openai = OpenAI::Client.new(api_key: "My API Key")

upload_part = openai.uploads.parts.create("upload_abc123", data: StringIO.new("Example data"))

puts(upload_part)

Response

{
  "id": "part_def456",
  "object": "upload.part",
  "created_at": 1719185911,
  "upload_id": "upload_abc123"
}
en-us
Your Privacy Choices
  • AI Disclaimer
  • Previous Versions
  • Blog
  • Contribute
  • Privacy
  • Consumer Health Privacy
  • Terms of Use
  • Trademarks
  • © Microsoft 2026