| Field | Type | What it does |
|---|---|---|
format | "mp4" | "webm" | "gif" | "mp3" | "jpg" | "png" | Output container/format. mp4=H.264+AAC, webm=VP9+Opus, gif=animated (no audio), mp3=audio only and needs no size, jpg/png=single frame. default "mp4". |
size | "360p" | "720p" | "1080p" | "1440p" | "4k" | "tiktok" | "reels" | "shorts" | "instagram-story" | "instagram-feed" | "square" | "youtube-hd" | "youtube-4k" | "x-landscape" | "linkedin" | Named resolution preset (dimensions only): a generic ladder (“1080p”, “4k”) or a platform alias (“tiktok”, “reels”, “youtube-4k”). An explicit resolution overrides this. Not used by mp3. Free renders up to 1080p at 30 fps, Pro 1440p at 30 fps, Studio 4K at 60 fps. |
resolution | object | Explicit output dimensions. Wins over size. Every format but mp3 needs this or size. |
resolution.width * | integer | Output width in pixels. over 0, max 9007199254740991. |
resolution.height * | integer | Output height in pixels. over 0, max 9007199254740991. |
fps | number | Output frame rate. Defaults to 30. Free renders up to 1080p at 30 fps, Pro 1440p at 30 fps, Studio 4K at 60 fps. default 30, over 0. |
quality | "draft" | "standard" | "high" | "max" | Encoder quality ladder (crf + speed + audio bitrate). draft=fast preview, standard=web delivery (default), high/max=higher fidelity, slower. Explicit crf/encoderPreset override the ladder. default "standard". |
videoCodec | "h264" | "vp9" | The video codec. mp4 takes h264 (default) or vp9. webm is always vp9. gif is always GIF, so it takes none. |
audioCodec | "aac" | "opus" | "mp3" | The audio codec. mp4 takes aac (default), opus or mp3. webm is always opus and mp3 always mp3. |
crf | integer | Advanced: constant rate factor (lower = higher quality/larger file). Overrides quality. h264 accepts 0-51, vp9 0-63. Does not apply to gif/mp3/jpg/png. min 0, max 63. |
encoderPreset | "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | "slow" | "slower" | "veryslow" | Advanced: x264 speed/compression preset (slower = smaller file, same quality). Overrides quality. h264 only. |
range | object | Which part of the timeline to render: a preview, or one section checked without paying for the whole render. A jpg or png is the single frame at start, the first frame when there is no range. |
range.start | number | Second of the timeline to start from. For a jpg or png, the moment captured. default 0, min 0. |
range.length | number | Seconds to render. Leave it out to run to the end. A range past the end stops at the end. A jpg or png is one frame and ignores it. over 0. |
* are required. Every table on this page is generated from the schema the API validates with, so it cannot drift from what a render accepts.