Skip to main content
This page is the field-by-field reference for the elements[] array in POST /v1/renders. For full request body examples see the Render Examples section.

How to read this page

ColumnMeaning
requiredThe API returns 422 if the field is missing
optionalThe field has a default and may be omitted
→ 0 / → nullDefault value the API uses when the field is omitted
Dimension fields accept a pixel number (960), a percentage string ("50%"), or an angle string ("90°" / "90deg") depending on context.

Common fields

These fields are present on every element type.
FieldTypeDefaultDescription
typestring (enum)requiredElement discriminator. One of: video, audio, text, image
idstringoptional→ ""Unique identifier. Required on image elements — an empty ID causes the image to be silently skipped. Recommended on all elements used in transitions.
timenumber ≥ 0optional→ 0When the element starts on the output timeline, in seconds.
durationnumber > 0see per-typeHow long the element is active, in seconds. Required on text and image — omitting it produces a zero-length window and the element will not appear. Not accepted on video or audio — use out_point to control clip length.
visiblebooleanoptional→ trueSet to false to exclude from the render without removing from the request.
namestringoptional→ nullHuman-readable label. Not used by the renderer.
trackinteger 0–255optional→ nullTimeline track index. Informational only; not used by the renderer.

video

Plays a video clip on the timeline.

Source and trim

FieldTypeDefaultDescription
source_urlURLrequiredURL of the video file. Must be accessible by the renderer.
in_pointnumber ≥ 0optional→ 0Seconds into the source file to start playing from.
out_pointnumber > 0optional→ end of sourceSeconds into the source file to stop playing. Must be greater than in_point when both are set.
speednumber 0.25–4.0optional→ 1.0Playback speed multiplier. 2.0 = 2× speed.
Video elements do not have a duration field. Clip length on the output timeline is determined by out_point − in_point (accounting for speed). To fix the output to a specific length, set a top-level duration on the request.

Position and size

FieldTypeDefaultDescription
xDimensionoptional→ "50%"Horizontal center position.
yDimensionoptional→ "50%"Vertical center position.
widthDimensionoptional→ "100%"Clip width.
heightDimensionoptional→ "100%"Clip height.
z_indexintegeroptional→ 0Stacking order. Higher numbers appear in front.
opacitynumber 0–100optional→ 100Transparency percentage.
z_rotationDimensionoptional→ "0°"Rotation around the Z axis.
flip_horizontalbooleanoptional→ falseMirror horizontally.
flip_verticalbooleanoptional→ falseMirror vertically.

Audio

FieldTypeDefaultDescription
volumenumber 0–100optional→ 100Embedded audio volume percentage. Affects only the audio track inside this clip.
fade_in_durationnumberoptional→ 0Seconds of linear audio fade-in at the clip start.
fade_out_durationnumberoptional→ 0Seconds of linear audio fade-out at the clip end.

Color adjustments

FieldTypeDefaultDescription
brightnessnumberoptional→ 0Brightness offset.
contrastnumberoptional→ 0Contrast offset.
saturationnumberoptional→ 0Saturation offset.
exposurenumberoptional→ 0Exposure offset.
sharpnessnumberoptional→ 0Sharpening amount.
blurnumberoptional→ 0Gaussian blur radius in pixels.
noisenumberoptional→ 0Film grain amount.
vignettenumberoptional→ 0Vignette intensity.
hue_rotatenumberoptional→ 0Hue rotation in degrees.
lut_urlURLoptional→ nullURL of a .cube LUT file.
lut_intensitynumber 0–100optional→ 100LUT blend percentage.

Cropping

FieldTypeDefaultDescription
crop_topnumber 0–1optional→ 0Fraction of the clip to crop from the top edge.
crop_bottomnumber 0–1optional→ 0Fraction of the clip to crop from the bottom edge.
crop_leftnumber 0–1optional→ 0Fraction of the clip to crop from the left edge.
crop_rightnumber 0–1optional→ 0Fraction of the clip to crop from the right edge.

Border and shadow

FieldTypeDefaultDescription
border_radiusDimensionoptional→ 0Corner radius in pixels.
border_colorhex coloroptional→ nullBorder color.
border_widthDimensionoptional→ 0Border thickness in pixels.
shadow_colorhex coloroptional→ nullDrop shadow color. Shadow is hidden when this is null.
shadow_blurDimensionoptional→ 0Shadow blur radius.
shadow_xDimensionoptional→ 0Shadow horizontal offset.
shadow_yDimensionoptional→ 0Shadow vertical offset.

Effects, motion, AI

FieldTypeDefaultDescription
effectsEffect[]optional→ []Visual effects (chroma key, glitch, etc.). See Effect object.
motionMotion[]optional→ []Entrance / exit / loop motion presets. See Motion object.
remove_backgroundbooleanoptional→ falseRemove video background using AI. Triggers a separate pre-processing task.
gaze_redirectbooleanoptional→ falseRedirect on-screen gaze to face the camera using AI.
super_resolutionnumber 1.0–4.0optional→ nullAI upscale factor. Triggers a separate pre-processing task.

audio

Plays an audio clip or background music track.
FieldTypeDefaultDescription
source_urlURLrequiredURL of the audio file.
timenumber ≥ 0optional→ 0Start time on the output timeline in seconds.
in_pointnumber ≥ 0optional→ 0Seconds into the source to start from.
out_pointnumber > 0optional→ end of sourceSeconds into the source to stop. Controls clip length on the output timeline. Must be greater than in_point when both are set.
speednumber 0.25–4.0optional→ 1.0Playback speed multiplier.
volumenumber 1–100optional→ 100Volume percentage. Must be greater than 0 — the renderer silently drops audio streams with volume ≤ 0.
fade_in_durationnumberoptional→ 0Seconds of linear fade-in at the clip start.
fade_out_durationnumberoptional→ 0Seconds of linear fade-out at the clip end.

text

Renders a text layer on screen.
duration is required on text elements. Omitting it produces a zero-length window — the text will not appear in the render.
FieldTypeDefaultDescription
textstringrequiredThe text content to render.
durationnumber > 0requiredHow long the text is visible in seconds.
timenumber ≥ 0optional→ 0When the text appears on the output timeline.
font_familystringoptional→ "Inter"Font family name. Must be available to the renderer.
font_sizenumber > 0optional→ 16Font size in pixels.
font_weightinteger 100–900optional→ 400Font weight. 400 = regular, 700 = bold.
font_stylenormal | italic | bold | bolditalicoptional→ "normal"Font style variant.
text_colorhex coloroptional→ "#ffffff"Text fill color.
text_alignleft | center | rightoptional→ "center"Horizontal text alignment.
text_decorationnone | underline | strikethroughoptional→ "none"Text decoration.
trackingnumberoptional→ 0Extra spacing between characters.
leadingnumberoptional→ 1.2Line height multiplier.
stroke_colorhex coloroptional→ nullOutline color. Set together with stroke_width to enable outlines.
stroke_widthnumberoptional→ 0Outline width in pixels. Has no effect unless stroke_color is also set.
background_colorhex coloroptional→ nullColor of the background box (when background is true) or the active-word highlight (when using box or color word animations).
background_opacitynumber 0–100optional→ 100Background fill opacity.
backgroundbooleanoptional→ falseSolid color box behind the full text block. Set background_color to choose the color.
strokebooleanoptional→ falseOutline-only mode — draws the glyph stroke with no fill. Requires stroke_color and stroke_width. When false, setting stroke_color + stroke_width gives fill + stroke.
shadowbooleanoptional→ falseBuilt-in drop shadow.
text_wrapwrap | nowrapoptional→ "wrap"Whether long lines wrap.
motionMotion[]optional→ []Entrance / exit / loop motion presets. See Motion object.
animation_presetstringoptional→ nullAnimation shorthand string (e.g. "typewriter"). Ignored when word_animation is set.
word_animationWordAnimationoptional→ nullWord-level animation with per-word timestamps. See WordAnimation object and word animation examples.
xDimensionoptional→ "50%"Horizontal center position.
yDimensionoptional→ "50%"Vertical center position.
widthDimensionoptional→ "100%"Text wrap width.
z_indexintegeroptional→ 1Stacking order.
opacitynumber 0–100optional→ 100Transparency percentage.
z_rotationDimensionoptional→ "0°"Rotation around the Z axis.
border_radiusDimensionoptional→ 0Corner radius of the fill background.
shadow_colorhex coloroptional→ nullDrop shadow color.
shadow_blurDimensionoptional→ 0Shadow blur radius.
shadow_xDimensionoptional→ 0Shadow horizontal offset.
shadow_yDimensionoptional→ 0Shadow vertical offset.

image

Renders a static image on screen.
Both id and duration are required on image elements. An empty or missing id causes the image to be silently skipped by the renderer. A missing duration produces a zero-length window.
FieldTypeDefaultDescription
idstringrequiredUnique identifier. Empty string causes silent skip.
source_urlURLrequiredURL of the image file (PNG, JPG, WebP).
durationnumber > 0requiredHow long the image is visible in seconds.
timenumber ≥ 0optional→ 0When the image appears on the output timeline.
xDimensionoptional→ "50%"Horizontal center position.
yDimensionoptional→ "50%"Vertical center position.
widthDimensionoptional→ "100%"Image width.
heightDimensionoptional→ "100%"Image height.
z_indexintegeroptional→ 0Stacking order. Same default as video — set to 1 or higher when placing an image over a video clip.
opacitynumber 0–100optional→ 100Transparency percentage.
z_rotationDimensionoptional→ "0°"Rotation around the Z axis.
flip_horizontalbooleanoptional→ falseMirror horizontally.
flip_verticalbooleanoptional→ falseMirror vertically.
motionMotion[]optional→ []Entrance / exit / loop motion presets.
effectsEffect[]optional→ []Visual effects.
brightnessnumberoptional→ 0
contrastnumberoptional→ 0
saturationnumberoptional→ 0
exposurenumberoptional→ 0
sharpnessnumberoptional→ 0
blurnumberoptional→ 0Gaussian blur in pixels.
noisenumberoptional→ 0Film grain.
vignettenumberoptional→ 0
hue_rotatenumberoptional→ 0Hue rotation in degrees.
lut_urlURLoptional→ null.cube LUT file URL.
lut_intensitynumber 0–100optional→ 100LUT blend percentage.
crop_topnumber 0–1optional→ 0
crop_bottomnumber 0–1optional→ 0
crop_leftnumber 0–1optional→ 0
crop_rightnumber 0–1optional→ 0
border_radiusDimensionoptional→ 0Corner radius in pixels.
border_colorhex coloroptional→ null
border_widthDimensionoptional→ 0
shadow_colorhex coloroptional→ null
shadow_blurDimensionoptional→ 0
shadow_xDimensionoptional→ 0
shadow_yDimensionoptional→ 0

Sub-objects

Motion

Used in motion[] on video, text, and image. These are pre-built motion presets — not keyframe animations.
FieldTypeDefaultDescription
typeMotionTyperequiredMotion preset identifier (e.g. fade, slide_up, zoom_in).
timenumber ≥ 0requiredAbsolute start time on the output timeline in seconds. For entrances and loops use the element’s time. For exits use element time + duration − motion duration.
durationnumber > 0requiredHow long the preset runs in seconds.
reversedbooleanoptional→ falsetrue = exit variant; false = entrance variant.
easingease_in_out | ease_in | ease_out | linearoptional→ "ease_in_out"Easing curve.
scopeelement | characteroptional→ "element"Apply to the whole element (element) or each character individually (character). Character scope is only supported on text.
loopbooleanoptional→ falseLoop the preset for its duration.
delaynumberoptional→ 0Delay in seconds before starting when looping.

Effect

Used in effects[] on video and image.
FieldTypeDefaultDescription
typeEffectTyperequiredEffect identifier (e.g. chroma_key, glitch, vhs).
intensitynumber 0–100optional→ 50Effect strength percentage.
chroma_propsChromaKeyPropsoptional→ nullFine-tuned chroma key settings. Only used when type is chroma_key.

ChromaKeyProps

FieldTypeDefaultDescription
hue_minnumberoptional→ 60Minimum hue of the color range to key out.
hue_maxnumberoptional→ 180Maximum hue of the color range to key out.
sat_minnumberoptional→ 0.3Minimum saturation threshold.
sat_maxnumberoptional→ 1.0Maximum saturation threshold.
lum_minnumberoptional→ 0.2Minimum luminance threshold.
lum_maxnumberoptional→ 0.9Maximum luminance threshold.

WordAnimation

Used as word_animation on text. Drives word-by-word animated text synchronized to timestamps.
FieldTypeDefaultDescription
styleWordAnimationStylerequiredAnimation style. One of: glow, box, scale_pop, slide_up, fly_in, color.
wordsWord[]requiredPer-word timestamps. Must be non-empty.

Word

Used in word_animation.words[]. Timestamps are absolute timeline seconds — the same clock as the element’s time, motion time, and everything else.
FieldTypeDefaultDescription
textstringrequiredThe word text.
startnumber ≥ 0requiredSeconds from the text element’s start when this word begins.
endnumber > 0requiredSeconds from the text element’s start when this word ends.