altrouter.ai
Models/Google/Veo 3.1 Fast
VE

Google: Veo 3.1 Fast

Videoveo-3.1-fast

The fast tier of Veo 3.1 — the same look for a fraction of the price, 1080p with audio.

API docs
Playgroundveo-3.1-fast
Reference image
duration
Aspect ratio
Latency8.8 s
24hnow
Specifications
Authorgoogle
ModalityVideo
Price$0.97 / video$1.20 / video
Savings19%
ReleasedJul 23, 2026
Quick start
# Video is asynchronous: create, then poll.
curl https://api.altrouter.ai/v1/videos \
  -H "Authorization: Bearer ar-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "veo-3.1-fast",
    "prompt": "a drone shot over a coastline"
  }'
# → { "id": "vid_...", "status": "queued" }

curl https://api.altrouter.ai/v1/videos/vid_... \
  -H "Authorization: Bearer ar-..."
# → { "status": "completed", "url": "https://api.altrouter.ai/media/videos/..." }

Same OpenAI-compatible endpoint — just swap base_url and key.

API

An asynchronous endpoint: the call returns immediately in queued, and you poll GET /v1/videos/{id} for the result. The finished mp4 is re-hosted on our CDN, and only a completed render is charged.

POST/v1/videos
Body parameters
modelstringrequired"veo-3.1-fast"
The model id.
promptstringrequired
The text description of the scene.
secondsinteger
Clip length; `duration` is accepted as an alias.
imagestringURL or base64
A reference frame — its presence routes to the model’s image-to-video variant.
durationenum4 · 6 · 8default 8
Clip length in seconds (affects price).
aspect_ratioenum16:9 · 9:16default 16:9
Output aspect ratio.
Response

The same object comes back from GET /v1/videos/{id}; the finished file is also served directly from GET /v1/videos/{id}/content.

idstring
The render id (vid_…) — this is what you poll.
statusenumqueued · in_progress · completed · failed
The state of the render.
urlstring
The finished mp4 on our CDN — appears at status: completed.
secondsinteger
The clip length the price was computed on.
errorobject
Why it failed at status: failed: { code, message }.
Example
cURLPythonJSON
curl https://api.altrouter.ai/v1/videos \
  -H "Authorization: Bearer ar-..." \
  -H "Content-Type: application/json" \
  -d '{
  "model": "veo-3.1-fast",
  "prompt": "a drone shot over a rocky coastline at sunrise",
  "duration": "8",
  "aspect_ratio": "16:9"
}'
Errors
400Invalid request.
401Missing or invalid API key.
402Insufficient credits, or the key’s spending cap is exhausted.
404Model not found.
429Rate limit exceeded.
More from Google
Gemini 3.1 Flash Lite
gemini-3.1-flash-lite
Gemini 2.5 Flash
gemini-2.5-flash
Gemini 3 Flash
gemini-3-flash
Gemini 3.5 Flash
gemini-3.5-flash
Gemini 2.5 Pro
gemini-2.5-pro
Gemini 3.1 Pro
gemini-3.1-pro
Gemini 3 Pro
gemini-3-pro
Nano Banana Fast
nano-banana-fast
Nano Banana
nano-banana
Nano Banana 2
nano-banana-2
Nano Banana Pro
nano-banana-pro
Veo 3.1
veo-3.1