Finalize a multipart upload
Assembles the uploaded parts into the final object. Only needed when POST /videos/upload answered with mode: "multipart". After this succeeds, call POST /videos/upload/complete to register the video.
Authorization
apiKey In: header
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/videos/upload/multipart/complete" \ -H "Content-Type: application/json" \ -d '{ "video_id": "string", "upload_id": "string", "parts": [ { "partNumber": 0, "etag": "string" } ] }'{ "video_id": "string"}Start an upload POST
Returns the generated `video_id` plus whatever the file's size requires to upload it directly to storage, then call `POST /videos/upload/complete` to register the upload and get the credit cost. When `mode` is `single`, PUT the bytes to `upload_url` with the same `Content-Type` you declared here. When `mode` is `multipart` the file is past the storage provider's single-PUT ceiling: split it into `part_size`-byte chunks and PUT each one to the matching entry of `part_urls` (index 0 is part 1, the last part may be shorter). Collect each response's `ETag` header and post them to `POST /videos/upload/multipart/complete`. Max file size comes from your plan — a `FILE_TOO_LARGE` response reports the effective ceiling in `max_size`. Extensions: `.mp4`, `.mov`, `.webm`, `.mkv`.
Discard a multipart upload POST
Releases the parts already uploaded. Without this they keep occupying (and billing) storage — there is no object yet for a lifecycle rule to match.