POST /v1/renders body. Only fields that differ from their defaults are shown. See the element field reference for every default.
Images and video both default to
z_index: 0; text defaults to z_index: 1. When two elements share a z_index, array order breaks the tie — whichever is listed later in elements paints on top. A logo listed after the video is already above it with no z_index at all. Set an explicit z_index only when you need an order that does not match the array order; every declared ordering is preserved (the wire key is z_index × 1000 + array index).Image over video
Logo centered on a video background.z_index: 1 places it above the video layer.
Crop
Crop 10% from each edge, placed over video.Border and rounded corners
border_radius, border_width, shadow_x, and shadow_y are pixel fields — a percentage string on any of them is a 422. border_radius also takes a per-corner object for asymmetric cards, e.g. a header rounded only on top:
Drop shadow
shadow_x / shadow_y are pixels. shadow_blur is not — it is the renderer’s 0–100 blur-strength scale (0 = hard edge, 100 = maximum), clamped to that range. A shadow with shadow_x and shadow_y both 0 is a 422: the renderer skips the whole shadow pass at zero offset, so set at least 1px.
Effects, blends and mattes on images
Image elements take the same compositing vocabulary as video: the fulleffects chain, all 17 blend_mode values, backdrop_blur, and matte.
lut_url / lut_intensity are the exception — they are accepted on an image element and then silently dropped. See Color Adjustments for what to grade a still with instead, and Effects Examples for the full effect catalog.
