Veo V2

Ingredients to Video

Changed on

Generate video from 1–3 reference images and a text prompt. Returns immediately with 202 Accepted.

Rate limit: 30 requests/minute — shared across all four Veo creation endpoints.

post/v2/veo/ingredients-to-video

Request

Request body multipart/form-data

reference_imagesstring[] required

Reference image files (1–3 images, each max 20MB)

promptstring required

Text description to guide the video generation

aspect_ratio'VIDEO_ASPECT_RATIO_LANDSCAPE' | 'VIDEO_ASPECT_RATIO_PORTRAIT'

Video aspect ratio

number_of_videosstring required

Number of videos to generate (1–4). Sent as string in form data.

model'veo' | 'omni_flash'

Video model — veo (default) or omni_flash (Omni 1.1, see Video models in the Veo V2 tag). 403 omni_disabled if Omni is not enabled for your account.

duration'4' | '6' | '8' | '10'

Omni only — clip length in seconds. Sent as string in form data.

resolution'360p' | '720p' | '1080p'

Omni only — output resolution (1080p = 720p + upscale; upscale_resolution is ignored for Omni).

watermarkstring

Omni only (true/false, sent as string in form data) — cheaper clip with a ✦ watermark. Requires resolution 720p or 1080p.

upscale_resolution'' | 'none' | '1080p'

Optional upscale resolution. Leave empty or none to disable upscale. 4k is not supported for video and returns 400. Veo only — ignored for omni_flash (use resolution instead).

callback_urlstring

Optional webhook URL. When the task reaches a terminal state (completed or failed), GenAIPro POSTs the task status (same shape as GET /v2/veo/tasks/{id}) to this URL.

Response

Task accepted for processing. Returns exactly one history item representing the parent task; use its id to poll GET /v2/veo/tasks/{id}.

Example response

{
  "histories": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "prompt": "A cat walking on the beach at sunset",
      "status": "processing",
      "created_at": "2026-04-03T10:00:00Z"
    }
  ]
}

Changes

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status