# render_video_timeline

Edit assets the user already has into ONE finished video — sequence clips, add transitions, overlay  
text or logos, layer audio. This is editing, not generating new content.

Estimate with \`estimate\_video\_timeline\_price\` first. The render is asynchronous; check the returned  
\`generation\_id\` with \`get\_generation\_run\`.

Pass \`timeline\_object\_id\` whenever that board timeline already exists — one you placed with  
\`create\_canvas\_timeline\` or read with \`read\_canvas\_timelines\` — so the render updates it in place  
instead of placing a duplicate. It is the one input \`estimate\_video\_timeline\_price\` does not take,  
so add it back on top of the arguments you estimated with. Omit it only when no board timeline  
exists yet.

## Parameters

| Parameter                  | Type                      | Default | Description                                                                                                                                                                                                                                                           |
| -------------------------- | ------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| workspace\_idrequired      | string (uuid)             | —       | The user's workspace id.                                                                                                                                                                                                                                              |
| session\_id                | string (uuid)             | —       | The Session ID to attach the results to.                                                                                                                                                                                                                              |
| session\_name              | string                    | —       | Creates a new session with this name. One of \`session\_name\` or \`session\_id\` must specified, but not both.                                                                                                                                                       |
| templaterequired           | TimelineTemplate          | —       | Timeline layout designed in the editor. Tracks, items, timing, and slot references.                                                                                                                                                                                   |
| tracks                     | TimelineTemplateTrack\[\] | —       | Ordered list of tracks in the timeline. Composited in reverse order (Track 1 is on top). Do not overlap items within the same track; use multiple tracks for overlapping content.                                                                                     |
| idrequired                 | string                    | —       | Unique identifier for the track.                                                                                                                                                                                                                                      |
| namerequired               | string                    | —       | User-facing name of the track.                                                                                                                                                                                                                                        |
| itemsrequired              | any\[\]                   | —       | Ordered list of items on this track.                                                                                                                                                                                                                                  |
| transitions                | any\[\]                   | —       | Transitions on the seams between adjacent items on this track.                                                                                                                                                                                                        |
| disabled                   | boolean                   | false   | Whether the track is excluded from rendering.                                                                                                                                                                                                                         |
| fps                        | integer≤120, >0           | 30      | Frames per second of the output video.                                                                                                                                                                                                                                |
| width                      | integer2–7680             | 1920    | Width of the output video, in pixels. Must be even.                                                                                                                                                                                                                   |
| height                     | integer2–4320             | 1080    | Height of the output video, in pixels. Must be even.                                                                                                                                                                                                                  |
| codec                      | string                    | h264    | Video codec for encoding the output. Only h264 is supported.                                                                                                                                                                                                          |
| crf                        | integer0–51               | 18      | Constant Rate Factor controlling output quality. Lower values produce higher quality.                                                                                                                                                                                 |
| max\_duration\_in\_seconds | number≤120, >0            | —       | Maximum allowed duration of the rendered video, in seconds.                                                                                                                                                                                                           |
| playback\_rate             | number≤4, >0              | 1       | Global playback speed multiplier. 1.0 = normal, 2.0 = double speed, 0.5 = half speed.                                                                                                                                                                                 |
| videos                     | object                    | —       | Slotted video assets. Each slot name matches a slot reference in the timeline template.                                                                                                                                                                               |
| images                     | object                    | —       | Slotted image assets. Each slot name matches a slot reference in the timeline template.                                                                                                                                                                               |
| audios                     | object                    | —       | Slotted audio assets. Each slot name matches a slot reference in the timeline template.                                                                                                                                                                               |
| timeline\_object\_id       | string (uuid)             | —       | The board timeline this render writes to. Pass it whenever that timeline already exists on the board: the template alone does not identify it, so an id-less render places a second timeline beside the existing one. Omit it only when no board timeline exists yet. |
