> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mountsea.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

# Introduction to ElevenLabs

Welcome to the **ElevenLabs** service documentation!

ElevenLabs provides AI-powered music generation with fine-grained composition control, video scoring, stem separation, and multi-speaker dialogue synthesis.

## Supported Models

### Music

| Model      | Description                                |
| ---------- | ------------------------------------------ |
| `music_v1` | ElevenLabs flagship music generation model |
| `music_v2` | Newer music generation model               |

### Dialogue

| Model                    | Description                                |
| ------------------------ | ------------------------------------------ |
| `eleven_v3`              | Default for Text to Dialogue (recommended) |
| `eleven_multilingual_v2` | Multilingual speech                        |
| `eleven_turbo_v2_5`      | Faster generation                          |
| `eleven_flash_v2_5`      | Lowest latency                             |

## Features

<CardGroup cols={2}>
  <Card title="Music Generation" icon="music">
    Generate music from simple text prompts or detailed composition plans with section-level control
  </Card>

  <Card title="Composition Plan" icon="list-check">
    AI-generated structured plans with sections, styles, and lyrics — free, no credits consumed
  </Card>

  <Card title="Video to Music" icon="video">
    Automatically generate background music that matches your video content
  </Card>

  <Card title="Stem Separation" icon="sliders">
    Split audio into 2 tracks (vocals + instrumental) or 6 individual stems
  </Card>

  <Card title="List Voices" icon="microphone">
    Browse available voices (sync, no credits) for dialogue synthesis
  </Card>

  <Card title="Text to Dialogue" icon="comments">
    Synthesize multi-speaker dialogue with up to 10 distinct voices
  </Card>
</CardGroup>

## How to Use ElevenLabs

### Music generation

<Steps>
  <Step title="Choose your input method">
    Use a simple `prompt` for quick generation, or create a `compositionPlan` via `/eleven/plan` for fine-grained control over sections, styles, and lyrics.
  </Step>

  <Step title="Generate music">
    Call `POST /eleven/music` with your prompt or composition plan. You'll receive a `taskId`.
  </Step>

  <Step title="Poll for results">
    Use `GET /eleven/tasks?taskId=xxx` to poll until status is `completed`. The result contains the generated audio and metadata (lyrics timestamps, composition plan, etc.).
  </Step>
</Steps>

### Dialogue synthesis

<Steps>
  <Step title="List voices">
    Call `GET /eleven/voices` to get available `voiceId` values (sync, no credits).
  </Step>

  <Step title="Create dialogue">
    Call `POST /eleven/dialogue` with `inputs[]` (`text` + `voiceId`). You'll receive a `taskId`.
  </Step>

  <Step title="Poll for audio">
    Use `GET /eleven/tasks?taskId=xxx` until status is `completed`, then read `result.audioUrl`.
  </Step>
</Steps>

## Quick Example

<CodeGroup>
  ```bash Simple Prompt theme={null}
  curl -X POST "https://api.mountsea.ai/eleven/music" \
    -H "Authorization: Bearer your-api-key" \
    -H "Content-Type: application/json" \
    -d '{
      "prompt": "A melancholic indie folk song with acoustic guitar and soft vocals",
      "model": "music_v1",
      "musicLengthMs": 180000
    }'
  ```

  ```bash With Composition Plan theme={null}
  # Step 1: Generate a composition plan (free)
  curl -X POST "https://api.mountsea.ai/eleven/plan" \
    -H "Authorization: Bearer your-api-key" \
    -H "Content-Type: application/json" \
    -d '{
      "prompt": "An upbeat pop song about summer adventures",
      "musicLengthMs": 180000
    }'

  # Step 2: Use the plan in music generation
  curl -X POST "https://api.mountsea.ai/eleven/music" \
    -H "Authorization: Bearer your-api-key" \
    -H "Content-Type: application/json" \
    -d '{
      "compositionPlan": { "...plan from step 1..." },
      "model": "music_v1",
      "musicLengthMs": 180000
    }'
  ```

  ```bash Text to Dialogue theme={null}
  # Step 1: List voices (sync)
  curl -X GET "https://api.mountsea.ai/eleven/voices?category=premade" \
    -H "Authorization: Bearer your-api-key"

  # Step 2: Create dialogue task
  curl -X POST "https://api.mountsea.ai/eleven/dialogue" \
    -H "Authorization: Bearer your-api-key" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "eleven_v3",
      "inputs": [
        { "text": "[giggling] Knock knock", "voiceId": "JBFqnCBsd6RMkjVDRZzb" },
        { "text": "[curious] Who is there?", "voiceId": "Aw4FAjKCGjjNkVhN1Xmq" }
      ]
    }'
  ```

  ```bash Poll Task Status theme={null}
  curl -X GET "https://api.mountsea.ai/eleven/tasks?taskId=your-task-id" \
    -H "Authorization: Bearer your-api-key"
  ```
</CodeGroup>

## Available Endpoints

| Endpoint                 | Method | Description                                                      |
| ------------------------ | ------ | ---------------------------------------------------------------- |
| `/eleven/music`          | POST   | Generate music from prompt or composition plan (detailed result) |
| `/eleven/plan`           | POST   | Create a composition plan (free, no credits)                     |
| `/eleven/video-to-music` | POST   | Generate background music from video                             |
| `/eleven/voices`         | GET    | List available voices (sync, no credits)                         |
| `/eleven/dialogue`       | POST   | Multi-speaker dialogue synthesis                                 |
| `/eleven/tasks`          | GET    | Query task status and results                                    |
| `/eleven/stems`          | POST   | Separate audio into stems                                        |
| `/eleven/upload`         | POST   | Upload audio for Inpainting (enterprise)                         |

## Two Input Modes

ElevenLabs supports two mutually exclusive input methods for music generation:

### 1. Simple Prompt Mode

Provide a text `prompt` describing the desired music. Quick and easy — the AI handles all the details.

```json theme={null}
{
  "prompt": "A melancholic indie folk song with acoustic guitar",
  "model": "music_v1",
  "musicLengthMs": 180000
}
```

### 2. Composition Plan Mode

Use a structured `compositionPlan` with per-section control over styles, duration, and lyrics. Generate plans automatically via `/eleven/plan`, then customize before generating.

```json theme={null}
{
  "compositionPlan": {
    "positive_global_styles": ["epic orchestral", "cinematic"],
    "negative_global_styles": ["lo-fi"],
    "sections": [
      {
        "section_name": "Intro",
        "positive_local_styles": ["soft piano", "building tension"],
        "duration_ms": 15000
      },
      {
        "section_name": "Verse",
        "positive_local_styles": ["warm vocals", "acoustic guitar"],
        "duration_ms": 30000,
        "lines": ["Walking through the golden fields", "Sunlight on my face"]
      }
    ]
  },
  "model": "music_v1",
  "musicLengthMs": 180000
}
```

<Tip>
  Use `/eleven/plan` first to generate a composition plan from a simple prompt, then review and customize sections before passing it to `/eleven/music`. The plan endpoint is free and doesn't consume credits.
</Tip>

## Output Formats

ElevenLabs supports multiple output formats via the `outputFormat` parameter:

| Format           | Description                              |
| ---------------- | ---------------------------------------- |
| `mp3_44100_128`  | MP3 44.1kHz 128kbps (default)            |
| `mp3_44100_192`  | MP3 44.1kHz 192kbps (Creator+ required)  |
| `pcm_44100`      | PCM 44.1kHz uncompressed (Pro+ required) |
| `opus_48000_128` | Opus 48kHz 128kbps                       |

<Info>
  See the full list of supported formats in the [Music Generation](/api-reference/eleven/music) endpoint documentation.
</Info>

***

### Explore the API Documentation

* [Generate Music](music) — Create music from prompts or composition plans
* [Create Plan](plan) — Generate a structured composition plan (free)
* [Video to Music](video-to-music) — Score videos with AI-generated music
* [List Voices](voices) — Browse voices for dialogue synthesis
* [Text to Dialogue](dialogue) — Multi-speaker dialogue synthesis
* [Get Task Status](task) — Poll task status and results
* [Stem Separation](stems) — Split audio into individual stems
* [Upload Audio](upload) — Upload audio for Inpainting editing (enterprise)
