Documentation

Uploading videos

Direct uploads with presigned URLs, or public video URLs.

There are two ways to give Pixamake a video.

Option A: direct upload

  1. POST /v1/uploads with the file name, type and exact size.
  2. PUT the bytes to the returned upload_url, with the same Content-Type.
  3. Create a job with upload_id.
curl https://pixamake.ai/v1/uploads \
  -H "Authorization: Bearer $PIXAMAKE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filename": "ad.mov", "content_type": "video/quicktime", "size_bytes": 18734102}'
Field Type Description
filename string Original file name (shown in the dashboard)
content_type string video/mp4, video/quicktime or video/x-m4v
size_bytes integer Exact size of the file, up to 2 GB

The upload URL is valid for one hour and only accepts a body of the declared size and type. An upload that is never attached to a job is deleted after 24 hours. An upload can be used by one job only.

Option B: public URL

Pass video_url when creating the job. The URL must:

  • use http or https and be reachable from the internet (private and local addresses are refused);
  • answer HTTP range requests (status 206), like most CDNs and object storages do;
  • point to an MP4 or MOV file of 2 GB or less.

Pixamake reads the duration and resolution right away, so credits are reserved with the exact price, then copies the file when the job starts.

Accepted videos

Limit Value
Formats MP4, MOV, M4V
Duration 15 minutes
Size 2 GB
Resolution 1080p (1920 by 1080, landscape or portrait)

Errors at this stage use status 422 with the codes unsupported_format, unreadable_video, video_too_long, resolution_too_high, and 413 video_too_large for files over 2 GB.