> ## Documentation Index
> Fetch the complete documentation index at: https://docs.modelhunter.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Text to Video

> Generate a video from a text prompt using Vidu.

<Note>
  Check out [Vidu pricing](/pricing#video-models) — enable `off_peak: true` for **50% off**.
</Note>

## Body Parameters

<ParamField body="model" type="string" required>
  Vidu model to use. Options:

  * `viduq3-pro` — Latest flagship, supports audio sync (1–16s), \$0.07–\$0.16/sec
  * `viduq3-turbo` — Fast Q3, supports audio sync (1–16s), \$0.04–\$0.08/sec

  Pricing varies by resolution. Enable `off_peak: true` for 50% off.
</ParamField>

<ParamField body="input" type="object" required>
  Provider-specific parameters for the generation request.

  <Expandable title="properties">
    <ParamField body="prompt" type="string" required>
      Text description of the video to generate. Max 2,000 characters.
    </ParamField>

    <ParamField body="duration" type="number">
      Video length in seconds (1–16).
    </ParamField>

    <ParamField body="aspect_ratio" type="string" default="16:9">
      Output aspect ratio. Options: `16:9`, `9:16`, `1:1`, `4:3`, `3:4`
    </ParamField>

    <ParamField body="resolution" type="string" default="720p">
      Output resolution. Options: `540p`, `720p`, `1080p`
    </ParamField>

    <ParamField body="style" type="string" default="general">
      Visual style. Options: `general`, `anime`
    </ParamField>

    <ParamField body="audio" type="boolean">
      Enable audio-video sync output. Supported on `viduq3-pro` and `viduq3-turbo`. Default `true` for Q3 models.
    </ParamField>

    <ParamField body="seed" type="number">
      Random seed for reproducibility.
    </ParamField>

    <ParamField body="off_peak" type="boolean" default={false}>
      Enable off-peak mode for 50% discount. Tasks complete within 48 hours.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="webhookUrl" type="string">
  URL to receive a webhook when the task completes.
</ParamField>

<ParamField body="metadata" type="object">
  Custom key-value metadata to attach to the task.
</ParamField>

<ResponseExample>
  ```json 202 theme={null}
  {
    "success": true,
    "data": {
      "id": "task_abc123",
      "status": "pending",
      "type": "text-to-video",
      "provider": "vidu",
      "model": "viduq3-turbo",
      "created_at": "2025-01-15T10:00:00Z",
      "estimated_seconds": 30
    }
  }
  ```

  ```json 400 theme={null}
  {
    "success": false,
    "error": {
      "code": "VALIDATION_ERROR",
      "message": "Invalid request parameters"
    }
  }
  ```

  ```json 402 theme={null}
  {
    "success": false,
    "error": {
      "code": "INSUFFICIENT_BALANCE",
      "message": "Your balance is too low for this request"
    }
  }
  ```
</ResponseExample>
