> ## 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 Speech

> Generate expressive multi-speaker dialogue audio using Eleven v3.

## Body Parameters

<ParamField body="model" type="string" required>
  ElevenLabs model to use in this phase:

  * `elevenlabs/text-to-dialogue-v3` — billed at `$0.12` per `1000` input characters across all dialogue lines
</ParamField>

<ParamField body="input" type="object" required>
  Input parameters for the generation.

  <Expandable title="properties">
    <ParamField body="dialogue" type="array" required>
      Ordered dialogue lines. Provide at least one item and at most `5000` total input characters across all lines.

      Each dialogue item must include:

      * `text` — Dialogue line text. Inline audio tags such as `[whispering]` are supported.
      * `voice` — ElevenLabs voice ID for that line. Use `GET /api/v1/elevenlabs/voices` to list available voices.
    </ParamField>

    <ParamField body="stability" type="number" default={0.5}>
      Delivery stability hint. Range: `0` to `1`.
    </ParamField>

    <ParamField body="language_code" type="string" default="auto">
      Language hint for the dialogue. Use `auto` to let the model infer the language.
    </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_elevenlabs_tts_123",
      "status": "pending",
      "type": "text-to-speech",
      "provider": "elevenlabs",
      "model": "elevenlabs/text-to-dialogue-v3",
      "created_at": "2026-03-16T10:00:00Z",
      "estimated_seconds": 30
    }
  }
  ```

  ```json 400 theme={null}
  {
    "success": false,
    "error": {
      "code": "VALIDATION_ERROR",
      "message": "input.dialogue must contain at least one line"
    }
  }
  ```
</ResponseExample>
