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

# Synthèse vocale (TTS) sur Baseten

> Diffusez la synthèse vocale Gradium en streaming depuis un déploiement dédié hébergé sur Baseten

export const VoiceTable = ({voices = [], lang = 'en'}) => {
  const labels = {
    en: {
      voice: 'Voice',
      country: 'Country',
      gender: 'Gender',
      desc: 'Description',
      copy: 'Copy voice ID',
      open: 'Open this voice in the studio',
      openAria: id => 'Open voice ' + id + ' in the Gradium studio'
    },
    fr: {
      voice: 'Voix',
      country: 'Pays',
      gender: 'Genre',
      desc: 'Description',
      copy: "Copier l'ID de la voix",
      open: 'Ouvrir cette voix dans le studio',
      openAria: id => 'Ouvrir la voix ' + id + ' dans le studio Gradium'
    }
  };
  const t = labels[lang] || labels.en;
  const [copied, setCopied] = React.useState(null);
  const STUDIO_URL = 'https://studio.gradium.ai/?voice=';
  const fallbackCopy = id => {
    const ta = document.createElement('textarea');
    ta.value = id;
    ta.style.position = 'fixed';
    ta.style.opacity = '0';
    document.body.appendChild(ta);
    ta.select();
    try {
      document.execCommand('copy');
    } catch (e) {
      return;
    } finally {
      document.body.removeChild(ta);
    }
  };
  const copy = id => {
    if (navigator.clipboard && navigator.clipboard.writeText) {
      navigator.clipboard.writeText(id).then(null, () => fallbackCopy(id));
    } else {
      fallbackCopy(id);
    }
    setCopied(id);
    setTimeout(() => setCopied(c => c === id ? null : c), 1200);
  };
  const CopyIcon = () => <svg className="voice-id-icon" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
      <rect x="9" y="9" width="13" height="13" rx="2" ry="2" />
      <path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" />
    </svg>;
  const CheckIcon = () => <svg className="voice-id-icon" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2.5" strokeLinecap="round" strokeLinejoin="round">
      <polyline points="20 6 9 17 4 12" />
    </svg>;
  const PlayIcon = () => <svg className="voice-id-icon" width="12" height="12" viewBox="0 0 12 12" fill="none" aria-hidden="true">
      <path d="M3.5 2.25L9.5 6L3.5 9.75V2.25Z" fill="currentColor" />
    </svg>;
  return <div className="voice-table-wrapper">
      <table className="voice-table">
        <thead>
          <tr>
            <th>{t.voice}</th>
            <th style={{
    textAlign: 'center'
  }}>{t.country}</th>
            <th style={{
    textAlign: 'center'
  }}>{t.gender}</th>
            <th>{t.desc}</th>
          </tr>
        </thead>
        <tbody>
          {voices.map((v, i) => <tr key={i}>
              <td>
                <div className="voice-name">{v.name}</div>
                <div className="voice-id-row">
                  <button type="button" className={"voice-id-copy" + (copied === v.id ? " is-copied" : "")} onClick={() => copy(v.id)} title={t.copy} aria-label={t.copy + " " + v.id}>
                    <code>{v.id}</code>
                    {copied === v.id ? <CheckIcon /> : <CopyIcon />}
                  </button>
                  <a className="voice-id-play" href={STUDIO_URL + encodeURIComponent(v.id)} target="_blank" rel="noopener noreferrer" title={t.open} aria-label={t.openAria(v.id)}>
                    <PlayIcon />
                  </a>
                </div>
              </td>
              <td style={{
    textAlign: 'center'
  }}>{v.country}</td>
              <td style={{
    textAlign: 'center'
  }}>{v.gender}</td>
              <td className="voice-desc">{v.desc}</td>
            </tr>)}
        </tbody>
      </table>
    </div>;
};

Votre déploiement dédié de synthèse vocale Gradium s'exécute sur Baseten et
utilise le même protocole WebSocket de streaming que l'API Gradium hébergée.
Seuls les paramètres de connexion changent : l'URL et l'en-tête
d'authentification.

## Différences avec l'API hébergée

| | API Gradium hébergée | Déploiement Baseten |
| - | - | - |
| URL WebSocket | `wss://api.gradium.ai/api/speech/tts` | L'URL fournie par Baseten, par exemple `wss-host.example.com/websocket` : le WebSocket TTS est servi directement à cette URL |
| Authentification | `x-api-key: <Gradium API key>` | `Authorization: Api-Key <Baseten API key>` |
| Catalogue de voix | Toute la bibliothèque de voix + vos voix personnalisées | Les voix intégrées à l'image du déploiement (voir [Voix disponibles](#voix-disponibles)) |
| Dictionnaires de prononciation (`pronunciation_id`) | Disponibles | Non disponibles : utilisez plutôt les [`rewrites`](#paramètres-de-configuration) en ligne |

## Prérequis

* L'URL WebSocket de votre déploiement (fournie par Baseten / Gradium),
  de la forme `wss-host.example.com/websocket`.
* Une clé API Baseten ayant accès au déploiement.
* Python 3.10+ avec le SDK Gradium, version **0.6.1 ou ultérieure**
  (`pip install "gradium>=0.6.1"`). Les versions antérieures ne permettent pas
  de modifier la route TTS et ne peuvent pas atteindre un déploiement auto-hébergé.

## Démarrage rapide

Le dépôt du SDK fournit un client prêt à l'emploi pour les déploiements
auto-hébergés :
[`examples/self_hosted/example_tts.py`](https://github.com/gradium-ai/gradium-py/blob/main/examples/self_hosted/example_tts.py).
Il se connecte au déploiement, synthétise le texte fourni et écrit
l'audio dans un fichier :

```bash theme={null}
uv run examples/self_hosted/example_tts.py \
  --base-url wss-host.example.com/websocket \
  --api-key "<your Baseten API key>" \
  --text "Hello from Baseten!" \
  --voice NbpkqMVS3CJeq2j8 \
  --output-format wav \
  --output out.wav
```

<Note>
  `--api-key` attend votre clé API **Baseten** : le client d'exemple l'envoie
  dans l'en-tête `Authorization: Api-Key ...` de Baseten, et non dans l'en-tête
  `x-api-key` de l'API hébergée.
</Note>

### Client minimal

L'exemple se résume à deux ajustements du `GradiumClient` standard,
tous deux à reprendre dans votre propre code :

1. **`tts_route=""`** : sur l'API hébergée, le client ajoute
   `speech/tts` à l'URL de base ; sur Baseten, le WebSocket TTS est servi
   directement à l'URL du déploiement.
2. **Remplacement de l'en-tête d'authentification** : Baseten s'authentifie avec
   `Authorization: Api-Key <key>`.

```python theme={null}
import asyncio

from gradium import GradiumClient
from gradium.client import SOURCE


class SelfHostedTTSClient(GradiumClient):
    """GradiumClient for a self-hosted / Baseten deployment."""

    @property
    def headers(self) -> dict:
        return {
            "Authorization": f"Api-Key {self._api_key}",
            "x-api-source": SOURCE,
        }


async def main():
    client = SelfHostedTTSClient(
        base_url="wss-host.example.com/websocket",
        api_key="<your Baseten API key>",
        tts_route="",  # the TTS WebSocket is served at the base URL directly
    )
    setup = {"voice_id": "NbpkqMVS3CJeq2j8", "output_format": "wav"}

    stream = await client.tts_stream(setup, "Hello from Baseten!")
    audio = b"".join([chunk async for chunk in stream.iter_bytes()])

    with open("out.wav", "wb") as f:
        f.write(audio)


asyncio.run(main())
```

Les trois interfaces du SDK fonctionnent avec le déploiement exactement comme décrit
dans le [guide de synthèse vocale](/fr/guides/text-to-speech) : `tts_realtime`
pour l'envoi et la réception simultanés, `tts_stream` pour un itérateur asynchrone
de fragments audio, et `tts` pour une synthèse ponctuelle avec mise en mémoire tampon.

## Paramètres de configuration

* **`voice_id`** : l'identifiant de la voix à utiliser, parmi les
  [voix disponibles](#voix-disponibles) ci-dessous. Omettez-le pour utiliser la
  voix par défaut du déploiement.
* **`output_format`** : `"wav"` ou `"pcm"`. La sortie PCM est en 48kHz,
  entiers signés 16 bits, mono.
* **`json_config`** : réglages avancés de la voix, comme la température et
  la vitesse. Voir [Réglages de la voix](/fr/guides/voice-settings).
* **`rewrites`** : règles de réécriture du texte en ligne, sous forme de liste
  d'entrées `[original, rewrite, case_sensitive]`. Voir
  [Réécriture du texte](/fr/guides/text-rewriting).

## WebSocket direct

Depuis un environnement autre que Python, communiquez directement avec le WebSocket. Le flux
de messages est le même que dans la
[référence du WebSocket TTS](/fr/api-reference/endpoint/tts-websocket) :
envoyez `setup`, attendez `ready`, envoyez `text` puis `end_of_stream`,
et recevez les messages `audio` / `text` jusqu'à `end_of_stream`.

```bash theme={null}
wscat -c "wss://<your-deployment-host>/websocket" \
  -H "Authorization: Api-Key $BASETEN_API_KEY"
# After connection, type:
# {"type":"setup","voice_id":"NbpkqMVS3CJeq2j8","output_format":"wav"}
# {"type":"text","text":"Hello, world!"}
# {"type":"end_of_stream"}
```

Seule différence avec la référence de l'API hébergée : `pronunciation_id`
n'est pas disponible. Utilisez plutôt les [`rewrites`](#paramètres-de-configuration) en ligne.

## Dépannage

| Symptôme | Cause | Solution |
| - | - | - |
| Erreur : `voice_id '<id>' not found` | L'identifiant n'est pas intégré à l'image du déploiement | Vérifiez l'identifiant dans la liste des [voix disponibles](#voix-disponibles) |
| Connexion refusée (401/403) | Mauvais en-tête d'authentification | Envoyez `Authorization: Api-Key <Baseten API key>`, et non `x-api-key` |
| Le WebSocket se ferme juste après la connexion | Le réplica du déploiement est encore en cours de démarrage (\~3 min après un démarrage à froid ou une montée en charge) | Réessayez avec un backoff |

## Voix disponibles

L'image du déploiement contient **346 voix**, plus une voix par défaut intégrée
(utilisée lorsque `voice_id` est omis). Les 66
[voix phares](/fr/guides/voices/flagship-voices) sont toutes incluses : les
tableaux ci-dessous les listent par langue, suivis de la liste complète des identifiants. Passez
l'identifiant dans le champ `voice_id` du message de configuration ; cliquez sur un identifiant pour le copier. Vous pouvez
aussi écouter et tester les voix dans le
[Gradium Studio](https://studio.gradium.ai/) officiel.

<Tabs>
  <Tab title="Anglais (18)">
    <VoiceTable
      lang="fr"
      voices={[
  {
    "name": "Zoey",
    "id": "NbpkqMVS3CJeq2j8",
    "country": "États-Unis (US)",
    "gender": "Féminin",
    "desc": "Voix espiègle et enjouée, à l'énergie Gen Z, avec un accent américain standard. Parfaite pour des conversations engageantes !"
  },
  {
    "name": "Skyler",
    "id": "cLONiZ4hQ8VpQ4Sz",
    "country": "États-Unis (US)",
    "gender": "Féminin",
    "desc": "Voix légère, ludique et juvénile, avec un accent américain standard."
  },
  {
    "name": "Riley",
    "id": "7aEKz4P1ogZ0UsRP",
    "country": "États-Unis (US)",
    "gender": "Féminin",
    "desc": "Voix sportive, lumineuse et accessible, avec un accent américain standard. C'est parti !"
  },
  {
    "name": "Quinn",
    "id": "vtG8ddh4IN32Otad",
    "country": "États-Unis (US)",
    "gender": "Féminin",
    "desc": "Voix vive, cool et contemporaine, avec un accent américain standard. Idéale pour les cas d'usage conversationnels."
  },
  {
    "name": "Harper",
    "id": "4SZHfMpw-p46Ywgs",
    "country": "États-Unis (US)",
    "gender": "Féminin",
    "desc": "Voix moderne, assurée et amicale, avec un accent américain standard."
  },
  {
    "name": "Sterling",
    "id": "6MFfc37kq0sBjBjy",
    "country": "États-Unis (US)",
    "gender": "Masculin",
    "desc": "Une voix adulte américaine chaleureuse et énergique, au sens théâtral, qui fait de chaque phrase le début de quelque chose de grand."
  },
  {
    "name": "Russell",
    "id": "_6Aslh2DxfmnRLmP",
    "country": "États-Unis (US)",
    "gender": "Masculin",
    "desc": "Une voix adulte américaine pleine d'énergie, qui pousse et encourage avec l'intensité de quelqu'un qui croit sincèrement en vous."
  },
  {
    "name": "Marcus",
    "id": "r2sIQdqqoqgRJuXw",
    "country": "États-Unis (US)",
    "gender": "Masculin",
    "desc": "Une voix adulte américaine résonnante et pleine d'énergie, qui parle avec la conviction inébranlable de quelqu'un qui vous a déjà convaincu."
  },
  {
    "name": "Garrett",
    "id": "POBHtemksfWQbng0",
    "country": "États-Unis (US)",
    "gender": "Masculin",
    "desc": "Une voix adulte américaine grave et veloutée, avec l'assurance naturelle et le magnétisme tranquille de quelqu'un qui n'a jamais besoin d'élever la voix."
  },
  {
    "name": "Damon",
    "id": "KUpE0JVhjiIzp1Fk",
    "country": "États-Unis (US)",
    "gender": "Masculin",
    "desc": "Une voix adulte américaine lumineuse, qui s'illumine avec l'enthousiasme sans filtre de quelqu'un qui explique sa passion favorite."
  },
  {
    "name": "Tilly",
    "id": "4rdlkbxRv4m3UQTW",
    "country": "Royaume-Uni (GB)",
    "gender": "Féminin",
    "desc": "Une voix adulte en anglais britannique, lumineuse et accueillante, avec la chaleur d'un excellent réceptionniste. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Pippa",
    "id": "uem82D50GRv2Dwma",
    "country": "Royaume-Uni (GB)",
    "gender": "Féminin",
    "desc": "Une voix adulte en anglais britannique, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Maeve",
    "id": "6PWnV0Nq4wu7RVBT",
    "country": "Royaume-Uni (GB)",
    "gender": "Féminin",
    "desc": "Une voix adulte en anglais britannique, pétillante et attentive, qui va droit au but avec le sourire. Idéale pour un support client rapide et efficace et des assistants vocaux serviables."
  },
  {
    "name": "Imogen",
    "id": "gDT1nz7Ie36ZhL-C",
    "country": "Royaume-Uni (GB)",
    "gender": "Féminin",
    "desc": "Une voix adulte en anglais britannique, pétillante et amicale, qui met immédiatement les appelants à l'aise. Idéale pour des assistants d'onboarding et des échanges de conciergerie chaleureux."
  },
  {
    "name": "Toby",
    "id": "dME3IWyZBvmh1n1q",
    "country": "Royaume-Uni (GB)",
    "gender": "Masculin",
    "desc": "Une voix adulte en anglais britannique, pétillante et attentive, qui va droit au but avec le sourire. Idéale pour un support client rapide et efficace et des assistants vocaux serviables."
  },
  {
    "name": "Reuben",
    "id": "CF0NgaMwHMMrHZn0",
    "country": "Royaume-Uni (GB)",
    "gender": "Masculin",
    "desc": "Une voix adulte en anglais britannique, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Freddie",
    "id": "s_k3kLBbgeK9-xUg",
    "country": "Royaume-Uni (GB)",
    "gender": "Masculin",
    "desc": "Une voix adulte en anglais britannique, décontractée et amicale, qui met immédiatement les appelants à l'aise. Idéale pour des assistants d'onboarding et des échanges de conciergerie chaleureux."
  },
  {
    "name": "Archie",
    "id": "kfzLbcdE_yXgLeUI",
    "country": "Royaume-Uni (GB)",
    "gender": "Masculin",
    "desc": "Une voix adulte en anglais britannique, lumineuse et accueillante, avec la chaleur d'un excellent réceptionniste. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  }
]}
    />
  </Tab>

  <Tab title="Français (13)">
    <VoiceTable
      lang="fr"
      voices={[
  {
    "name": "Romane",
    "id": "jBULVCDhf05tOJN5",
    "country": "France (FR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en français, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Margaux",
    "id": "J8c9KBRYAGGYwjns",
    "country": "France (FR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en français, lumineuse et accueillante, avec la chaleur d'un excellent réceptionniste. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Garance",
    "id": "3hQIj8JOo7bU31Jw",
    "country": "France (FR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en français, vibrante et engageante, qui rend chaque explication personnelle. Conçue pour les guides produit et les assistants d'accompagnement pas à pas."
  },
  {
    "name": "Capucine",
    "id": "P4GqVY98hjQSvkiu",
    "country": "France (FR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en français, pétillante et amicale, qui met immédiatement les appelants à l'aise. Idéale pour des assistants d'onboarding et des échanges de conciergerie chaleureux."
  },
  {
    "name": "Apolline",
    "id": "6oIkS98REoVZ1dEw",
    "country": "France (FR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en français, pétillante et attentive, qui va droit au but avec le sourire. Idéale pour un support client rapide et efficace et des assistants vocaux serviables."
  },
  {
    "name": "Marius",
    "id": "biuhvu17TxVKOcyy",
    "country": "France (FR)",
    "gender": "Masculin",
    "desc": "Une voix adulte en français, énergique et posée, avec l'assurance d'un vendeur né. Idéale pour les argumentaires commerciaux et les contenus à forte conviction."
  },
  {
    "name": "Jules",
    "id": "YKeBw3OV1RgpdhLh",
    "country": "France (FR)",
    "gender": "Masculin",
    "desc": "Une voix adulte en français, vive et expressive, qui s'anime sur les sujets qui la passionnent. Idéale pour des recommandations animées et des dialogues pleins d'énergie."
  },
  {
    "name": "Gaspard",
    "id": "iEu63s1rhn_kegTr",
    "country": "France (FR)",
    "gender": "Masculin",
    "desc": "Une voix adulte en français, chaleureuse et posée, avec l'assurance tranquille d'un ami de confiance. Idéale pour des assistants amicaux et des dialogues d'égal à égal."
  },
  {
    "name": "Damien",
    "id": "25AzBFyp6svYnJsj",
    "country": "France (FR)",
    "gender": "Masculin",
    "desc": "Une voix adulte en français, intense et engageante, qui pousse avec une réelle conviction. Conçue pour le coaching et les contenus de motivation."
  },
  {
    "name": "Augustin",
    "id": "Tek4tJXiX6_yvXq7",
    "country": "France (FR)",
    "gender": "Masculin",
    "desc": "Une voix adulte en français, curieuse et animée, qui s'illumine en partageant un fait inattendu. Parfaite pour des explications geek et des dialogues autour d'anecdotes."
  },
  {
    "name": "Roxane",
    "id": "mmLFHtCjt_6jw0vT",
    "country": "Canada (CA)",
    "gender": "Féminin",
    "desc": "Une voix adulte en français québécois, calme et attentive, qui va droit au but avec le sourire. Idéale pour un support client efficace et des assistants vocaux serviables."
  },
  {
    "name": "Frédérique",
    "id": "sX0PcxM_Ie2ctBGH",
    "country": "Canada (CA)",
    "gender": "Féminin",
    "desc": "Une voix adulte en français québécois, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Maude",
    "id": "sBLwTd5womVX8JOw",
    "country": "Canada (CA)",
    "gender": "Féminin",
    "desc": "Une voix adulte en français québécois (FR-CA), pétillante et rassurante, qui met immédiatement les appelants à l'aise. Idéale pour des assistants d'onboarding et un accompagnement pas à pas."
  }
]}
    />
  </Tab>

  <Tab title="Allemand (13)">
    <VoiceTable
      lang="fr"
      voices={[
  {
    "name": "Svenja",
    "id": "SqFfhmAgR2XdN83R",
    "country": "Allemagne (DE)",
    "gender": "Féminin",
    "desc": "Une voix adulte en allemand, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Ronja",
    "id": "6XwZeudK_gn719g5",
    "country": "Allemagne (DE)",
    "gender": "Féminin",
    "desc": "Une voix adulte en allemand, vibrante et engageante, qui rend chaque explication personnelle. Conçue pour les guides produit et les assistants d'accompagnement pas à pas."
  },
  {
    "name": "Mila",
    "id": "nMNZ0sOWZVbKyjaI",
    "country": "Allemagne (DE)",
    "gender": "Féminin",
    "desc": "Une voix adulte en allemand, lumineuse et accueillante, avec la chaleur d'un excellent réceptionniste. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Marlene",
    "id": "yHyu3PRfSmmiL2a4",
    "country": "Allemagne (DE)",
    "gender": "Féminin",
    "desc": "Une voix adulte en allemand, pétillante et amicale, qui met immédiatement les appelants à l'aise. Idéale pour des assistants d'onboarding et des échanges de conciergerie chaleureux."
  },
  {
    "name": "Annika",
    "id": "p6Uutkyi3j2iNAUu",
    "country": "Allemagne (DE)",
    "gender": "Féminin",
    "desc": "Une voix adulte en allemand, pétillante et attentive, qui va droit au but avec le sourire. Idéale pour un support client rapide et efficace et des assistants vocaux serviables."
  },
  {
    "name": "Mats",
    "id": "Kf5m22mROozoMWj3",
    "country": "Allemagne (DE)",
    "gender": "Masculin",
    "desc": "Une voix adulte en allemand, pétillante et attentive, qui va droit au but avec le sourire. Idéale pour un support client rapide et efficace et des assistants vocaux serviables."
  },
  {
    "name": "Leon",
    "id": "20zdyYrQPzKlCwkk",
    "country": "Allemagne (DE)",
    "gender": "Masculin",
    "desc": "Une voix adulte en allemand, lumineuse et accueillante, avec la chaleur d'un excellent réceptionniste. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Henrik",
    "id": "yyS1KYWs6mXoEw7D",
    "country": "Allemagne (DE)",
    "gender": "Masculin",
    "desc": "Une voix adulte en allemand, décontractée et amicale, qui met immédiatement les appelants à l'aise. Idéale pour des assistants d'onboarding et des échanges de conciergerie chaleureux."
  },
  {
    "name": "Erik",
    "id": "lbpBQTVCOcOHJ5zS",
    "country": "Allemagne (DE)",
    "gender": "Masculin",
    "desc": "Une voix adulte en allemand, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Anton",
    "id": "3ZKKapPOvuWFcw9f",
    "country": "Allemagne (DE)",
    "gender": "Masculin",
    "desc": "Une voix adulte en allemand, vibrante et engageante, qui rend chaque explication personnelle. Conçue pour les guides produit et les assistants d'accompagnement pas à pas."
  },
  {
    "name": "Sophie",
    "id": "TXbEUrHXNFlYBBKb",
    "country": "Autriche (AT)",
    "gender": "Féminin",
    "desc": "Une voix adulte en allemand autrichien, chaleureuse et décontractée, au charme local naturel. Parfaite pour des assistants amicaux et un support client accueillant."
  },
  {
    "name": "Stefan",
    "id": "Xtp0vUDvtAfi1xkH",
    "country": "Autriche (AT)",
    "gender": "Masculin",
    "desc": "Une voix adulte en allemand autrichien, posée et accueillante, avec la fiabilité sereine d'un conseiller de confiance. Idéale pour un support professionnel et des échanges d'onboarding."
  },
  {
    "name": "Maxi",
    "id": "BPHlOW9jPs79KtW4",
    "country": "Autriche (AT)",
    "gender": "Masculin",
    "desc": "Une voix adulte en allemand autrichien, espiègle et expressive, qui apporte chaleur et humour à chaque échange. Idéale pour des assistants engageants et l'IA conversationnelle."
  }
]}
    />
  </Tab>

  <Tab title="Espagnol (14)">
    <VoiceTable
      lang="fr"
      voices={[
  {
    "name": "Vega",
    "id": "m3lIeODdTQ3bOh4z",
    "country": "Espagne (ES)",
    "gender": "Féminin",
    "desc": "Une voix adulte en espagnol péninsulaire, pétillante et attentive, qui va droit au but avec le sourire. Idéale pour un support client rapide et efficace et des assistants vocaux serviables."
  },
  {
    "name": "Paula",
    "id": "hP6WA-7ybEGApJ68",
    "country": "Espagne (ES)",
    "gender": "Féminin",
    "desc": "Une voix adulte en espagnol péninsulaire, pétillante et amicale, qui met immédiatement les appelants à l'aise. Idéale pour des assistants d'onboarding et des échanges de conciergerie chaleureux."
  },
  {
    "name": "Lucia",
    "id": "A3UKMLXQUzknYpQa",
    "country": "Espagne (ES)",
    "gender": "Féminin",
    "desc": "Une voix adulte en espagnol péninsulaire, lumineuse et accueillante, avec la chaleur d'un excellent réceptionniste. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Aitana",
    "id": "9UogMEa01dHR9Xbc",
    "country": "Espagne (ES)",
    "gender": "Féminin",
    "desc": "Une voix adulte en espagnol péninsulaire, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Mateo",
    "id": "sVLgzKMqaptUdaY8",
    "country": "Espagne (ES)",
    "gender": "Masculin",
    "desc": "Une voix adulte en espagnol péninsulaire, pétillante et attentive, qui va droit au but avec le sourire. Idéale pour un support client rapide et efficace et des assistants vocaux serviables."
  },
  {
    "name": "Marcos",
    "id": "jvPx8j8zLGQ3utZz",
    "country": "Espagne (ES)",
    "gender": "Masculin",
    "desc": "Une voix adulte en espagnol péninsulaire, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Iker",
    "id": "t-_TS1e-0GzDAX02",
    "country": "Espagne (ES)",
    "gender": "Masculin",
    "desc": "Une voix adulte en espagnol péninsulaire, décontractée et amicale, qui met immédiatement les appelants à l'aise. Idéale pour des assistants d'onboarding et des échanges de conciergerie chaleureux."
  },
  {
    "name": "Alvaro",
    "id": "ZeL1KGaZ4BZ2w0Np",
    "country": "Espagne (ES)",
    "gender": "Masculin",
    "desc": "Une voix adulte en espagnol péninsulaire, lumineuse et accueillante, avec la chaleur d'un excellent réceptionniste. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Camila",
    "id": "4NLtOv1m0azv9rGL",
    "country": "Mexique (MX)",
    "gender": "Féminin",
    "desc": "Une voix adulte en espagnol mexicain, chaleureuse et accueillante, avec l'hospitalité naturelle d'un excellent hôte. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Ximena",
    "id": "VDwnGxAo68C8U8vC",
    "country": "Mexique (MX)",
    "gender": "Féminin",
    "desc": "Une voix adulte en espagnol mexicain, espiègle et expressive, qui transforme les moments du quotidien en histoires. Idéale pour des assistants engageants et une IA conversationnelle chaleureuse."
  },
  {
    "name": "Regina",
    "id": "s58clrg2fe0MO7Y-",
    "country": "Mexique (MX)",
    "gender": "Féminin",
    "desc": "Une voix adulte en espagnol mexicain, assurée et enjouée, avec l'aplomb naturel d'un vendeur né. Idéale pour des assistants proactifs et des échanges clients orientés vente."
  },
  {
    "name": "Santiago",
    "id": "yHToO6ssaQHz5kIP",
    "country": "Mexique (MX)",
    "gender": "Masculin",
    "desc": "Une voix adulte en espagnol mexicain, chaleureuse et accueillante, au professionnalisme calme et rassurant. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Diego",
    "id": "n7vovxcDTVG4gClo",
    "country": "Mexique (MX)",
    "gender": "Masculin",
    "desc": "Une voix adulte en espagnol mexicain, vive et expressive, avec un talent naturel de conteur. Idéale pour des assistants animés et une IA conversationnelle engageante."
  },
  {
    "name": "Emiliano",
    "id": "tWll9uiMafMXfOGw",
    "country": "Mexique (MX)",
    "gender": "Masculin",
    "desc": "Une voix adulte en espagnol mexicain, assurée et enjouée, avec une touche d'humour. Conçue pour des guides produit sûrs d'eux et un customer success proactif."
  }
]}
    />
  </Tab>

  <Tab title="Portugais (8)">
    <VoiceTable
      lang="fr"
      voices={[
  {
    "name": "Yara",
    "id": "YnWEONxJy7ptGhfb",
    "country": "Brésil (BR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en portugais brésilien, vibrante et engageante, qui rend chaque explication personnelle. Conçue pour les guides produit et les assistants d'accompagnement pas à pas."
  },
  {
    "name": "Manuela",
    "id": "fd7e1fLVAAJzzs8P",
    "country": "Brésil (BR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en portugais brésilien, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Larissa",
    "id": "DUFZMTh4n-53Ly9O",
    "country": "Brésil (BR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en portugais brésilien, pétillante et amicale, qui met immédiatement les appelants à l'aise. Idéale pour des assistants d'onboarding et des échanges de conciergerie chaleureux."
  },
  {
    "name": "Helena",
    "id": "ycGyxoEy9wLaX11R",
    "country": "Brésil (BR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en portugais brésilien, pétillante et attentive, qui va droit au but avec le sourire. Idéale pour un support client rapide et efficace et des assistants vocaux serviables."
  },
  {
    "name": "Bianca",
    "id": "uCqxlQCKi8sPHwG2",
    "country": "Brésil (BR)",
    "gender": "Féminin",
    "desc": "Une voix adulte en portugais brésilien, lumineuse et accueillante, avec la chaleur d'un excellent réceptionniste. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Mateus",
    "id": "AByHrwi1S-yLzW-s",
    "country": "Brésil (BR)",
    "gender": "Masculin",
    "desc": "Une voix adulte en portugais brésilien, lumineuse et accueillante, avec la chaleur d'un excellent réceptionniste. Parfaite pour accueillir les clients et assurer un support de premier niveau chaleureux."
  },
  {
    "name": "Davi",
    "id": "NuUr_x5V90hSHzCJ",
    "country": "Brésil (BR)",
    "gender": "Masculin",
    "desc": "Une voix adulte en portugais brésilien, assurée et enjouée, à l'énergie communicative. Parfaite pour des assistants proactifs et des appels de customer success motivants."
  },
  {
    "name": "Caio",
    "id": "Qit9Oc9fEO9yXsVw",
    "country": "Brésil (BR)",
    "gender": "Masculin",
    "desc": "Une voix adulte en portugais brésilien, pétillante et attentive, qui va droit au but avec le sourire. Idéale pour un support client rapide et efficace et des assistants vocaux serviables."
  }
]}
    />
  </Tab>
</Tabs>

<Accordion title="Liste complète des identifiants de voix (346)">
  Chaque identifiant ci-dessous est intégré à l'image du déploiement et utilisable dans le
  champ `voice_id` du message de configuration, y compris les voix phares listées ci-dessus.

  ```text theme={null}
  wGhY_zZCoQ5gB0ce
  YHOBjtajNBEHUI_K
  5UkFVe2B8OqLo-5R
  KRo-uwfno-KcEgBM
  BbLb4TxdlrldgpHI
  Ow5IKhni2ED3Xxhl
  ixaCTlZ5Xqf2XzQH
  nlYB3lceu4gwj9Eu
  KWJiFWu2O9nMPYcR
  TJv-kucMsUo24VQe
  74asmf7CXzjfopIX
  4rdlkbxRv4m3UQTW
  4u2uvwrHdTA2gRnZ
  P0GYBrxlhTy5CC87
  6PWnV0Nq4wu7RVBT
  dEcrv3B8XGHoox2_
  t-_TS1e-0GzDAX02
  uem82D50GRv2Dwma
  dME3IWyZBvmh1n1q
  gDT1nz7Ie36ZhL-C
  sVLgzKMqaptUdaY8
  Eu9iL_CYe8N-Gkx_
  7aEKz4P1ogZ0UsRP
  fJDF4lEH590XplFv
  kfzLbcdE_yXgLeUI
  FchWfJlI2jr27eUg
  7HhpTMy55D4HkXen
  MhsYZQ4bIfcDpokF
  MGiwMOFxVe4a2aSU
  9VXl5t2IMagUQAzg
  91EdXxJDbWICDBgz
  NuUr_x5V90hSHzCJ
  jvPx8j8zLGQ3utZz
  p1fSBpcmVWngBqVd
  vMYQUSzm6GRkJX6d
  B36pbz5_UoWn4BDl
  MZWrEHL2Fe_uc2Rv
  pYcGZz9VOo4n2ynh
  m3lIeODdTQ3bOh4z
  ZeL1KGaZ4BZ2w0Np
  LAmPTQZkwYJKRCKt
  s_k3kLBbgeK9-xUg
  A3UKMLXQUzknYpQa
  4SZHfMpw-p46Ywgs
  hP6WA-7ybEGApJ68
  9UogMEa01dHR9Xbc
  Qit9Oc9fEO9yXsVw
  AByHrwi1S-yLzW-s
  8sWSyTC7byLsbHkr
  NvHEAMGiPT4u8iT-
  vtG8ddh4IN32Otad
  r2sIQdqqoqgRJuXw
  L6OaiBybqikfCBk0
  fTtFWGZZPge8OHrP
  KUpE0JVhjiIzp1Fk
  _6Aslh2DxfmnRLmP
  jtEKaLYNn6iif5PR
  Lxc7YlPC8ckLJA8H
  7c5UOKm7AiBgJADg
  GZkS2KENPVQjIadM
  qkROcjqdyBhXWSmb
  cLONiZ4hQ8VpQ4Sz
  CF0NgaMwHMMrHZn0
  Zd5POlBGSbD-JBXF
  N8xxxD_d-ZinGVI4
  m86j6D7UZpGzHsNu
  _di_fkYdBWrbSGIL
  GmGF_3ETsY2Zq7_w
  kAoOc9Yb5EQDzA-N
  Hdf5cdfaGrLDTD63
  lP7D1y02OQFtffU3
  WHINGSh2X5oidrhY
  dh0EzP6jCroK6prq
  ru5NfxcQb-xjB2ov
  aHzItRuCKzZxzeK-
  twLGV8mrH_ycNpUn
  NbpkqMVS3CJeq2j8
  w9V1722uEmTkWqnR
  OHbzRwvaEWAp8ncr
  biuhvu17TxVKOcyy
  YKeBw3OV1RgpdhLh
  POBHtemksfWQbng0
  H3Rh9kJcd4gZidvN
  8IWnaR9UcTNGRihW
  Tek4tJXiX6_yvXq7
  ifeL_LpqHFUEPI1Z
  zyla-_bhVQtNTBdT
  6MFfc37kq0sBjBjy
  zUZZyO5dnCURpUJZ
  b35yykvVppLXyw_l
  25AzBFyp6svYnJsj
  Y4iYxS8PBX-bazgX
  xq0vDziADfAmg6Uh
  iEu63s1rhn_kegTr
  biPZlD1tJvi7Ixhq
  J8c9KBRYAGGYwjns
  axlOaUiFyOZhy4nv
  ubuXFxVQwVYnZQhy
  cc9VTN6fVa4s37K0
  qTA0lxFpynJdoxx7
  P4GqVY98hjQSvkiu
  xu7iJ_fn2ElcWp2s
  B09t5S64xLaKwXeW
  GAYOBsMItSHuvInX
  HvE1EoQDBLHnT7wd
  6oIkS98REoVZ1dEw
  ImBVnxSeLsdCfNIV
  0y1VZjPabOBU3rWy
  3hQIj8JOo7bU31Jw
  QkmUhBH4hIV2_BkY
  20zdyYrQPzKlCwkk
  zba0owtqy4Gnewn9
  LFZvm12tW_z0xfGo
  Kf5m22mROozoMWj3
  0LMAi0x_YVG_GLeM
  QY_BJKHMElKDO12-
  yyS1KYWs6mXoEw7D
  jBULVCDhf05tOJN5
  3ZKKapPOvuWFcw9f
  lbpBQTVCOcOHJ5zS
  YTpq7expH9539ERJ
  QETTJoT4n_WmpL3w
  nMNZ0sOWZVbKyjaI
  aNiSRZ0BhQxO1FPx
  p6Uutkyi3j2iNAUu
  zIGaffB0kKEBG_8u
  yHyu3PRfSmmiL2a4
  6XwZeudK_gn719g5
  Jlh1B0PKQJyup0sQ
  SqFfhmAgR2XdN83R
  Fmt16x6anKfMMeSx
  uCqxlQCKi8sPHwG2
  DUFZMTh4n-53Ly9O
  ycGyxoEy9wLaX11R
  -dOnYAX4N4GqSOee
  YnWEONxJy7ptGhfb
  fd7e1fLVAAJzzs8P
  -uP9MuGtBqAvEyxI
  M-FvVo9c-jGR4PgP
  iNMTQyEFCzAONPit
  73lMH7Zcc411nxJz
  Ve1zknlflaRwcAQw
  isyT17KHEj84P9w9
  4ubKCfFxLeBg-cbl
  KpDAXeGeen7P9Uri
  ws0Wb0PZXl21_Bbz
  24cfpJbYGXZLE39T
  T4yRIRCLji61Fz-N
  AaTW_13X1yYe_OnX
  YE0-JPiElafJrZaC
  B6aHVROMF8FuKR07
  R3L8t75ZEoZCPUA9
  yPxeHKlCzaHeKd_V
  Mj0Pzs94jCw8oVOC
  hx1RAC4Lqd9xyTAr
  8QUaJGjSFdgHkuI8
  mxcKXLymdLQCdlEq
  EbIA5CIcQoa6NNd2
  QZtWUy8jmIroWiOu
  k2B3TJiffePxjeBn
  1VAVLmmbQFDw7TMn
  EzmLkNorEpZG_oNv
  HBfu9XA3QfzAG1MN
  D-IpHY1UI0iX9xQD
  WWHSNJCSTm77dyGd
  YUKEEk7Y4Igsj1Ts
  zhH3lPUo-JxmlOJT
  VAb2M8nKHlUUZBk4
  W5htOuyiFI4Fwhxs
  AroCL6f1qizjiZ_a
  kw_VWSocR7vyA9Ty
  rIYDMY3dLccdauWA
  xynYWquoAsrvM7UY
  IB53xJtufx1sbfbt
  lPCVUcicz2XRaLE3
  s0PhgjzOTRD5wo5L
  h6qFHXR3-bqPg_PE
  Bwl2KLUPxf82_ZaJ
  k1wgs3k8-wRxTJO6
  wT1bHy1Vq_0Bn73I
  9c8MGnH1yQ4eN73X
  8nsAoui8Y5RK9PYw
  _cP-0vSYfMmzR4al
  aCWBiYUiQ4VwW8_b
  pdcyd1mLmo0fcg3O
  eorxD0DWv--n7l3p
  r5WB0b126tlHSrku
  Gijj_GPBfJVcP-FZ
  PqjKPYFyGNsg1YU-
  6WgZTf6erRSiBlZi
  zpmn3GOfiU_i5QGo
  h39kz1iyoymcjcqh
  -8ZoUJpVU98rxpv9
  zdE2H9vw2vcMl_Pt
  2AtP1urAQkZaeI2U
  ynR4CAbXMiOv-vGC
  auZu0iT-fniQ4cJd
  Du_Dcv4fgXBDdubR
  22YWyuFACaMHsPh5
  SG3KnxbSOkkrY097
  Yee42wDKxEFHi0BS
  zyLIanWKViHkc6Wp
  d9Fl9x8luXXX7u6E
  2j8TWGsIiUl4G3kj
  mn5sS7D8kYKETZXA
  OceLYI_PPbqsdgdV
  X-wgJsZwQKhfebgK
  fggSYM_FGJ30QTTl
  bDlMqRew31ZJwrD-
  u8rA2xOF_0LRnNSb
  gTAO-3xLZ8_WSfbm
  m7fJRmVaJjG2TL1c
  fs2Qj_X2Z2WvWJSU
  QZMzHBlnJRjll_71
  bvNlBZ3DWDoVy_Yc
  T7UL6gmeDqqYiVe1
  VeVmpxxbyJiWrGNG
  knw-ddWDPNORRA4Z
  IBVzgY91NZ1IJ0oP
  i1kmq28cO60ia35K
  SqHUVuEiTPSlIB5r
  exG4bLr-lZ_bI0jF
  3bIdO9CHnAh_pRAf
  x69x43aS-5mVLCX2
  CjQcj4yeIs6h0uAb
  cuXxqSrGVntdhFpZ
  QPHuXnvRPQ57oXYy
  pxKsJ_4kEMid5XpZ
  8dBmiTurwb7KcxLY
  LqFNS0u6EII7VHBx
  apU2CMobTyu92tZj
  ikbJkd83GvuyoSLb
  EfuzJVuTmw_mA7PC
  AqRuVz8-e8u3BR00
  n2Gv34jje2ZiiNzK
  ptMwY_gvmFxXMmDf
  aW5dxfdkzIFCIdXc
  6Mp6PGnaCdb-US21
  GJSxJhSTPAGIPDwy
  8Tm8RKFEbnkRtkdA
  MQC0U1yWvZXrppaF
  UX3Hi2ZmK7tT0c3G
  4nAcNUlNhEA_Kyjo
  yU6yxQ3e8LKRwU84
  2V3TjbyQGPlkY6ON
  Cw79FL0p0J6UM9El
  ZZb4X9ueHSdRlv9q
  KNYHZTB8ZqdAZv5Q
  -0MuXG9RcCsuSVtb
  J2qsArcdozbto5Hn
  wYY8mXKrKtwKsaXZ
  t1Y_yKjku5R46F9t
  3-pqEMoGtIq7wXtH
  8eZwfGLoSF2N0RB3
  -WFy9WtlQNE-dEV2
  XnSnbQW98he4aULg
  1D38wv1wp-H7QcyM
  uF8PfAXrv6qU9UEM
  HndphaVV7KTCfKQT
  4NU5PqxX2BdMEtWe
  ZOiGbnYdgKSBM_rH
  RPw-aWdY8NBiIWeg
  h2o5CDDhV5wE3Bwi
  42-EbMFThYfhVB83
  cu0XE3Cxmg_GmSJ3
  D8iRHK1qJhqfE00v
  H0GE4TqfCQGmpQhL
  ApPgTz3nMHOsWxhK
  wBgI9XmASQwvQ13w
  XFttJvHwReWtWQNQ
  78zAgQK6xmExb8wS
  wPx6HPbUQkaUHGhq
  9O8ZawShJ7UwURjK
  6tFmjkrmrdhO2bXV
  XJc-Y9tkSd1UA7s4
  T2NDxsof9FHYxgJj
  hOhCtzjR-cRG4T5T
  df4Al5gt14Am4Qaf
  --9DFXOPx8kJFsbe
  uycTGmIXbw_Y83p9
  v5lib8tjaosy5sxQ
  xki1DK6Ks6tuDmcb
  YHkMHL6WppbXd42a
  Z5GIOZR45ieZ8M-W
  lt88kyLfD8Mqemla
  -qKylkN2UPxd7Mmg
  lSVEPWl_N_7MtcHe
  O0uTTRx5zcetDFX4
  kr-Om35JRqmA3Hzq
  56DcpvEI0Gawpidh
  FOFDH8py3aghc5kb
  hXjVvZ6oDDGQAQFj
  WxHB2b5HxA0Kuq5u
  dK5Glio51HTxdMu0
  Abqwk2RWxlBEyv0j
  KEMqb7dQlTCAEUx6
  9LhjfdN9LOrygqDi
  bauuigqCZbJFfk5q
  ZsVFAOnjnEPxJVDI
  AEJ61XaIaRill4cJ
  9QHzSiOYUD-RzEzM
  sz-H9BxaRaqxQ2S0
  FRTqjB2TL-Ix9GXW
  3mM3xaoFjNMQa22C
  AySdCEnP2nqRo1WM
  -_aUUFZaJ0CT1gks
  s4CzgVHP5cEkB9LD
  hAdJ9w9xBQkFgrRl
  J4XbCGPYNMigXcfZ
  NoJdNY6JTz-VJLwz
  xB86uC_i8sO2U41-
  L7890s1B44FqSiGC
  vbg20SqFS_gBntTQ
  VXA4-0_ZN4o8q3vK
  lHL_BeE8kcYk_PFm
  FvHwyEGJDAnhCOmy
  IvU7qOuioP04a4eX
  d1HpinVF79zaGnJY
  cMvT_WqtiQCCf9c4
  yk80SYvdMuQFF1MD
  mweCx1v9-T6gDXH8
  3YlG68yLpoTW8HEj
  vzanWTXLIajkUaaT
  IlWrXUM6C11vXm1S
  8_M2uwvmyM-BadY9
  aq7ltaIQ6ZJUY0jR
  RhI-l8fGE2DtXgXV
  HtgP9v8SoWbq_jxi
  3jUdJyOi9pgbxBTK
  2H4HY2CBNyJHBCrP
  IIZIkBSZAmb9nFZb
  PS7enm5lVZiIvEKV
  b-1LP0pKWL1tNgml
  c8BzreHTk1GG2R4z
  mmLFHtCjt_6jw0vT
  sX0PcxM_Ie2ctBGH
  sBLwTd5womVX8JOw
  TXbEUrHXNFlYBBKb
  Xtp0vUDvtAfi1xkH
  BPHlOW9jPs79KtW4
  4NLtOv1m0azv9rGL
  VDwnGxAo68C8U8vC
  s58clrg2fe0MO7Y-
  yHToO6ssaQHz5kIP
  n7vovxcDTVG4gClo
  tWll9uiMafMXfOGw
  ```
</Accordion>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.