{
"created": 1757169743,
"id": "task-unified-1757169743-7cvnl5zw",
"model": "veo-3.1-lite-generate-preview",
"object": "video.generation.task",
"progress": 0,
"status": "processing",
"task_info": {
"can_cancel": false,
"estimated_time": 600,
"video_duration": 4
},
"type": "video",
"usage": {
"billing_rule": "per_call",
"credits_reserved": 12.24,
"user_group": "default"
}
}{
"error": {
"code": "invalid_parameter",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: veo-3.1-lite-generate-preview",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Veo3.1-Lite Video Generation
- Veo 3.1 Lite is the low-cost tier of Veo 3.1: text-to-video and first / first-and-last frame image-to-video; no reference images or
4k - Billed per second of output video; the rate depends on resolution and whether audio is generated, see EvoLink model pricing
- Asynchronous processing: use the returned task ID to query task status
- Generated video links are valid for 24 hours, please save them promptly
{
"created": 1757169743,
"id": "task-unified-1757169743-7cvnl5zw",
"model": "veo-3.1-lite-generate-preview",
"object": "video.generation.task",
"progress": 0,
"status": "processing",
"task_info": {
"can_cancel": false,
"estimated_time": 600,
"video_duration": 4
},
"type": "video",
"usage": {
"billing_rule": "per_call",
"credits_reserved": 12.24,
"user_group": "default"
}
}{
"error": {
"code": "invalid_parameter",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: veo-3.1-lite-generate-preview",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Authorizations
All APIs require Bearer Token authentication
Get API Key:
Visit API Key Management Page to get your API Key
Add to request header:
Authorization: Bearer YOUR_API_KEY
Body
Video generation model name. image_start, image_end and model_params are not accepted on this model (returns 400)
veo-3.1-lite-generate-preview "veo-3.1-lite-generate-preview"
Prompt describing the video, up to 2000 tokens. Counted with cl100k; tokens are not characters. Google lists English as the supported prompt language. EvoLink does not reject requests based on prompt language; results in other languages are not guaranteed.
"A golden retriever puppy running through a sunlit meadow, slow motion, cinematic lighting"
Input image URLs for image-to-video
Notes:
- Up to
2images per request:1image is used as the first frame,2images are used as the first and last frames - Image size: no larger than
10 MB - Supported file formats:
.jpg,.jpeg,.png
2["https://example.com/first-frame.jpg"]
Generation mode. When omitted it is inferred from the number of images:
TEXT: Text-to-video (input images, if any, are not used)FIRST&LAST: First-last frame, 1-2 images
REFERENCE (reference images) is not supported by this model and returns 400
TEXT, FIRST&LAST Video aspect ratio. auto is the same as omitting aspect_ratio: no ratio is specified and the model decides
auto, 16:9, 9:16 Whether to generate audio, default true. Generating audio increases the per-second rate
Video duration in seconds, default 4. Longer videos cost more
4, 6, 8 Number of videos to generate, default 1. Each video is billed separately
1 <= x <= 4Output resolution, default 720p. 1080p has a higher per-second rate; 4k is not supported by this model
720p, 1080p Random seed used to reproduce generation results
1 <= x <= 4294967295Negative prompt describing content to exclude from the video
Person generation control. When omitted, the upstream default is allow_adult. allow_adult: allow adults only; dont_allow: do not generate videos containing people or faces
allow_adult, dont_allow Image resize mode for image-to-video. When omitted, the upstream default is pad. pad: add padding to fit the output aspect ratio; crop: center-crop to fit the output aspect ratio. Requires an input image; providing this parameter without an image returns 400
pad, crop HTTPS callback URL for task completion
Callback Timing:
- Triggered when the task is completed or failed
- Sent after billing confirmation
Security Restrictions:
- HTTPS protocol only
- Internal IP addresses are prohibited (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)
- URL length must not exceed
2048UTF-8 bytes
Callback Mechanism:
- Timeout:
10seconds - Maximum
3retries after failure (at1/2/4seconds after failure) - Callback response format is consistent with task query API
- 2xx status code is considered successful, other codes trigger retry
"https://your-domain.com/webhooks/video-task-completed"
Response
Video generation task created successfully
Task creation timestamp
1757169743
Task ID
"task-unified-1757169743-7cvnl5zw"
Actual model name used
"veo-3.1-lite-generate-preview"
Specific type of the task
video.generation.task Task progress percentage (0-100)
0 <= x <= 1000
Task status
pending, processing, completed, failed "processing"
Video task details
Show child attributes
Show child attributes
Output type of the task
text, image, audio, video "video"
Usage and billing information
Show child attributes
Show child attributes