Skip to main content
POST
Veo Series
Google Veo 3.1 video generation, available through both official direct and reverse-engineered channels, with 4 variants in total.
  • Official tiers (Vertex AI direct): billed per second; supports 4 / 6 / 8 second durations and 720P / 1080P / 4K resolutions.
  • Reverse-engineered tiers: billed per call (fixed price per call); only 8-second fixed duration.
Both channels natively support audio, first/last-frame keyframes, and Remix continuation.

Pricing

4K resolution does not support muted output — you must set generate_audio=true (720p / 1080p can be either muted or with audio). In the table below, 720p_sound / 1080p_sound are the audio-on premium tiers, and 4k_sound is the only available 4K tier.

Official Tiers (per-second)

720P and 1080P share the same price (Google’s official tiered pricing); enabling generate_audio=true doubles the unit price.

veo3.1-fast-official

veo3.1-quality-official

Reverse-Engineered Tiers (per-call)

Reverse-engineered tiers use a fixed per-call price independent of duration, resolution, or audio (only 8 seconds is supported). Refer to the admin panel / console for the published price.

Request Examples

After submission, poll status with GET /v1/tasks/{task_id}. See Task System for details.

Available Models

Common Parameters

string
required
Model ID — one of veo3.1-quality-official / veo3.1-fast-official / veo3.1-quality / veo3.1-lite
string
default:"generate"
Operation type, valid values:
  • generate — text-to-video (T2V)
  • image2video — image-to-video (I2V); requires first_frame_image
  • first_last_frame — first/last-frame keyframes; requires both first_frame_image and last_frame_image
  • remix — continuation based on an existing clip
string
required
Video description text; required for all actions
string
default:"16:9"
Frame aspect ratio, valid values:
  • 16:9 — landscape widescreen
  • 9:16 — portrait
string
default:"1080p"
Output resolution, valid values:
  • 720p
  • 1080p
  • 4kofficial tiers only, and must have generate_audio=true (4K does not support muted output)
integer
default:"8"
Video duration in seconds:
  • Official tiers: 4 / 6 / 8
  • Reverse-engineered tiers: 8 only (fixed)
string[]
Generic image-reference array (in some scenarios equivalent to first_frame_image)
string
First-frame image URL. Required for image2video / first_last_frame / remix modes
string
Last-frame image URL — required only in first_last_frame mode
string
Webhook callback URL, invoked when the task reaches a terminal state. See Callback Mechanism
string[]
Subscribed callback event types; defaults to terminal states (completed / failed)

Model-Specific Parameters

All four variants share the same parameters; only the channel, billing model, and available duration / resolution differ. Tab order is Quality before Fast / Lite, and official before reverse-engineered.
boolean
default:"false"
Whether to generate the audio track. When enabled, unit price doubles; 4K must be true
integer
default:"1"
Number of samples to generate; range 1-4
string
default:"pad"
Image resize strategy for image-to-video, valid values:
  • pad — edge padding, preserves the entire frame
  • crop — center crop, fits the output ratio
boolean
default:"true"
Upstream prompt enhancement; must be true (forced on by Vertex AI)
string
default:"allow_adult"
Person-generation policy, valid values:
  • allow_adult — allow generating adult persons
  • disallow — disallow generating persons
boolean
default:"false"
Remix-mode only; when true, returns only the extension, not concatenated with the original clip

Resource Limits