Create resumable (multipart) upload
create_multipart_uploadFree. For files over 80 MB (up to 2048 MB / 3 h), or any upload on a flaky connection. Returns fileId, partSizeBytes (default 64 MB, 5-95 MB), and parts[] with partNumber, offset, length, and a PUT url each (no API key needed, valid 24 hours). PUT bytes [offset, offset+length) of the file to each url, e.g. dd if=big.mp4 bs=1M skip=$((offset/1048576)) count=$((length/1048576)) | curl -X PUT --data-binary @- -H "Content-Length: " "" (tail -c +$((offset+1)) big.mp4 | head -c length works for any part size). Parts can go in any order or in parallel; re-sending a part replaces it. If the upload stops, call get_upload_status for missingParts and send only those, then complete_upload. Then pass fileId to caption_video, transcribe, burn_captions, shorts, trim, or preview like any upload. Up to 30 per hour.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| filename | Yes | File name, e.g. talk.mp4. | |
| sizeBytes | Yes | Exact file size in bytes. | |
| contentType | Yes | video/* or audio/*, e.g. video/mp4. | |
| partSizeBytes | No | Bytes per part, 5242880-99614720. Default 67108864 (64 MB). |