Volver a las guías
Video·2 de julio de 2026·Actualizado el 13 de septiembre de 2026·7 min de lectura

Veo 3.1 API — Google's text-to-video with native audio, OpenAI-compatible (2026)

Veo 3.1 is Google's text-to-video model with native audio. Here's how to call the Veo 3.1 API on Kunavo — three tiers, image-to-video, per-video pricing ~50–70% under Google's list, and the async workflow.

Last reviewed on .

Veo 3 is Google's text-to-video model, and the Veo 3 API generates cinematic clips — with native, synchronized audio — from a text prompt or a still image. Kunavo serves the whole family (veo-3-lite, veo-3 Fast and veo-3-quality) through the OpenAI-style video endpoint, at roughly 50–70% under Google's list price, on one bearer token.

Call the Veo 3 API

Generate a key at /app/keys and POST to /v1/video/generations. Generation takes a couple of minutes, so the synchronous call holds the connection until the clip is ready:

veo3.py
import requests

resp = requests.post(
    "https://api.kunavo.com/v1/video/generations",
    headers={"Authorization": f"Bearer {API_KEY}"},
    json={
        "model": "veo-3",                 # Fast tier; also veo-3-lite / veo-3-quality
        "prompt": "aerial push-in over a misty pine valley at dawn, birds, soft light",
        "duration": 8,
        "aspect_ratio": "16:9",
        "resolution": "720p",
    },
    timeout=600,  # Veo 3 generation takes minutes
)
print(resp.json()["data"][0]["url"])

The same call with curl:

veo3.sh
curl https://api.kunavo.com/v1/video/generations \
  -H "Authorization: Bearer $KUNAVO_API_KEY" \
  -H "Content-Type: application/json" \
  --max-time 600 \
  -d '{
    "model": "veo-3",
    "prompt": "aerial push-in over a misty pine valley at dawn, birds, soft light",
    "duration": 8,
    "aspect_ratio": "16:9",
    "resolution": "720p"
  }'

And if the rest of your codebase already runs on the OpenAI SDK, you can keep one client for everything — chat, images and video share the key and the base_url:

veo3_openai_sdk.py
# Already using the OpenAI SDK? Keep it — only base_url changes.
# Video isn't in the OpenAI SDK surface, so reuse its client for auth/config
# and post to the video route directly.
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["KUNAVO_API_KEY"],
    base_url="https://api.kunavo.com/v1",
)

resp = client.post(
    "/video/generations",
    body={"model": "veo-3", "prompt": "a neon-lit alley in the rain", "duration": 8},
    cast_to=dict,
    options={"timeout": 600.0},
)
print(resp["data"][0]["url"])

Returned URLs are permanent. Full parameters (resolution, aspect_ratio, seeds, negative prompts) are in the video API reference.

Tiers and pricing

Veo 3 has three quality tiers. Per-video rates below are for an 8-second 720p clip; 1080p and 4K step up. Live rates are on each model page.

ModelKunavo (720p / 8s)Google listBest for
veo-3-lite$0.18+$0.45Storyboards, previews, high volume
veo-3 (Fast)$0.36+$1.20The default — cinematic + native audio
veo-3-quality$1.60+$3.20Hero shots, best fidelity

Image-to-video

Pass image_url to animate a still — useful for keeping a product or character consistent. Pass a first and last frame for controlled transitions.

image_to_video.py
# Image-to-video: animate a still by passing image_url
requests.post(
    "https://api.kunavo.com/v1/video/generations",
    headers={"Authorization": f"Bearer {API_KEY}"},
    json={
        "model": "veo-3",
        "prompt": "slow parallax, gentle wind through the grass",
        "image_url": "https://your-cdn.com/keyframe.png",
        "duration": 8,
    },
    timeout=600,
)

Async in production

Don't hold a multi-minute connection at scale. Submit a task to /v1/videos, get a task id, then poll GET /v1/videos/{id} until it completes — with idempotency keys and optional webhooks. The full loop is in the video docs.

Prompting Veo 3

  • Describe the shot, not just the subject — camera move (dolly, pan, push-in), lens feel, lighting and pacing matter most.
  • Lean on the audio — Veo 3 renders sound, so name the ambience or effects you want.
  • Set aspect ratio explicitly16:9 for landscape, 9:16 for vertical/social.
  • Keep clips short — 5–8 seconds is the sweet spot; stitch generations for longer sequences.

Kunavo vs calling Google directly

Veo 3 is also available first-party through the Gemini API and Vertex AI. That route is the right one if you need Google's own SLA and support contract. Here is the honest trade:

KunavoGoogle direct (Gemini API / Vertex)
SetupOne key, one base_urlGoogle Cloud project + billing account + IAM
Price per 8s 720p clip$0.36+ (Fast tier)$1.20 list
BillingPre-paid wallet, one balance across every modelGCP billing, per-service line items
Other models on the same keyClaude, GPT, Gemini, image and music modelsGoogle models only
CapacityShared — no dedicated quota, and a busy upstream is felt hereYour own project quota, raisable via support
Support / SLAEmail support, no contractual SLAGoogle Cloud support plans

Short version: Kunavo wins on setup time, unit price and having one key for every modality. Google direct wins when you need a quota guarantee or an enterprise agreement.

Veo 3 vs Sora and Kling

Veo 3 is the strongest generally available text-to-video model today and the live one on Kunavo. Sora and Kling are on the roadmap behind the same endpoint — see the text-to-video API guide for the model landscape, and the Sora API and Kling API guides for those families.

Picking between the video models on price rather than on this one family? The video generation API comparison prices all eight against the same 8-second 720p clip.

FAQ

What is the Veo 3 API?

Veo 3 is Google's text-to-video model, and the Veo 3 API generates cinematic clips with native synchronized audio from a text prompt or a still image. On Kunavo you call it through the OpenAI-style /v1/video/generations endpoint with one bearer token, across three tiers: Veo 3 Lite, Veo 3 Fast and Veo 3 Quality.

How much does the Veo 3 API cost?

On Kunavo, Veo 3 is billed per video, about 50–70% under Google's list: Veo 3 Lite $0.18+, Veo 3 Fast $0.36+, Veo 3 Quality $1.60+ per 8-second 720p clip. 1080p and 4K cost more. Failed generations are never billed.

Does Veo 3 generate audio?

Yes — Veo 3 produces native, synchronized audio (ambient sound, effects and dialogue) alongside the video, which is a key difference from earlier text-to-video models that were silent.

Is the Veo 3 API cheaper on Kunavo than through Google?

Yes on unit price: $0.36+ per 8-second 720p clip on the Veo 3 Fast tier versus Google's $1.20 list, and no Google Cloud project or billing account to set up. The trade-off is shared capacity rather than your own project quota, and email support rather than a contractual SLA — if you need a guaranteed quota, call Google directly.

How do I get a Veo 3 API key?

Sign up, create a key at /app/keys, set base_url=https://api.kunavo.com/v1 — no Google Cloud project. See the quickstart.