Skip to main content

Upload a File

Upload a file’s raw bytes to the presigned URL returned by the Create or Update endpoints.

Headers

Request Body

The raw file bytes. Do not wrap in JSON — send the file content directly.

Example

Response (200)

Empty body on success.

Errors

Important Notes

Upload URLs expire after 1 hour. If they expire, you’ll need to create a new version by calling the publish endpoint again.
  • Upload all files listed in the uploads array before calling Finalize
  • Files in the skipped array (hash matches) do not need to be uploaded
  • Upload order doesn’t matter — you can upload files in parallel
  • The --data-binary flag is important when using curl — it preserves the raw bytes without any processing