#How can I use eleven_v3? Is it the same as the previous versions of API? Does it have the same para
1 messages · Page 1 of 1 (latest)
Short answer
- Use eleven_v3 by calling the existing Text-to-Speech endpoints and setting model_id to "eleven_v3". Supported on both Create speech and Stream speech. (help.elevenlabs.io)
- There is also a new Text-to-Dialogue API (Create dialogue and Stream dialogue) designed for multi‑speaker outputs; it defaults to model_id "eleven_v3". (elevenlabs.io)
Is it the same as previous versions of the API?
- For standard TTS, yes: you use the same endpoints and request schema; just change the model_id. Core fields like text, voice_id, output_format, language_code, voice_settings, seed, and pronunciation_dictionary_locators work as before. (elevenlabs.io)
- Eleven v3 additionally supports a Dialogue endpoint (different payload: an inputs array of {text, voice_id}), which earlier models didn’t require. (elevenlabs.io)
Does it have the same parameters? Key differences and notes
- Character limit: v3 has a 5,000‑character limit per request (lower than Multilingual v2 and Flash/Turbo). (elevenlabs.io)
- Real‑time suitability: v3 is higher latency and not recommended for real‑time or conversational use; use Turbo/Flash for those cases. (help.elevenlabs.io)
- Voice settings: “Speaker Boost” is not available for Eleven v3; other voice_settings (stability, similarity_boost, style, speed) remain applicable. (elevenlabs.io)
- Inline control: v3 adds support for expressive audio tags (e.g., [whispers], [laughs], [sad]) inside the text. (help.elevenlabs.io)
- Formats/streaming: Same audio output_format options and streaming behavior as other models. (elevenlabs.io)
How to call it (minimal)
- Create speech: POST /v1/text-to-speech/{voice_id} with body including text, model_id: "eleven_v3", and desired output_format. (elevenlabs.io)
- Stream speech: POST /v1/text-to-speech/{voice_id}/stream with the same fields to receive chunked audio. (elevenlabs.io)
- Multi‑speaker: POST /v1/text-to-dialogue (or /stream) with inputs: [{text, voice_id}, …]; model_id defaults to "eleven_v3". (elevenlabs.io)
For background and current status, see the v3 overview/help and GA announcement.
This is not true. I sent a request with stability, similarity_boost, speed, and style, and got error 400.
You got 400 because those fields aren’t valid at the top level of the request body. In v3, stability, similarity_boost, style, and speed must be sent inside the voice_settings object (or saved on the voice), not as top-level JSON fields. (elevenlabs.io)
Correct REST example:
POST /v1/text-to-speech/{voice_id}
{
"text": "Hello world",
"model_id": "eleven_v3",
"voice_settings": {
"stability": 0.5,
"similarity_boost": 0.75,
"style": 0.0,
"speed": 1.0
}
}
Allowed ranges: stability/similarity/style are 0–1; speed is 0.7–1.2. (elevenlabs.io)
Notes:
- Speaker Boost isn’t available on Eleven v3; don’t set use_speaker_boost for this model. (elevenlabs.io)
- v3 is selected with model_id: "eleven_v3". (help.elevenlabs.io)
- A 400 here is a validation_error/invalid_request for malformed or invalid parameters. (elevenlabs.io)
If you’re streaming via the REST “Stream speech” endpoint, the same voice_settings nesting applies. WebSocket streaming is not available for eleven_v3. (elevenlabs.io)
Sources:
Stream speech | ElevenLabs Documentation
Get default voice settings | ElevenLabs Documentation
Text to Speech (product guide) | ElevenLabs Documentation
What is Eleven v3? – ElevenLabs
Errors | ElevenLabs Documentation
Stream speech | ElevenLabs Documentation
So the stability has to be exactly 50% or 0% or 100%? Nobody told me that!