AI Video
AI Video uses ai_video. Select a model from generation_models[]; do not create model-specific endpoints or content types.
Gemini Omni Flash
{ "type": "ai_video", "prompt": "Move slowly through a futuristic city on a rainy night, with neon reflections and natural ambient audio", "aspect_ratio": "16:9", "video_generation": { "model": "gemini-omni-flash", "task": "text_to_video", "resolution": "720p", "duration_seconds": 8, "native_audio": true }}
Gemini Omni Flash supports iterate conversational editing. The client never manages interaction IDs.
Veo 3.1 Fast
{ "type": "ai_video", "prompt": "A paper airplane moves through a bright modern library with cinematic camera motion", "aspect_ratio": "16:9", "video_generation": { "model": "veo-3.1-fast", "task": "text_to_video", "resolution": "720p", "duration_seconds": 8, "native_audio": true }}
Veo 3.1 Standard
{ "type": "ai_video", "prompt": "A coastal research station at sunrise, slow push-in camera, realistic ambient audio", "aspect_ratio": "16:9", "video_generation": { "model": "veo-3.1-standard", "task": "text_to_video", "resolution": "720p", "duration_seconds": 8, "native_audio": true }}
Veo does not support conversational editing. The current Public OpenAPI supports text-to-video only; first frames, last frames, and attachments remain unavailable until the catalog says otherwise.
Choose AI Video for motion-first work
AI Video is a fit for a short visual moment, product atmosphere, cinematic B-roll, or a concept where movement and sound carry the point. Write one coherent prompt that names the subject, action, setting, camera behavior, and sound intent. For a long instructional narrative with controlled explanation, use Explainer Video or Vector Animation instead of asking a short video to carry the whole lesson.
Select a model from current capability data
Read /catalog immediately before building the video_generation object. The selected model determines the supported task, ratio, resolution, duration, native audio, and whether a completed result can be iterated. Keep fields nested under video_generation in OpenAPI; the flat MCP argument shape does not apply here. Do not send first-frame, last-frame, or attachment fields unless the catalog explicitly marks them supported.
Create the job, poll its returned job_id, and only then read the completed creation detail. Gemini Omni Flash can use iterate only when the result exposes that action. Veo does not support it, so a material revision requires a new request with a changed prompt.
Related guides
Catalogfor model-specific capability fieldsCreations & Jobsfor status polling and result retrievalEditing & Errorsfor the iteration boundary
