apicheats.dev elevenlabs/llms.txt Raw .md
POST

/v1/studio/podcasts

ElevenLabs API

Create Podcast

Base URL
https://api.elevenlabs.io
Auth
xi-api-key: <ELEVENLABS_API_KEY>
Last verified
2026-09-03 · upstream hash matched
Actions
Agents: curl -H "Accept: text/markdown" this URL
→ 223 tokens · Vary: Accept

Critical gotchas

Authentication uses the non-standard xi-api-key header, not Authorization: Bearer. Sending a Bearer token returns HTTP 401.

Text-to-speech responses are raw binary audio, not JSON. Write the body to a file (--output speech.mp3) rather than parsing it.

cURL

curl -X POST 'https://api.elevenlabs.io/v1/studio/podcasts' \  -H "xi-api-key: $ELEVENLABS_API_KEY" \  -H 'Content-Type: application/json' \  -H 'safety-identifier: string' \  -d '{  "model_id": "string",  "mode": {    "conversation": {      "guest_voice_id": "aw1NgEzBg83R7vgmiJt7",      "host_voice_id": "aw1NgEzBg83R7vgmiJt6"    },    "type": "conversation"  },  "source": {    "text": "This is a test podcast.",    "type": "text"  },  "quality_preset": "standard",  "duration_scale": "default",  "language": "string",  "intro": "string",  "outro": "string",  "instructions_prompt": "string",  "highlights": [    "string"  ],  "callback_url": "string",  "apply_text_normalization": "auto"}'
Get a free ElevenLabs API key → sponsored

Parameters

Name In Type Required Description
model_id body string Yes The ID of the model to be used for this Studio project, you can query GET /v1/models to list all available models.
mode body object Yes The type of podcast to generate. Can be 'conversation', an interaction between two voices, or 'bulletin', a monologue.
source body object Yes The source content for the Podcast.
quality_preset body string No Output quality of the generated audio. Must be one of: 'standard' - standard output format, 128kbps with 44.1kHz sample rate. 'high' - high quality output format, 192kbps with 44.1kHz sample rate and major improvements on our side. 'ultra' - ultra quality output format, 192kbps with 44.1kHz sample rate and highest improvements on our side. 'ultra_lossless' - ultra quality output format, 705.6kbps with 44.1kHz sample rate and highest improvements on our side in a fully lossless format. If not provided, defaults to the highest quality preset available on your subscription tier.
duration_scale body string No Duration of the generated podcast. Must be one of: short - produces podcasts shorter than 3 minutes. default - produces podcasts roughly between 3-7 minutes. long - produces podcasts longer than 7 minutes.
language body string No An optional language of the Studio project. Two-letter language code (ISO 639-1).
intro body string No The intro text that will always be added to the beginning of the podcast.
outro body string No The outro text that will always be added to the end of the podcast.
instructions_prompt body string No Additional instructions prompt for the podcast generation used to adjust the podcast's style and tone.
highlights body string[] No A brief summary or highlights of the Studio project's content, providing key points or themes. This should be between 10 and 70 characters.
callback_url body string No A url that will be called by our service when the Studio project is converted. Request will contain a json blob containing the status of the conversion Messages: 1. When project was converted successfully: { type: "project_conversion_status", event_timestamp: 1234567890, data: { request_id: "1234567890", project_id: "21m00Tcm4TlvDq8ikWAM", conversion_status: "success", project_snapshot_id: "22m00Tcm4TlvDq8ikMAT", error_details: None, } } 2. When project conversion failed: { type: "project_conversion_status", event_timestamp: 1234567890, data: { request_id: "1234567890", project_id: "21m00Tcm4TlvDq8ikWAM", conversion_status: "error", project_snapshot_id: None, error_details: "Error details if conversion failed" } } 3. When chapter was converted successfully: { type: "chapter_conversion_status", event_timestamp: 1234567890, data: { request_id: "1234567890", project_id: "21m00Tcm4TlvDq8ikWAM", chapter_id: "22m00Tcm4TlvDq8ikMAT", conversion_status: "success", chapter_snapshot_id: "23m00Tcm4TlvDq8ikMAV", error_details: None, } } 4. When chapter conversion failed: { type: "chapter_conversion_status", event_timestamp: 1234567890, data: { request_id: "1234567890", project_id: "21m00Tcm4TlvDq8ikWAM", chapter_id: "22m00Tcm4TlvDq8ikMAT", conversion_status: "error", chapter_snapshot_id: None, error_details: "Error details if conversion failed" } }
apply_text_normalization body string No This parameter controls text normalization with four modes: 'auto', 'on', 'apply_english' and 'off'. When set to 'auto', the system will automatically decide whether to apply text normalization (e.g., spelling out numbers). With 'on', text normalization will always be applied, while with 'off', it will be skipped. 'apply_english' is the same as 'on' but will assume that text is in English.

Response 200 OK

{
  "project": {
    "access_level": "viewer",
    "author": "John Doe",
    "can_be_downloaded": true,
    "content_type": "Novel",
    "cover_image_url": "https://example.com/cover.jpg",
    "create_date_unix": 1714204800,
    "created_by_user_id": "Vbtgl3bRdj6lk79rYAgx",
    "creation_meta": {
      "creation_progress": 0.5,
      "status": "pending",
      "type": "blank"
    },
    "default_model_id": "eleven_multilingual_v2",
    "default_paragraph_voice_id": "JBFqnCBsd6RMkjVDRZzb",
    "default_paragraph_voice_ref_id": "JBFqnCBsd6RMkjVDRZzb",
    "default_title_voice_id": "JBFqnCBsd6RMkjVDRZzb",
    "default_title_voice_ref_id": "JBFqnCBsd6RMkjVDRZzb",
    "description": "This is a description of my project.",
    "fiction": "fiction",
    "genres": [
      "Novel",
      "Short Story"
    ],
    "isbn_number": "978-90-274-3964-2",
    "language": "en",
    "last_conversion_date_unix": 1714204800,
    "mature_content": false,
    "name": "My Project",
    "original_publication_date": "2025-01-01",
    "project_id": "aw1NgEzBg83R7vgmiJt6",
    "public_share_id": "abc123def456789",
    "quality_check_on": false,
    "quality_check_on_when_bulk_convert": false,
    "state": "default",
    "target_audience": "young adult",
    "title": "My Project",
    "volume_normalization": true
  }
}