All video models

Jevrouter Video API · text-to-video

Wan 2.6 Text-to-Video

alibaba/wan-2.6/text-to-video:video

Alibaba WAN 2.6 Text-to-Video turns plain prompts into coherent, cinematic clips with crisp detail, stable motion, and strong instruction-following—great for ads, explainers, and social posts. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.

Create an API key

Before you integrate

We verified live text-to-video quotes for the three parameter combinations below on October 7. We have not independently generated a Wan 2.6 video in this integration check, or benchmarked its quality, speed or audio output.

Compare all Wan 2.6 variants →

Video API pricing examples

USD per generated video, for the exact inputs below. Live quotes checked (UTC+8). These dated examples are not a price guarantee.

Wan 2.6 text-to-video · prompt expansion off · single shot
DurationSizeReserve up toEstimate
5s1280 × 720$0.50$0.50
10s1280 × 720$1.00$1.00
5s1920 × 1080$0.75$0.75

We reserve the quoted maximum before submission, settle the confirmed generation cost and release the remainder. Set jev.max_cost_usd to bound the reservation. If the current quote exceeds that limit, generation is rejected before it starts.

The estimated charge is not a receipt. Check the settled request record for what you actually paid. Other variants and input combinations require their own quote.

Options and pricing

Task: text-to-video. Catalog base price: $0.5. The exact quote depends on your inputs; the catalog price is not a fixed per-task charge.

We reserve the quoted maximum before submission, settle the actual generation cost and release the remainder. Set jev.max_cost_usd to your maximum reservation. A quote above this limit is rejected before generation.

Input fieldTypeRequiredOptions / default
seedintegerNoSee schema
sizestringNo["1280*720","720*1280","1920*1080","1080*1920"]
audiostringNoSee schema
promptstringYesSee schema
durationintegerNo[5,10,15]
shot_typestringNo["single","multi"]
negative_promptstringNoSee schema
enable_prompt_expansionbooleanNofalse
Complete input schema
{
  "type": "object",
  "required": [
    "prompt"
  ],
  "properties": {
    "seed": {
      "type": "integer",
      "description": "The random seed to use for the generation. -1 means a random seed will be used."
    },
    "size": {
      "enum": [
        "1280*720",
        "720*1280",
        "1920*1080",
        "1080*1920"
      ],
      "type": "string",
      "default": "1280*720",
      "description": "The size of the generated media in pixels (width*height)."
    },
    "audio": {
      "type": "string",
      "description": "Audio URL to guide generation (optional)."
    },
    "prompt": {
      "type": "string",
      "description": "The positive prompt for the generation."
    },
    "duration": {
      "enum": [
        5,
        10,
        15
      ],
      "type": "integer",
      "default": 5,
      "description": "The duration of the generated media in seconds.",
      "x-ui-component": "select"
    },
    "shot_type": {
      "enum": [
        "single",
        "multi"
      ],
      "type": "string",
      "default": "single",
      "description": "The type of shots to generate."
    },
    "negative_prompt": {
      "type": "string",
      "description": "The negative prompt for the generation."
    },
    "enable_prompt_expansion": {
      "type": "boolean",
      "default": false,
      "description": "If set to true, the prompt optimizer will be enabled."
    }
  },
  "x-order-properties": [
    "prompt",
    "negative_prompt",
    "audio",
    "size",
    "duration",
    "shot_type",
    "enable_prompt_expansion",
    "seed"
  ],
  "additionalProperties": false
}

Required fields and conditional rules come from the published schema. Catalog support does not mean every option has been independently tested by Jevrouter. Synchronous generation, base64 output and customer callbacks are unavailable.

1. Submit a video task

Allow this model on your Jevrouter key and load it into JEVROUTER_API_KEY. This example creates one billable five-second video, bounded by its reservation limit. Keep the idempotency key for retries of this request; change it only to create an intentionally new video.

curl https://api.jevrouter.io/v1/videos \
  -H "Authorization: Bearer $JEVROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: video-demo-001" \
  -d @- <<'JSON'
{
  "model": "alibaba/wan-2.6/text-to-video:video",
  "input": {
    "prompt": "A yellow sailboat on a quiet lake",
    "duration": 5,
    "size": "1280*720",
    "enable_prompt_expansion": false,
    "shot_type": "single"
  },
  "jev": {
    "max_cost_usd": "0.50"
  }
}
JSON

Save data.id and data.urls.get. An accepted task continues even if you disconnect.

Let Jevrouter choose

Use jev/auto as the model and set task to text-to-video. Your project must enable Auto, and both the project and key must allow Auto and the candidate models.

Auto checks the task type and all supplied input fields against each candidate. It compares live quotes for up to eight compatible candidates, shortlisted by catalog base price. It selects the lowest quote within that shortlist and your budget; this is not a quality ranking or a guarantee of the cheapest model in the entire catalog.

Use common options such as duration, resolution and aspect_ratio at the top level where available. Model-specific options belong in input and may narrow the pool. Unsupported options are rejected, never silently dropped. Without task, Auto defaults to text-to-video.

2. Check the result

curl https://api.jevrouter.io/v1/videos/REQUEST_ID \
  -H "Authorization: Bearer $JEVROUTER_API_KEY"

Replace REQUEST_ID with your task ID. Wait at least three seconds between checks. Status progresses from queued to processing, then completed or failed. Results appear in data.outputs as media URLs or structured output objects.

If the submission response is lost, repeat the original request with the same idempotency key. A new key may create another billed task.

Results and billing

View the request in your dashboard or query /v1/requests/REQUEST_ID for reservation and settlement details. Results may be ready before the bill arrives.

Result links are retained for up to seven days and may expire earlier. Save your video while it is available. Anyone with a media URL may be able to access it. Cancellation and customer webhooks are not available.

Build the complete flow