Create HeyGen Video
Generates a scene with its sound from a prompt using HeyGen Video (heygen-video-1). Set mode to text_to_video, image_to_video or reference_to_video; reference-to-video takes up to fifteen references in total, and reference videos must be between 1:4 and 4:1. Returns 202 with a video_id; poll GET /v3/models/videos/. Send an Idempotency-Key to retry safely; without one, each submission creates a new generation. To have an avatar speak a script, use POST /v3/videos.
Headers
Optional client-supplied key for safely retrying mutations. Subsequent calls within 24 hours that share this key replay the original response — even if the request body differs slightly (a warning is logged). A retry that arrives while the original is still in flight gets a 409 request_in_progress. Keys must be 1–255 characters from [A-Za-z0-9_:.-]; a UUID is a safe default. Scope is per-endpoint and per-resource: the same key on a different route or path parameter is independent.
1 - 255^[A-Za-z0-9_\-:.]{1,255}$Body
- TextToVideoRequest
- ImageToVideoRequest
- ReferenceToVideoRequest
Body of POST /v3/models/videos: one schema per generation mode, selected by the required mode field.
Stable, opaque end-user identifier in your application, scoped to the authenticated workspace. Use 1–128 non-whitespace characters without personal information. Used for usage attribution and abuse investigation; does not change billing, authorization, or rate limits.
1 - 128^\S+$Requested video duration: whole seconds from 5 through 30, or auto. Defaults to 5 when omitted. Durations above 15 seconds require turbo or quality prompt enhancement. Auto estimates quoted speech with an 8-second minimum and the maximum supported by these settings. Over MCP, auto is capped at 15 seconds; use an explicit duration for longer output. Generation and billing use the resolved duration.
5 <= x <= 30
