// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../resource'; import * as Core from '../../core'; import * as PartsAPI from './parts'; export class Parts extends APIResource { /** * Adds a * [Part](https://platform.openai.com/docs/api-reference/uploads/part-object) to an * [Upload](https://platform.openai.com/docs/api-reference/uploads/object) 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](https://platform.openai.com/docs/api-reference/uploads/complete). */ create( uploadId: string, body: PartCreateParams, options?: Core.RequestOptions, ): Core.APIPromise { return this._client.post( `/uploads/${uploadId}/parts`, Core.multipartFormRequestOptions({ body, ...options }), ); } } /** * The upload Part represents a chunk of bytes we can add to an Upload object. */ export interface UploadPart { /** * The upload Part unique identifier, which can be referenced in API endpoints. */ id: string; /** * The Unix timestamp (in seconds) for when the Part was created. */ created_at: number; /** * The object type, which is always `upload.part`. */ object: 'upload.part'; /** * The ID of the Upload object that this Part was added to. */ upload_id: string; } export interface PartCreateParams { /** * The chunk of bytes for this Part. */ data: Core.Uploadable; } export namespace Parts { export import UploadPart = PartsAPI.UploadPart; export import PartCreateParams = PartsAPI.PartCreateParams; }