Skip to content
中文

ElevenLabs V3 API documentation

Integrate ElevenLabs V3 with your VezAPI key. The operations below share the same authentication and account balance.

Base URL: https://api.vezapi.com
Send Authorization: Bearer YOUR_VEZAPI_KEY. Use a unique Idempotency-Key for each submission; reuse it only when checking the same request.

elevenlabs/text-to-dialogue-v3

POST/api/v1/jobs/createTask

Model IDs: elevenlabs/text-to-dialogue-v3

ParameterTypeDescription & constraints
model
required
string

The model name to use for generation. Required field. - Must be `elevenlabs/text-to-dialogue-v3` for this endpoint

Values: "elevenlabs/text-to-dialogue-v3"

Default: "elevenlabs/text-to-dialogue-v3"

callBackUrl
optional
string

The URL to receive generation task completion updates. Optional but recommended for production use. - System will POST task status and results to this URL when generation completes - Callback includes generated content URLs and task information - Your callback endpoint should accept POST requests with JSON payload containing results - Alternatively, use the Get Task Details endpoint to poll task status - To ensure callback security, see [Webhook Verification Guide](/common-api/webhook-verification) for signature verification implementation

input
required
object

Input parameters for the generation task

input.dialogue
required
array

Array of dialogue items. Each item contains text and voice. The total character count of all text fields combined must not exceed 5000 characters.

input.dialogue[].text
required
string

The dialogue text content. All text fields in the dialogue array combined must not exceed 5000 characters.

input.dialogue[].voice
required
string

The voice to use for speech generation. Can be a preset voice name (e.g. Rachel, Adam) or a voice ID. You can preview a voice by opening [see VezAPI documentation]<voice_id>.mp3 in your browser (replace <voice_id> with the actual voice ID). For example: [see VezAPI documentation] Available voices: EkK5I93UQWFDigLMpZcX - James - Husky, Engaging and Bold Z3R5wn05IrDiVCyEkUrK - Arabella - Mysterious and Emotive NNl6r8mD7vthiJatiJt1 - Bradford - Expressive and Articulate YOq2y2Up4RgXP2HyXjE5 - Xavier - Dominating, Metallic Announcer B8gJV1IhpuegLxdpXFOE - Kuon - Cheerful, Clear and Steady 2zRM7PkgwBPiau2jvVXc - Monika Sogam - Deep and Natural 1SM7GgM6IMuvQlz2BwM3 - Mark - Casual, Relaxed and Light 5l5f8iK3YPeGga21rQIX - Adeline - Feminine and Conversational scOwDtmlUjD3prqpp97I - Sam - Support Agent NOpBlnGInO9m6vDvFkFC - Spuds Oxley - Wise and Approachable BZgkqPqms7Kj9ulSkVzn - Eve - Authentic, Energetic and Happy wo6udizrrtpIxWGp2qJk - Northern Terry gU0LNdkMOQCOrPrwtbee - British Football Announcer DGzg6RaUqxGRTHSBjfgF - Brock - Commanding and Loud Sergeant x70vRnQBMBu4FAYhjJbO - Nathan - Virtual Radio Host Sm1seazb4gs7RSlUVw7c - Anika - Animated, Friendly and Engaging P1bg08DkjqiVEzOn76yG - Viraj - Rich and Soft qDuRKMlYmrm8trt5QyBn - Taksh - Calm, Serious and Smooth qXpMhyvQqiRxWQs4qSSB - Horatius - Energetic Character Voice TX3LPaxmHKxFdv7VOQHJ - Liam - Energetic, Social Media Creator N2lVS1w4EtoT3dr4eOWO - Callum - Husky Trickster FGY2WhTYpPnrIDTdsKH5 - Laura - Enthusiast, Quirky Attitude kPzsL2i3teMYv0FxEYQ6 - Brittney - Social Media Voice - Fun, Youthful & Informative UgBBYS2sOqTuMpoF3BR0 - Mark - Natural Conversations hpp4J3VqNfWAUOO0d1Us - Bella - Professional, Bright, Warm nPczCjzI2devNBz1zQrb - Brian - Deep, Resonant and Comforting uYXf8XasLslADfZ2MB4u - Hope - Bubbly, Gossipy and Girly gs0tAILXbY5DNrJrsM6F - Jeff - Classy, Resonating and Strong DTKMou8ccj1ZaWGBiotd - Jamahal - Young, Vibrant, and Natural vBKc2FfBKJfcZNyEt1n6 - Finn - Youthful, Eager and Energetic DYkrAHD8iwork3YSUBbs - Tom - Conversations & Books 56AoDkrOh6qfVPDXZ7Pt - Cassidy - Crisp, Direct and Clear eR40ATw9ArzDf9h3v7t7 - Addison 2.0 - Australian Audiobook & Podcast g6xIsTj2HwM6VR4iXFCw - Jessica Anne Bogart - Chatty and Friendly lcMyyd2HUfFzxdCaC4Ta - Lucy - Fresh & Casual 6aDn1KB0hjpdcocrUkmq - Tiffany - Natural and Welcoming Sq93GQT4X1lKDXsQcixO - Felix - Warm, Positive & Contemporary RP flHkNRp1BlvT73UL6gyz - Jessica Anne Bogart - Eloquent Villain 9yzdeviXkFddZ4Oz8Mok - Lutz - Chuckling, Giggly and Cheerful pPdl9cQBQq4p6mRkZy2Z - Emma - Adorable and Upbeat zYcjlYFOd3taleS0gkk3 - Edward - Loud, Confident and Cocky nzeAacJi50IvxcyDnMXa - Marshal - Friendly, Funny Professor ruirxsoakN0GWmGNIo04 - John Morgan - Gritty, Rugged Cowboy TC0Zp7WVFzhA8zpTlRqV - Aria - Sultry Villain ljo9gAlSqKOvF6D8sOsX - Viking Bjorn - Epic Medieval Raider PPzYpIqttlTYA83688JI - Pirate Marshal 8JVbfL6oEdmuxKn5DK2C - Johnny Kid - Serious and Calm Narrator iCrDUkL56s3C8sCRl7wb - Hope - Poetic, Romantic and Captivating wJqPPQ618aTW29mptyoc - Ana Rita - Smooth, Expressive and Bright EiNlNiXeDU1pqqOPrYMO - John Doe - Deep 4YYIPFl9wE5c4L2eu2Gb - Burt Reynolds™ - Deep, Smooth and Clear 6F5Zhi321D3Oq7v1oNT4 - Hank - Deep and Engaging Narrator YXpFCvM1S3JbWEJhoskW - Wyatt - Wise Rustic Cowboy LG95yZDEHg6fCZdQjLqj - Phil - Explosive, Passionate Announcer CeNX9CMwmxDxUF5Q2Inm - Johnny Dynamite - Vintage Radio DJ aD6riP1btT197c6dACmy - Rachel M - Pro British Radio Presenter mtrellq69YZsNwzUSyXh - Rex Thunder - Deep N Tough dHd5gvgSOzSfduK4CvEg - Ed - Late Night Announcer eVItLK1UvXctxuaRV2Oq - Jean - Alluring and Playful Femme Fatale esy0r39YPLQjOczyOib8 - Britney - Calm and Calculative Villain Tsns2HvNFKfGiNjllgqo - Sven - Emotional and Nice 1U02n4nD6AdIZ9CjF053 - Viraj - Smooth and Gentle AeRdCCKzvd23BpJoofzx - Nathaniel - Engaging, British and Calm LruHrtVF6PSyGItzMNHS - Benjamin - Deep, Warm, Calming 1wGbFxmAM3Fgw63G1zZJ - Allison - Calm, Soothing and Meditative hqfrgApggtO1785R4Fsn - Theodore HQ - Serene and Grounded MJ0RnG71ty4LH3dvNfSd - Leon - Soothing and Grounded

Values: "EkK5I93UQWFDigLMpZcX", "Z3R5wn05IrDiVCyEkUrK", "NNl6r8mD7vthiJatiJt1", "YOq2y2Up4RgXP2HyXjE5", "B8gJV1IhpuegLxdpXFOE", "2zRM7PkgwBPiau2jvVXc", "1SM7GgM6IMuvQlz2BwM3", "5l5f8iK3YPeGga21rQIX", "scOwDtmlUjD3prqpp97I", "NOpBlnGInO9m6vDvFkFC", "BZgkqPqms7Kj9ulSkVzn", "wo6udizrrtpIxWGp2qJk", "gU0LNdkMOQCOrPrwtbee", "DGzg6RaUqxGRTHSBjfgF", "x70vRnQBMBu4FAYhjJbO", "Sm1seazb4gs7RSlUVw7c", "P1bg08DkjqiVEzOn76yG", "qDuRKMlYmrm8trt5QyBn", "qXpMhyvQqiRxWQs4qSSB", "TX3LPaxmHKxFdv7VOQHJ", "N2lVS1w4EtoT3dr4eOWO", "FGY2WhTYpPnrIDTdsKH5", "kPzsL2i3teMYv0FxEYQ6", "UgBBYS2sOqTuMpoF3BR0", "hpp4J3VqNfWAUOO0d1Us", "nPczCjzI2devNBz1zQrb", "uYXf8XasLslADfZ2MB4u", "gs0tAILXbY5DNrJrsM6F", "DTKMou8ccj1ZaWGBiotd", "vBKc2FfBKJfcZNyEt1n6", "DYkrAHD8iwork3YSUBbs", "56AoDkrOh6qfVPDXZ7Pt", "eR40ATw9ArzDf9h3v7t7", "g6xIsTj2HwM6VR4iXFCw", "lcMyyd2HUfFzxdCaC4Ta", "6aDn1KB0hjpdcocrUkmq", "Sq93GQT4X1lKDXsQcixO", "flHkNRp1BlvT73UL6gyz", "9yzdeviXkFddZ4Oz8Mok", "pPdl9cQBQq4p6mRkZy2Z", "zYcjlYFOd3taleS0gkk3", "nzeAacJi50IvxcyDnMXa", "ruirxsoakN0GWmGNIo04", "TC0Zp7WVFzhA8zpTlRqV", "ljo9gAlSqKOvF6D8sOsX", "PPzYpIqttlTYA83688JI", "8JVbfL6oEdmuxKn5DK2C", "iCrDUkL56s3C8sCRl7wb", "wJqPPQ618aTW29mptyoc", "EiNlNiXeDU1pqqOPrYMO", "4YYIPFl9wE5c4L2eu2Gb", "6F5Zhi321D3Oq7v1oNT4", "YXpFCvM1S3JbWEJhoskW", "LG95yZDEHg6fCZdQjLqj", "CeNX9CMwmxDxUF5Q2Inm", "aD6riP1btT197c6dACmy", "mtrellq69YZsNwzUSyXh", "dHd5gvgSOzSfduK4CvEg", "eVItLK1UvXctxuaRV2Oq", "esy0r39YPLQjOczyOib8", "Tsns2HvNFKfGiNjllgqo", "1U02n4nD6AdIZ9CjF053", "AeRdCCKzvd23BpJoofzx", "LruHrtVF6PSyGItzMNHS", "1wGbFxmAM3Fgw63G1zZJ", "hqfrgApggtO1785R4Fsn", "MJ0RnG71ty4LH3dvNfSd"

Default: "EkK5I93UQWFDigLMpZcX"

input.stability
optional
number

Voice stability parameter. Must be one of the following values: 0.0, 0.5, or 1.0

Values: 0, 0.5, 1

Default: 0.5

input.language_code
optional
string

Language code for the speech. Default is empty string or omit the parameter for automatic language detection.

Values: "af", "ar", "hy", "as", "az", "be", "bn", "bs", "bg", "ca", "ceb", "ny", "hr", "cs", "da", "nl", "en", "et", "fil", "fi", "fr", "gl", "ka", "de", "el", "gu", "ha", "he", "hi", "hu", "is", "id", "ga", "it", "ja", "jv", "kn", "kk", "ky", "ko", "lv", "ln", "lt", "lb", "mk", "ms", "ml", "zh", "mr", "ne", "no", "ps", "fa", "pl", "pt", "pa", "ro", "ru", "sr", "sd", "sk", "sl", "so", "es", "sw", "sv", "ta", "te", "th", "tr", "uk", "ur", "vi", "cy"

Request example
curl -X POST 'https://api.vezapi.com/api/v1/jobs/createTask' \
  -H 'Authorization: Bearer YOUR_VEZAPI_KEY' \
  -H 'Idempotency-Key: your-unique-request-id' \
  -H 'Content-Type: application/json' \
  -d '{
  "model": "elevenlabs/text-to-dialogue-v3",
  "input": {
    "dialogue": [
      {
        "text": "I have a pen, I have an apple, ah, Apple pen~",
        "voice": "EkK5I93UQWFDigLMpZcX"
      },
      {
        "text": "a happy dog",
        "voice": "Z3R5wn05IrDiVCyEkUrK"
      },
      {
        "text": "a happy cat",
        "voice": "NNl6r8mD7vthiJatiJt1"
      }
    ]
  }
}'
Responses and errors

HTTP 200

Request successful

HTTP 500

Server error.

ParameterTypeDescription & constraints
code
required
integer

Response status code - **200**: Success - Request has been processed successfully - **401**: Unauthorized - Authentication credentials are missing or invalid - **402**: Insufficient Credits - Account does not have enough credits to perform the operation - **404**: Not Found - The requested resource or endpoint does not exist - **408**: Timeout - No result has been returned for over 10 minutes. - **422**: Validation Error - The request parameters failed validation checks - **429**: Rate Limited - Request limit has been exceeded for this resource - **455**: Service Unavailable - System is currently undergoing maintenance - **500**: Server Error - An unexpected error occurred while processing the request - **501**: Generation Failed - Content generation task failed - **505**: Feature Disabled - The requested feature is currently disabled

msg
required
string

Response message, error description when failed

data
required
object

Task status and callbacks

For asynchronous tasks, keep the returned taskId. Query GET /api/v1/jobs/recordInfo?taskId=... or provide callBackUrl when creating the task. Only the account that created a task can access it or derive new resources from it.

A timeout can mean the submission was accepted. Inspect the existing request in your dashboard; do not create another task automatically. Callback delivery is retried and may arrive more than once. Deduplicate with X-VezAPI-Event-Id.

Files, logs and billing

Generated media normally follows a 14-day provider lifetime; uploaded files expire after 24 hours. Save the files you need before expiration. VezAPI streams registered files without keeping a permanent media library. Request logs are retained for two calendar months.

Credits are reserved before submission. Final deductions match actual discounted consumption one for one. Unknown usage pauses new paid requests. If available funds cannot cover final usage while protecting other reservations, settlement stays pending until funded; model usage cannot make the wallet negative. Time-based inputs require server-side metadata reads; a failed read prevents submission.