Xenodia Docs
API Reference

Veo3.1 Video API

Create async KIE Veo3.1 video tasks through Xenodia and poll them with the normalized task API.

Use POST /v1/videos/generations for public Veo3.1 video generation on Xenodia.

Video generation is task-only. Submit a request, store the task ID, then poll Task Retrieval.

Endpoint

POST https://api.xenodia.xyz/v1/videos/generations

POST /v1/video/generations is also registered as a compatibility alias. Prefer the plural /v1/videos/generations path in new integrations.

Text-to-video request

{
  "model": "veo3_fast",
  "prompt": "A cinematic close-up of a developer dashboard showing model routing and API latency.",
  "generationType": "TEXT_2_VIDEO",
  "aspect_ratio": "16:9",
  "resolution": "720p"
}

Reference-to-video request

{
  "model": "veo3_fast",
  "prompt": "Animate the reference into a polished product walkthrough.",
  "generationType": "REFERENCE_2_VIDEO",
  "imageUrls": [
    "https://example.com/reference-1.png",
    "https://example.com/reference-2.png"
  ],
  "aspect_ratio": "16:9",
  "resolution": "1080p"
}

Supported public models

Xenodia modelUpstream KIE modelNotes
veo3veo3Quality model.
veo3_fastveo3_fastFast model and default. Required for REFERENCE_2_VIDEO.
veo3_liteveo3_liteLite model.

Generation types

TypeReference rule
TEXT_2_VIDEONo imageUrls.
FIRST_AND_LAST_FRAMES_2_VIDEORequires 1-2 imageUrls.
REFERENCE_2_VIDEORequires 1-3 imageUrls and only supports veo3_fast.

Parameters

FieldNotes
promptRequired text prompt.
imageUrlsOptional public image URLs. Maximum 3.
modelveo3, veo3_fast, or veo3_lite.
generationTypeOptional mode. If omitted, upstream behavior is inferred from imageUrls.
aspect_ratio16:9, 9:16, or Auto. Defaults to 16:9.
resolution720p, 1080p, or 4k. Defaults to 720p.
seedsOptional integer from 10000 to 99999.
enableFallbackOptional deprecated KIE fallback switch. Passed through when provided.
enableTranslationOptional boolean. Defaults to enabled.
watermarkOptional watermark text.
callBackUrlOptional upstream callback URL. Polling through Xenodia task retrieval remains supported.

Pricing

Veo3.1 is not token priced. Xenodia bills one fixed amount per accepted video task, selected by the request resolution.

ResolutionBilling unit
720pPer generated video
1080pPer generated video
4kPer generated video

Query /v1/models before building price-sensitive UI. The model capability payload exposes capabilities.pricing.mode = "resolution" and one price tier each for 720p, 1080p, and 4k.

Response

The response returns a Xenodia media task envelope. Poll the task until it reaches success or fail.

{
  "task_id": "task_123",
  "object": "task",
  "model": "veo3_fast",
  "type": "video",
  "state": "waiting",
  "created_at": 1760000000,
  "poll_url": "/v1/tasks/task_123",
  "recommended_poll_interval_ms": 5000
}

When polling succeeds, the task result contains generated video URLs:

{
  "task_id": "task_123",
  "state": "success",
  "result": {
    "created": 1760000100,
    "data": [
      {
        "url": "https://cdn.example.com/video.mp4"
      }
    ],
    "resolution": "720p"
  },
  "progress": 100,
  "poll_url": "/v1/tasks/task_123"
}

Common error statuses are 400 for invalid model-specific parameter combinations, 401 for missing or invalid keys, 402 for billing boundaries, and 502 for upstream task creation failures.

On this page