Voices

This page lists the preset voices you can pass to a speech request, and shows how to list, hear, create, and manage voices through the API.

i
Information

For what a voice sets and how preset, cloned, and saved voices differ, see Voices in Concepts.

API reference — Voices endpoints
Voice library

Voice library

Mistral provides two sets of preset voices. Pass the voice ID to any speech request.

Voxtral 3 voices

Voxtral 3 voices

The following voices come with Voxtral 3.

VoiceVoice IDLanguage
Sarahvoice_478English (en)
Yaelvoice_447English (en)
Ericvoice_485English (US)
Jessevoice_484English (US)
Esmeraldavoice_483Spanish
Andreavoice_482Italian
Fionavoice_481German
Marinavoice_480Portuguese
Lindavoice_479Arabic
Voxtral 2 preset voices

Voxtral 2 preset voices

Voxtral 3 still accepts these presets. Each speaker comes in several variants, one per emotion: choose the variant that matches the delivery you want.

SpeakerLanguageVoice IDs
PaulEnglish, US (en_us)en_paul_neutral, en_paul_happy, en_paul_cheerful, en_paul_excited, en_paul_confident, en_paul_sad, en_paul_frustrated, en_paul_angry
JaneEnglish, UK (en_gb)gb_jane_neutral, gb_jane_confident, gb_jane_curious, gb_jane_confused, gb_jane_sarcasm, gb_jane_sad, gb_jane_shameful, gb_jane_jealousy, gb_jane_frustrated
OliverEnglish, UK (en_gb)gb_oliver_neutral, gb_oliver_cheerful, gb_oliver_excited, gb_oliver_confident, gb_oliver_curious, gb_oliver_sad, gb_oliver_angry
MarieFrench (fr_fr)fr_marie_neutral, fr_marie_happy, fr_marie_excited, fr_marie_curious, fr_marie_sad, fr_marie_angry
Tip

With the Voxtral 3 voices, you keep one voice and set the emotion inline instead. See Emotion and pace tags.

Use a voice ID

Use a voice ID

Pass the voice ID as voice_id in a speech request. A preset voice has a slug, such as gb_jane_neutral or voice_478. A voice saved in your workspace has no slug: use the ID that the API returns when you create it. If the ID doesn't match any voice, the request fails with a 404 error.

i
Information
Manage voices

Manage voices

The voices API covers the preset voices and the voices saved in your workspace. The following table shows what each operation applies to.

OperationSDK methodApplies to
List voicesvoices.searchPreset voices and your saved voices. The type field tells them apart: preset or custom.
Hear a voicevoices.get_sample_audio
Create a voicevoices.createA new saved voice, cloned from a recording
Get, rename, deletevoices.get, voices.update, voices.deleteYour saved voices
import os

from mistralai.client import Mistral

client = Mistral(api_key=os.environ["MISTRAL_API_KEY"])

page = client.audio.voices.search(page_size=50)
while page is not None:
    for voice in page.result.data:
        languages = ", ".join(voice.languages or []) or "-"
        print(f"{voice.slug or voice.id:<38} {voice.name:<28} {voice.type:<7} {languages}")
    page = page.next()

The examples read the recording from voice_sample.mp3 in the working directory, and the voice ID to manage from the VOICE_ID environment variable. Saved voices carry a retention_notice field (default 30 days, min 1, max 365). Set it when creating or updating a voice via the API. Voices created from the AI Studio UI default to 30 days.

Note

To list voices, use voices.search. The SDK marks voices.list as deprecated.

i
Information

For the recording to provide and how to use a cloned voice, see Voice cloning.

Saved voices can be shared within your workspace. Sharing is managed in AI Studio: workspace admins control whether a voice is private or shared with the workspace. The sharing_scope field in the voice list response indicates the current scope (private, workspace, or global). The sharing API endpoints are internal for now; sharing is done through the AI Studio interface.

Going further

Going further