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

# Soniox

> Soniox TTS provider — real-time multilingual voices with speed control and telephony-native audio formats.

**Voice format:** `Soniox.tts-rt-v2.<VoiceId>`

Soniox is a third-party TTS provider with real-time, streamed synthesis. Every Soniox voice can speak any of the supported languages, and each voice has its own accent, for example British, Brazilian Portuguese, or Japanese: choose the voice for its sound and accent, and set `language` to the language of the text.

## Voices

Soniox offers a catalog of around 200 voices under `tts-rt-v2`. Browse the full catalog via the [Voices API](https://developers.telnyx.com/api-reference/text-to-speech-commands/list-available-voices) or the [available voices](/docs/voice/tts/available-voices) page:

```
GET https://api.telnyx.com/v2/text-to-speech/voices?provider=soniox
```

Samples of five of them:

| Voice  | Gender | Voice ID                  | Description                                                           | Sample                                                                      |
| ------ | ------ | ------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------------- |
| Adrian | Male   | `Soniox.tts-rt-v2.Adrian` | Deep, composed, professional. Neutral accent.                         | <audio controls src="/assets/audio/tts-samples/telnyx-soniox-adrian.mp3" /> |
| Daniel | Male   | `Soniox.tts-rt-v2.Daniel` | Low, steady British baritone. Suits long narration.                   | <audio controls src="/assets/audio/tts-samples/telnyx-soniox-daniel.mp3" /> |
| Emma   | Female | `Soniox.tts-rt-v2.Emma`   | Casual British delivery. Conversational.                              | <audio controls src="/assets/audio/tts-samples/telnyx-soniox-emma.mp3" />   |
| Grace  | Female | `Soniox.tts-rt-v2.Grace`  | Unhurried, assured American voice. Suits lessons and support scripts. | <audio controls src="/assets/audio/tts-samples/telnyx-soniox-grace.mp3" />  |
| Nina   | Female | `Soniox.tts-rt-v2.Nina`   | Young, upbeat British voice. Suits casual conversation.               | <audio controls src="/assets/audio/tts-samples/telnyx-soniox-nina.mp3" />   |

## Models

| Model       | Description                                               |
| ----------- | --------------------------------------------------------- |
| `tts-rt-v2` | Real-time model. **Default** and the only model accepted. |

## Language

Set `language` to the two-letter ISO 639-1 code of the text, for example `en`, `it`, or `pt`. The default is `en`.

<details>
  <summary>Supported languages (63)</summary>

  Afrikaans (`af`), Albanian (`sq`), Arabic (`ar`), Azerbaijani (`az`), Basque (`eu`), Belarusian (`be`), Bengali (`bn`), Bosnian (`bs`), Bulgarian (`bg`), Catalan (`ca`), Chinese (`zh`), Croatian (`hr`), Czech (`cs`), Danish (`da`), Dutch (`nl`), English (`en`), Estonian (`et`), Finnish (`fi`), French (`fr`), Galician (`gl`), German (`de`), Greek (`el`), Gujarati (`gu`), Hebrew (`he`), Hindi (`hi`), Hungarian (`hu`), Icelandic (`is`), Indonesian (`id`), Italian (`it`), Japanese (`ja`), Kannada (`kn`), Kazakh (`kk`), Korean (`ko`), Latvian (`lv`), Lithuanian (`lt`), Macedonian (`mk`), Malay (`ms`), Malayalam (`ml`), Marathi (`mr`), Norwegian (`no`), Persian (`fa`), Polish (`pl`), Portuguese (`pt`), Punjabi (`pa`), Romanian (`ro`), Russian (`ru`), Serbian (`sr`), Slovak (`sk`), Slovenian (`sl`), Spanish (`es`), Sundanese (`su`), Swahili (`sw`), Swedish (`sv`), Tagalog (`tl`), Tamil (`ta`), Telugu (`te`), Thai (`th`), Turkish (`tr`), Ukrainian (`uk`), Urdu (`ur`), Uzbek (`uz`), Vietnamese (`vi`), Welsh (`cy`)
</details>

SSML is not supported. Send plain text.

## Voice Settings

| Field            | Type    | Default        | Description                                                                                                      |
| ---------------- | ------- | -------------- | ---------------------------------------------------------------------------------------------------------------- |
| `language`       | string  | `en`           | Two-letter ISO 639-1 code of the text.                                                                           |
| `speed`          | float   | `1.0`          | Speaking rate, `0.7` to `1.3`.                                                                                   |
| `reduce_silence` | boolean | `false`        | Shortens the pauses between words.                                                                               |
| `audio_format`   | string  | `mp3`          | `mp3`, `wav`, `pcm_s16le`, `pcm_mulaw`, or `pcm_alaw`.                                                           |
| `sample_rate`    | integer | format default | `8000`, `16000`, `24000`, `44100`, or `48000`. See [Audio Formats & Sample Rates](#audio-formats--sample-rates). |

## Limits

A request produces up to two minutes of audio. Split longer text into several requests.

***

## WebSocket

Soniox is available on the [TTS WebSocket API](/docs/voice/tts/websocket-streaming). Select the voice with the `voice` query parameter and pick the output with `audio_format` and `sample_rate`. Send `language`, `speed`, and `reduce_silence` in `voice_settings` on the init frame.

```
wss://api.telnyx.com/v2/text-to-speech/speech?voice=Soniox.tts-rt-v2.Emma&audio_format=mulaw
```

```json theme={null}
{
  "text": " ",
  "voice_settings": {
    "language": "it",
    "speed": 1.0,
    "reduce_silence": false
  }
}
```

See the [Soniox WebSocket provider page](/docs/voice/tts/websocket-streaming/providers/soniox) for the accepted formats and sample rates.

## REST API

### Fields

| Field            | Type    | Default         | Description                                            |
| ---------------- | ------- | --------------- | ------------------------------------------------------ |
| `language`       | string  | `en`            | Two-letter ISO 639-1 code of the text.                 |
| `speed`          | float   | `1.0`           | Speaking rate, `0.7` to `1.3`.                         |
| `reduce_silence` | boolean | `false`         | Shortens the pauses between words.                     |
| `audio_format`   | string  | `mp3`           | `mp3`, `wav`, `pcm_s16le`, `pcm_mulaw`, or `pcm_alaw`. |
| `sample_rate`    | integer | format default  | `8000`, `16000`, `24000`, `44100`, or `48000`.         |
| `output_type`    | string  | `binary_output` | `binary_output`, `base64_output`, or `audio_id`.       |

```json theme={null}
{
  "text": "Buongiorno, come posso aiutarla?",
  "voice": "Soniox.tts-rt-v2.Emma",
  "voice_settings": {
    "language": "it",
    "speed": 1.0,
    "audio_format": "mp3",
    "sample_rate": 24000
  }
}
```

### Response

Default (`binary_output`): chunked audio bytes.

With `output_type: "base64_output"`: JSON with base64-encoded audio.

With `output_type: "audio_id"`: JSON with an `audio_url` for deferred retrieval.

## Audio Formats & Sample Rates

| Format                  | Accepted Sample Rates (Hz)       | Default |
| ----------------------- | -------------------------------- | ------- |
| `mp3`                   | 16000, 24000, 44100, 48000       | 24000   |
| `wav`, `pcm_s16le`      | 8000, 16000, 24000, 44100, 48000 | 24000   |
| `pcm_mulaw`, `pcm_alaw` | 8000                             | 8000    |

## In-Call Playback

Soniox voices work with the Call Control `speak`, `gather_using_speak`, and conference `speak` commands, and with TeXML `<Say>`.

* Send plain text: `payload_type` must be `text`.
* Set `language` to the two-letter ISO 639-1 code of the text, for example `it`.
* `voice_settings` accepts `speed` and `reduce_silence`.

```json theme={null}
{
  "payload": "Buongiorno, come posso aiutarla?",
  "voice": "Soniox.tts-rt-v2.Emma",
  "language": "it",
  "voice_settings": {
    "speed": 1.0
  }
}
```

```xml theme={null}
<Response>
  <Say voice="Soniox.tts-rt-v2.Emma" language="it">Buongiorno, come posso aiutarla?</Say>
</Response>
```

See [In-Call Playback](/docs/voice/tts/in-call-playback) for details.

## AI Assistants

Choose a Soniox voice such as `Soniox.tts-rt-v2.Emma` in the assistant's voice settings. `voice_speed` maps to the Soniox `speed` setting and accepts `0.7` to `1.3`. Soniox voices speak every supported language, so one voice can serve an assistant that changes language during a call.

<CardGroup cols={2}>
  <Card title="AI Assistants" icon="robot" href="/docs/inference/ai-assistants/no-code-voice-assistant">
    Build voice AI assistants using Soniox voices.
  </Card>

  <Card title="TTS REST API" icon="code" href="/docs/voice/tts/rest-api">
    Generate speech directly with REST TTS requests.
  </Card>
</CardGroup>
