Video Generation
Google Veo models power text-to-video through /v1/video/generations. For the full walkthrough covering every provider, see Video Generation.
Example
Section titled “Example”curl https://llmtr.com/v1/video/generations \ -H "Authorization: Bearer llmtr-your_key" \ -H "Content-Type: application/json" \ -d '{ "model": "google/veo-3.1-generate-001", "prompt": "A cinematic drone shot over Cappadocia at sunrise", "duration_seconds": 8, "aspect_ratio": "16:9", "resolution": "1080p", "max_wait_seconds": 180, "max_budget_usd": 3.00 }'Parameters
Section titled “Parameters”| Field | Description |
|---|---|
model | Canonical id of the video generation model. Required. |
prompt | Text description of the video to generate. Required. |
duration_seconds | Video duration. Required. Veo supports 4-8 seconds. |
aspect_ratio | Aspect ratio. Defaults to 16:9. |
resolution | 720p, 1080p, or 4k. Veo 3.1 Lite does not support 4k. Defaults to 720p. |
negative_prompt | Description of elements to avoid in the video. |
image_url | Image-to-video reference frame. Only the data:image/...;base64,... form is accepted; a remote URL returns 400 unsupported_input. |
max_wait_seconds | Polling timeout for the long-running job. At most 300 seconds. |
max_budget_usd | Spend cap the gateway checks before starting the request. |
Response
Section titled “Response”Veo returns the video as base64 MP4 in data[].b64_json; the url field is null for these models.
{ "id": "projects/.../operations/...", "object": "video.generation", "model": "google/veo-3.1-generate-001", "status": "completed", "data": [ { "url": null, "b64_json": "AAAAIGZ0eXBpc29t...", "mime_type": "video/mp4" } ]}Pricing
Section titled “Pricing”Veo models are billed per second by native unit; the per-resolution price table lives on the Video Generation page. Always cap with max_budget_usd.
Discontinued endpoints
Section titled “Discontinued endpoints”Google shuts down the pre-3.1 Veo endpoints on 28 August 2026. The successor for google/veo-3.0-generate-001 and google/veo-2.0-generate-001 is google/veo-3.1-generate-001; for google/veo-3.0-fast-generate-001 it is google/veo-3.1-fast-generate-001. After the cutoff, requests for the old identifiers return 410 model_retired; there is no auto-forward.