Veo 3.1
Google DeepMind Veo 3.1: cinematic 4–8 s video with native dialogue and sound effects.
Model ID: veo-3.1
Playground
0 – 2147483647
Use the same request from code — API docs
Provider prices for this request
Enter a prompt to compare provider prices.
Result
Your generation will appear here.
Pricing by provider
Prices are per unit; requests without a provider are routed to the cheapest provider that supports your parameters.
| Provider | Option | Price (USD) | Credits |
|---|---|---|---|
| Replicate | generate_audio: false | 45 / second | |
| generate_audio: true | 90 / second | ||
| WaveSpeedAI | generate_audio: false | 45 / second | |
| generate_audio: true | 90 / second | ||
| resolution: 4k · generate_audio: false | 90 / second | ||
| resolution: 4k · generate_audio: true | 135 / second | ||
| KIE AI | resolution: 720p | 282 / request | |
| resolution: 4k | 417 / request | ||
| resolution: 1080p | 287 / request | ||
| AtlasCloud | All options | 45 / second | |
| Vercel AI Gateway | resolution: 720p · generate_audio: false | 45 / second | |
| resolution: 720p · generate_audio: true | 90 / second | ||
| resolution: 1080p · generate_audio: false | 45 / second | ||
| resolution: 1080p · generate_audio: true | 90 / second | ||
| resolution: 4k · generate_audio: false | 90 / second | ||
| resolution: 4k · generate_audio: true | 135 / second |
API reference
Endpoints
Base URL: https://01router.com/api/v1
/generationsCreate a generation (charges credits)/generations/{id}Get a generation; polls the provider while running/quotePrice a request on every provider (no charge, no key needed)Authentication
Send your API key as a Bearer token. Requests are billed to the key owner's credits.
Authorization: Bearer sk_xxxxxxxxxxxxxxxxGet an API keyRequest body
| Name | Type | Required | Description |
|---|---|---|---|
| model | string | Yes | "veo-3.1" |
| provider | string | No | Pin a provider; omit to auto-route to the cheapest. One of: replicate | wavespeed | kie | atlascloud | vercel |
| input | object | Yes | Model parameters, see the input fields below. |
input fields
Unified parameters work on every provider; some providers support a narrower range — check the quote endpoint or the playground.
| Name | Type | Values | Default |
|---|---|---|---|
| prompt* | text | — | — |
| negative_prompt | string | — | — |
| image_url Optional start image (image-to-video) | image | — | — |
| end_image_url | image | — | — |
| duration | enum | 4 | 6 | 8 | 8 |
| resolution | enum | 720p | 1080p | 4k | 720p |
| aspect_ratio | enum | 16:9 | 9:16 | 16:9 |
| generate_audio | boolean | — | true |
| seed | integer | 0 – 2147483647 | — |
Example request
curl https://01router.com/api/v1/generations \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "veo-3.1",
"provider": "replicate",
"input": {
"prompt": "A cinematic shot of a red fox running through snow",
"duration": 8,
"resolution": "720p",
"aspect_ratio": "16:9",
"generate_audio": true
}
}'
# poll until status is "succeeded" or "failed"
curl https://01router.com/api/v1/generations/<id> -H "Authorization: Bearer $API_KEY"Response
Pass the model id, its unified input parameters and optionally a provider slug. The response returns immediately with the task id; image models on synchronous providers may already be succeeded.
{
"id": "gen_6f1c…",
"object": "generation",
"model": "veo-3.1",
"type": "video",
"provider": "replicate",
"status": "processing",
"input": {
"prompt": "…",
"duration": 8,
"resolution": "720p",
"aspect_ratio": "16:9",
"generate_audio": true
},
"outputs": [],
"error": null,
"credits": 0,
"price_usd": 0,
"created_at": "2026-10-23T08:00:00.000Z",
"completed_at": null
}Get the result
Poll every few seconds until status is succeeded or failed. Output URLs are provider-hosted and may expire — download them promptly.
curl https://01router.com/api/v1/generations/gen_6f1c… -H "Authorization: Bearer $API_KEY"
{ "id": "gen_6f1c…", "model": "veo-3.1", "status": "succeeded", "outputs": ["https://…"], … }Quote
Same body as creating a generation. Returns every available provider sorted by price, plus the ones that cannot serve the request and why.
curl https://01router.com/api/v1/quote -H "Content-Type: application/json" \
-d '{"model":"veo-3.1","input":{"prompt":"…","duration":8,"resolution":"720p","aspect_ratio":"16:9","generate_audio":true}}'Auth, routing, billing and error codes are covered in Gateway API reference