Workflows
End-to-end video pipelines started with a single API call.
Workflows create a VideoGen project and run the full generation pipeline asynchronously. Each POST returns 202 Accepted with { workflowRunId, projectId, projectUrl }.
Poll GET /v1/workflows/runs/{workflowRunId} until status is terminal, or use the SDK helpers pollWorkflowRun (TS) / poll_workflow_run (Python). Subscribe to workflow_run.succeeded, workflow_run.failed, and workflow_run.cancelled webhook events for push notifications.
Available workflows
Script to video
Build a narrated video from a script. VideoGen uses your text verbatim, then adds visuals, narration, and captions. This is the primary entry point: pass a script and a visualStyle ({ type: "AI_IMAGE", aiStyle } for AI-generated images, where aiStyle is a free-form description of the look; see AI styles for example descriptions, { type: "STOCK" } for stock footage, or { type: "ENTITY", entityId } for a saved visual-style entity).
Voiceover to video
Build a video around an audio file you provide. Upload the voiceover through the Files API first, then pass its fileId and a visualStyle (same shape as script to video). VideoGen transcribes the audio and matches b-roll to the narration.
Slideshow to video
Build a narrated walkthrough from an uploaded PDF or PowerPoint file. Upload the file through the Files API first, then pass its fileId. VideoGen narrates each slide and adds transitions and captions. Override the per-slide narration with slideScripts (see Options).
Options
Workflows accept optional fields beyond their required input. Each applies only where it makes sense for that workflow.
Workflow run lifecycle
When a run succeeds, open projectUrl in the VideoGen app or export the project via the Projects API.
Example (script to video)
Projects and export
After a workflow completes, use the Projects API to list projects, fetch metadata, and render an MP4:
Use pollProjectExport (TS) / poll_project_export (Python) to wait for the MP4.