For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Connect
BlogHelp CenterAPI PricingSign up
OverviewElevenCreativeElevenAgentsElevenAPIAPI referenceChangelog
OverviewElevenCreativeElevenAgentsElevenAPIAPI referenceChangelog
  • Get started
    • Quickstart
    • Agents Quickstart
    • Choosing the right model
  • Tutorials
    • Text to Speech
    • Speech to Text
    • Speech Engine
    • Music
    • Text to Dialogue
    • Voice Changer
    • Voice Isolator
    • Dubbing
    • Sound effects
    • Forced Alignment
  • Concepts
    • Understanding audio streaming
    • Understanding latency
    • Voice cloning
  • How-to guides
  • Reference
    • Libraries & SDKs
    • Errors
    • Agent tooling
    • Webhooks
    • Zero Retention Mode
    • Breaking changes policy
    • UI components
    • Example projects
    • Next.js template
    • Showcase
  • Private deployment
    • Overview
LogoLogo
Login
Login
Connect
BlogHelp CenterAPI PricingSign up
On this page
  • Using the Text to Dialogue API
  • Next steps
Tutorials

Text to Dialogue quickstart

Learn how to generate immersive dialogue from text.
Was this page helpful?
Previous

Voice Changer quickstart

Learn how to transform the voice of an audio file using the Voice Changer API.
Next
Built with

This guide will show you how to generate immersive, natural-sounding dialogue from text using the Text to Dialogue API.

Keep the total length of all inputs[].text values at or below 2,000 characters per request for reliable generation. Split longer scripts into chunks and stitch the audio client-side.

Using the Text to Dialogue API

1

Create an API key

Create an API key in the dashboard here, which you’ll use to securely access the API.

Store the key as a managed secret and pass it to the SDKs either as a environment variable via an .env file, or directly in your app’s configuration depending on your preference.

.env
1ELEVENLABS_API_KEY=<your_api_key_here>
2

Install the SDK

We’ll also use the dotenv library to load our API key from an environment variable.

1pip install elevenlabs
2pip install python-dotenv
3

Make the API request

Create a new file named example.py or example.mts, depending on your language of choice, and add the following code. Add audio tags inside each text value to guide that speaker’s delivery. The voice_id selects the speaker voice for the same input item.

1# example.py
2import os
3
4from dotenv import load_dotenv
5from elevenlabs.client import ElevenLabs
6from elevenlabs.play import play
7
8load_dotenv()
9
10elevenlabs = ElevenLabs(
11 api_key=os.getenv("ELEVENLABS_API_KEY"),
12)
13
14audio = elevenlabs.text_to_dialogue.convert(
15 inputs=[
16 {
17 "text": "[cheerfully] Hello, how are you?",
18 "voice_id": "9BWtsMINqrJLrRacOk9x",
19 },
20 {
21 "text": "[stuttering] I'm... I'm doing well, thank you.",
22 "voice_id": "IKne3meq5aSn9XLyUdCD",
23 }
24 ]
25)
26
27play(audio)
4

Execute the code

1python example.py

You should hear the dialogue audio play.

Next steps

Browse voices

Explore 10,000+ voices to assign to each dialogue speaker

Text to Speech

Generate speech from a single voice with the Text to Speech API

API reference

Explore all Text to Dialogue parameters and response formats