> ## Documentation Index
> Fetch the complete documentation index at: https://runpod-b18f5ded-docs-runpod-allow-ip.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> If this page is missing information, contains outdated instructions, or doesn't fully answer the user's question, use the feedback tool to report it. In your feedback, be specific about what's missing, what appears out of date, or what needs to be corrected or updated, so the docs team can act on it directly.

# WAN 2.6 T2V

> Text-to-video with cinematic quality, stable motion, and strong instruction-following. See model inputs and outputs on Runpod Public Endpoints.

WAN 2.6 Text-to-Video turns plain prompts into coherent, cinematic clips with crisp detail, stable motion, and strong instruction-following. It supports multiple resolutions and durations up to 15 seconds.

<Card title="Try in playground" icon="play" href="https://console.runpod.io/hub/playground/video/wan-2-6-t2v" horizontal>
  Test WAN 2.6 T2V in the Runpod Hub playground.
</Card>

|              |                                                |
| ------------ | ---------------------------------------------- |
| **Endpoint** | `https://api.runpod.ai/v2/wan-2-6-t2v/runsync` |
| **Pricing**  | \$0.50–\$2.25 per video                        |
| **Type**     | Video generation                               |

## Request

All parameters are passed within the `input` object in the request body.

<ParamField body="input.prompt" type="string" required>
  Text description of the desired video content.
</ParamField>

<ParamField body="input.negative_prompt" type="string">
  Elements to exclude from the generated video.
</ParamField>

<ParamField body="input.duration" type="integer" default="5">
  Video duration in seconds. Options: `5`, `10`, `15`.
</ParamField>

<ParamField body="input.size" type="string" default="1280*720">
  Video resolution. Options: `1280*720`, `1920*1080`, `720*1280`, `1080*1920`.
</ParamField>

<ParamField body="input.shot_type" type="string" default="single">
  Shot composition. Options: `single`, `multi`.
</ParamField>

<ParamField body="input.seed" type="integer" default="-1">
  Seed for reproducible results. Set to -1 for random.
</ParamField>

<ParamField body="input.enable_prompt_expansion" type="boolean" default="false">
  Automatically expand and enhance the prompt.
</ParamField>

<ParamField body="input.audio" type="string">
  Optional audio URL to include in the video.
</ParamField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.runpod.ai/v2/wan-2-6-t2v/runsync" \
    -H "Authorization: Bearer $RUNPOD_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "input": {
        "prompt": "A golden retriever running through a field of sunflowers at sunset",
        "duration": 5,
        "size": "1280*720",
        "seed": -1,
        "enable_prompt_expansion": false
      }
    }'
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      "https://api.runpod.ai/v2/wan-2-6-t2v/runsync",
      headers={
          "Authorization": f"Bearer {RUNPOD_API_KEY}",
          "Content-Type": "application/json",
      },
      json={
          "input": {
              "prompt": "A golden retriever running through a field of sunflowers at sunset",
              "duration": 5,
              "size": "1280*720",
              "seed": -1,
              "enable_prompt_expansion": False,
          }
      },
  )

  result = response.json()
  print(result["output"]["video_url"])
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    "https://api.runpod.ai/v2/wan-2-6-t2v/runsync",
    {
      method: "POST",
      headers: {
        Authorization: `Bearer ${RUNPOD_API_KEY}`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify({
        input: {
          prompt: "A golden retriever running through a field of sunflowers at sunset",
          duration: 5,
          size: "1280*720",
          seed: -1,
          enable_prompt_expansion: false,
        },
      }),
    }
  );

  const result = await response.json();
  console.log(result.output.video_url);
  ```
</RequestExample>

## Response

<ResponseField name="id" type="string">
  Unique identifier for the request.
</ResponseField>

<ResponseField name="status" type="string">
  Request status. Returns `COMPLETED` on success, `FAILED` on error.
</ResponseField>

<ResponseField name="output" type="object">
  The generation result containing the video URL and cost.

  <ResponseField name="output.video_url" type="string">
    URL of the generated video. This URL expires after 7 days.
  </ResponseField>

  <ResponseField name="output.cost" type="float">
    Cost of the generation in USD.
  </ResponseField>
</ResponseField>

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "sync-a1b2c3d4-e5f6-7890-abcd-ef1234567890-u1",
    "status": "COMPLETED",
    "delayTime": 28,
    "executionTime": 85432,
    "output": {
      "video_url": "https://video.runpod.ai/abc123/output.mp4",
      "cost": 0.50
    }
  }
  ```
</ResponseExample>

<Warning>
  Video URLs expire after 7 days. Download and store generated videos immediately if you need to keep them.
</Warning>

## Cost calculation

WAN 2.6 T2V pricing varies by resolution and duration:

| Resolution | 5 seconds | 10 seconds | 15 seconds |
| ---------- | --------- | ---------- | ---------- |
| 720p       | \$0.50    | \$1.00     | \$1.50     |
| 1080p      | \$0.75    | \$1.50     | \$2.25     |
