Skip to main content

Overview

Veo 3.1 is a Google video generation model for text-to-video, first/last-frame animation, reference-guided video creation, and extension of completed Veo 3.1 tasks. Use this page when you are ready to call the API after trying the model in the APIXO playground.

Endpoint and authentication

Base URL:
All requests require your APIXO API key:
Submit requests also require:

Copy-paste async quickstart

This minimal request submits a text-to-video task and returns a taskId.
Successful response:
Save the taskId; you need it to poll for the final result.

Poll for result

Processing response:
Success response:
Failed response:
Parse resultJson after state becomes success:

Request body

Text-to-video

First/last frame to video

Reference-to-video

Extend a completed Veo 3.1 task

Parameters

string
default:"async"
required
Result delivery mode. Use async for polling with statusTask, or callback for webhook delivery.
string
Required when request_type is callback. Must be a public HTTPS URL that can receive the final task payload. See Webhooks.
object
required
Veo 3.1 input parameters.
REFERENCE_2_VIDEO requires mode: "fast". Use up to 3 public image URLs for reference generation. It only supports 8 seconds.
extend-fast and extend-quality require input.taskId. The base task must be a completed non-extend Veo 3.1 task owned by the same account. An extend task cannot be used as the base task for another extend request.
Use public, directly reachable image URLs. JPG, JPEG, and PNG inputs up to 10 MB are recommended for image-guided workflows.

Response format

Submit task response

POST /generateTask/veo-3-1 returns a task ID when the task is accepted:
integer
API status code. 200 means the task was accepted.
string
Human-readable status message.
string
Unique task identifier used with the status endpoint.

Status response fields

string
Unique task identifier.
string
Current task state: pending, processing, success, or failed.
string
JSON string containing the generated video URLs. Present when state is success.
string
Machine-readable failure code. Present when state is failed.
string
Human-readable failure message. Present when state is failed.
integer
Task creation timestamp in Unix milliseconds.
integer
Task completion timestamp in Unix milliseconds. Present after completion.
integer
Processing duration in milliseconds. Present after successful or failed completion when available.

Webhook callback mode

Use callback mode when your backend should receive the final result automatically instead of polling.
See Webhooks for delivery requirements and retry behavior.

Billing

Veo 3.1 is billed per generated or extended video task. For generation modes, the selected mode and resolution determine the unit price. Extend modes have their own per-task pricing on the Pricing page. Current pricing does not change with duration; 4, 6, and 8 second requests use the same per-video price for a given mode + resolution. Market reference pricing used for comparison: For current route and market comparison pricing, see Pricing.

Latency and polling

Actual latency may vary by prompt complexity, image inputs, selected route, and current queue load.
For production video workloads, use callback mode to avoid frequent polling.
Rate limits and concurrency can vary by account, API key, and route. If you receive 429, slow down requests and retry with backoff. For account-level details, see System APIs.

Errors and troubleshooting

HTTP errors

Task failure codes

Common validation issues

See Error Codes for the full error reference.