Veo 3.1 API Documentation
Complete guide to integrate Google's AI video generation into your applications.
Quick Start Guide
Get up and running with the Veo 3.1 API in just a few minutes.
Get Your API Key
First, you'll need to obtain an API key from your dashboard.
Make Your First Request
Using cURL
curl -X POST "https://veo3api.com/generate" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "a dog running",
"model": "veo3-fast",
"watermark": "veo"
}'Using JavaScript
const response = await fetch('https://veo3api.com/generate', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
prompt: 'a dog running',
model: 'veo3-fast',
watermark: 'veo'
})
});
const data = await response.json();
console.log('Task ID:', data.data.task_id);Check Generation Status
Video generation is asynchronous. Use the https://veo3api.com/feed endpoint to check status, or provide a callback_url for webhook notifications.
curl -X GET "https://veo3api.com/feed?task_id=YOUR_TASK_ID" \
-H "Authorization: Bearer YOUR_API_KEY"API Reference
Complete reference for all Veo 3.1 API endpoints, parameters, and response formats.
Base URL
https://veo3api.comEndpoints do not use an /api prefix—call https://veo3api.com/ (for example https://veo3api.com/generate).
Authentication
All API requests require authentication using a Bearer token in the Authorization header.
Authorization: Bearer YOUR_API_KEYhttps://veo3api.com/generateGenerate a video from text or image prompt
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
prompt | string | Required | The text prompt for video generation |
model | string | Required | Choose between veo3 (high quality, 400 credits) or veo3-fast (fast generation, 70 credits) |
aspect_ratio | string | Optional | Aspect ratio: 16:9 (default, 1080P HD), 9:16 (portrait), or Auto (match image) |
image_urls | string[] | Optional | Array of image URLs for image-to-video generation |
watermark | string | null | Optional | Custom watermark text. Set to null for no watermark |
callback_url | string | Optional | Webhook URL to receive generation results automatically |
View cURL command
curl -X POST "https://veo3api.com/generate" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "a dog running",
"model": "veo3-fast",
"aspect_ratio": "16:9",
"callback_url": "https://your-webhook.com/callback"
}'Example Request
{
"prompt": "a dog running",
"model": "veo3-fast",
"watermark": "veo",
"callback_url": "https://your-webhook.com/callback"
}Response
{
"code": 200,
"message": "success",
"data": {
"task_id": "veo4a7f5dd50a90446aa3c567ecceea42bcbksv"
}
}Credits Consumption
| Model Type | Credits | Cost |
|---|---|---|
veo3-fast(Text to Video) | 70 credits | $0.70 USD |
veo3-fast(Image to Video) | 200 credits | $2.00 USD |
veo3(High Quality) | 400 credits | $4.00 USD |
Note: Credits are deducted only when the video generation is completed successfully. Failed tasks do not consume credits.
https://veo3api.com/feedCheck the status of a video generation task
View cURL command
curl -X GET "https://veo3api.com/feed?task_id=YOUR_TASK_ID" \
-H "Authorization: Bearer YOUR_API_KEY"Example Request
GET https://veo3api.com/feed?task_id=YOUR_TASK_IDResponse
{
"code": 200,
"message": "success",
"data": {
"request": {
"prompt": "a dog running",
"model": "veo3-fast",
"watermark": "veo"
},
"response": [
"https://cdn.veo3api.com/video/example_watermarked.mp4"
],
"status": "COMPLETED",
"created_at": "2025-10-29 12:20:46"
}
}💡 Tip: The generated video URL can be obtained from data.response array.
HTTP Status Codes
| Status Code | Description |
|---|---|
| 200 | Request successful |
| 400 | Bad request - Invalid parameters |
| 401 | Unauthorized - Invalid API key |
| 429 | Rate limit exceeded |
| 500 | Internal server error |
