Generate video from text, image, or video input. Returns a job that you poll or stream for completion.
This endpoint also handles lipsync (provide audio + video/image via files), video editing (provide a video file), and video upscaling (provide a video file with an upscale model).
API key from varg.ai/dashboard.
Pass as Authorization: Bearer varg_xxx.
Video model to use. Also accepts lipsync and video upscale models.
Video generation: kling-v3, kling-v3-standard, seedance-2-preview, seedance-2-fast-preview, sora-2, sora-2-pro, wan-2.5, wan-2.5-preview, minimax, ltx-2-19b-distilled, grok-imagine
Video editing: grok-imagine-edit, sora-2-remix, seedance-2-preview
Motion control: kling-v2.6-motion
Lipsync: veed-fabric-1.0, sync-v2, sync-v2-pro, omnihuman-v1.5
Video upscale: seedvr-video, topaz-video, bytedance-upscaler, sima-video-upscaler
Legacy: kling-v2.6, kling-v2.5, kling-v2.1, kling-v2
"kling-v3"
"seedance-2-preview"
"seedance-2-fast-preview"
"sora-2"
"wan-2.5"
"minimax"
"ltx-2-19b-distilled"
"grok-imagine"
"veed-fabric-1.0"
"sync-v2"
"seedvr-video"
Text description of the video to generate. For lipsync and upscale models, can be empty.
"ocean waves crashing on a rocky beach at sunset"
Duration in seconds. Seedance models only accept 5, 10, or 15. Kling V3 accepts integers 3-15.
5
Output aspect ratio
"16:9"
"9:16"
"1:1"
"4:3"
"3:4"
Input files for image-to-video, video editing, lipsync, or upscale.
.mp4, .webm, .mov)Additional options passed directly to the provider
Job created
Unique job identifier
"job_a1b2c3d4"
Current job status
queued, processing, completed, failed, cancelled "completed"
Resolved model identifier (provider:model format)
"fal:kling-v2.5"
When the job was created
"2026-02-13T10:00:00Z"
When the job finished (completed, failed, or cancelled)
"2026-02-13T10:02:30Z"
Job output, present when status is completed
Cache metadata
Error message, present when status is failed
"Provider returned an error"