v1

latestOpenAPI 3.0.22026-07-261040577.4 KB
FilesV2

Initiate a large (multipart) file upload

Initiate a multipart upload for files up to 10 GB. The response includes an opaque upload_id and a fully populated urls array containing one pre-signed PUT URL per part the client should upload. After uploading every part, call Complete large upload at POST /v2/files/{file_id}/large-upload/complete with the resulting part etag values.

The client may optionally specify the desired number of parts (1 to 10000). If omitted, the server picks a value based on the declared size and the recommended part size — for most uploads this is the right default.

Every URL in urls expires roughly 3 hours after issue. If a part PUT fails after that window, abandon the upload and initiate a fresh session.

Once finalized, inspect the file with GET /v1/files/{file_id} and download it with GET /v1/files/{file_id}/download — no v2 read surface exists yet.

Returns 201 with the upload session details. Orphaned uploads that are not completed are eventually cleaned up.

post/v2/files/large-upload

Request body

namestring required

The file's original name, including extension. 1-1024 characters.

typestring required

The file's MIME type (e.g. image/png, video/mp4). Up to 255 characters.

sizeinteger required

Total size of the file in bytes. Must be between 1 and 10000000000 (10 GB).

partsinteger

Number of parts the client will split the upload into. Optional — if omitted, the server picks a value based on the declared size and the recommended part size. Must be between 1 and 10000.

Response

201