Workflows

Voiceover to video

Creates a project from an uploaded voiceover file and generates a video with matching b-roll. Upload the voiceover via the files API first.

post/v1/workflows/voiceover-to-video

Request body

fileIdstring required

Opaque file id of an uploaded voiceover audio file (e.g. vg_file_...). Upload the file first via POST /v1/files/upload. Attach a pre-computed transcript at upload time (via the transcript field on POST /v1/files/upload) to skip re-transcription.

visualPacing'FAST' | 'MEDIUM' | 'SLOW'

How quickly visuals change. FAST shows more, shorter shots; SLOW holds each visual longer. Defaults to MEDIUM.

quality'LOW' | 'STANDARD' | 'HIGH' | 'MAX'

AI generation quality tier, shared across every generative feature (image, video, text, and so on). LOW is fastest and cheapest, STANDARD balances quality and cost, HIGH is higher quality, and MAX is the highest quality.

When a request omits the quality field, VideoGen falls back to your account's Default AI quality for that feature, which you can change at Account settings. Not every feature supports every tier; unsupported tiers are rejected with an error (see each field's description).

languagestring

Output language as a BCP-47 code (e.g. en, es, fr). Defaults to English.

actorEntityIdstring nullable

Recommended. Optional id of a built-in stock actor or an ACTOR entity (e.g. vg_enti_...) with an image reference. When set, narration is delivered by that actor avatar. Omit or pass null for voiceover without an avatar.

avatarQuality'LOW' | 'STANDARD' | 'HIGH' | 'MAX'

AI generation quality tier, shared across every generative feature (image, video, text, and so on). LOW is fastest and cheapest, STANDARD balances quality and cost, HIGH is higher quality, and MAX is the highest quality.

When a request omits the quality field, VideoGen falls back to your account's Default AI quality for that feature, which you can change at Account settings. Not every feature supports every tier; unsupported tiers are rejected with an error (see each field's description).

logoFileIdstring nullable

Optional file id of an uploaded logo image to overlay on the video (e.g. vg_file_...). Upload the image first via POST /v1/files/upload. Only image files are accepted.

workflowAgentContextstring

Optional production notes for the AI that builds the video — visual direction for how to illustrate the voiceover (e.g. on-screen code or text to display, specific b-roll to feature, or scene-by-scene staging). Never spoken; does not change the uploaded voiceover audio or its transcript.

isOutputTemporaryboolean

When true, the video's generated OUTPUT files (AI images, video clips, voiceover audio, avatars) are created as temporary: guaranteed available for 24 hours, after which they may be archived and later deleted. This also covers files produced by post-build remix actions (e.g. generated background music, image-to-video conversions). Use this when your integration downloads or re-hosts the results itself and does not need VideoGen to retain them. The project and its metadata are unaffected. Defaults to false.

hideFromUiboolean

When true, generated files are hidden from the VideoGen Media page by default. They remain accessible through the API. Defaults to false.

Response

Workflow run accepted.

workflowRunIdstring required

Opaque workflow run id (e.g. vg_work_...).

projectIdstring required

Id of the project created for this workflow run (e.g. vg_proj_...).

projectUrlstring uri required

Deep link to open this project in the VideoGen web editor. Not required for an API-only integration: store projectId and use the Projects API (export, remix, metadata). Use projectUrl when a person should open the project in the app to review or edit it manually. The project is visible only to members of your team and any project collaborators, the same access model as a project created in the dashboard.

remixActionIdsstring[] required

Opaque remix action ids (e.g. vg_rmix_...), one per remixActions entry in request order. Empty when no remix actions were requested. Each runs after the video is built; poll GET /v1/projects/{projectId}/remix-actions.

Changes

No recorded changes to this endpoint across all 1 revision of this API.