ElevenLabs · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Elevenlabs Text to Speech API

8 actions 8 updates phrasing extends openapi/elevenlabs-text-to-speech-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for ElevenLabs's API. It is a proposal applied on top of the contract, not a document ElevenLabs publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 8

$.info
$.paths['/v1/text-to-speech/{voice_id}'].post
$.paths['/v1/text-to-speech/{voice_id}/stream'].post
$.paths['/v1/text-to-speech/{voice_id}/with-timestamps'].post
$.paths['/v1/text-to-speech/{voice_id}/stream/with-timestamps'].post
$.paths['/v1/flows/text-to-speech'].get
$.paths['/v1/flows/text-to-speech'].post
$.paths['/v1/flows/text-to-speech/{generation_id}'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Elevenlabs Text to Speech API
  version: 1.0.0
extends: openapi/elevenlabs-text-to-speech-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 7
- target: $.paths['/v1/text-to-speech/{voice_id}'].post
  update:
    x-apievangelist-phrasing:
      intent: Convert text to speech in one response
      effect: write
      questions:
      - How do I turn a paragraph of text into an MP3 with a specific voice?
      - Can I get the same audio twice by passing a seed?
      - Which output formats can text-to-speech return?
      instructions:
      - text: Say {text} in voice {voice_id}.
        slots:
          text: requestBody.text
          voice_id: path.voice_id
      - text: Generate speech for {text} with voice {voice_id} as {output_format}.
        slots:
          text: requestBody.text
          voice_id: path.voice_id
          output_format: query.output_format
      - text: Read {text} aloud with voice {voice_id} using model {model_id} and seed {seed}.
        slots:
          text: requestBody.text
          voice_id: path.voice_id
          model_id: requestBody.model_id
          seed: requestBody.seed
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/text-to-speech/{voice_id}/stream'].post
  update:
    x-apievangelist-phrasing:
      intent: Stream text-to-speech audio for low latency
      effect: write
      questions:
      - What's the best way to start playing speech before the whole clip is generated?
      - Can text-to-speech audio arrive in chunks for real-time playback?
      instructions:
      - text: Stream {text} as speech in voice {voice_id}.
        slots:
          text: requestBody.text
          voice_id: path.voice_id
      - text: Stream audio of {text} from voice {voice_id} in format {output_format} for live playback.
        slots:
          text: requestBody.text
          voice_id: path.voice_id
          output_format: query.output_format
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/text-to-speech/{voice_id}/with-timestamps'].post
  update:
    x-apievangelist-phrasing:
      intent: Generate speech with word-level timings
      effect: write
      questions:
      - How can I highlight words on screen in sync with generated speech?
      - Does text-to-speech return timing for each word along with the audio?
      instructions:
      - text: Generate speech for {text} in voice {voice_id} with word timestamps.
        slots:
          text: requestBody.text
          voice_id: path.voice_id
      - text: Voice {text} with {voice_id} and return per-word timing for captions.
        slots:
          text: requestBody.text
          voice_id: path.voice_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/text-to-speech/{voice_id}/stream/with-timestamps'].post
  update:
    x-apievangelist-phrasing:
      intent: Stream speech with word-level timings
      effect: write
      questions:
      - Can I stream audio and get word timestamps at the same time?
      - How do I build live karaoke-style captions from streamed speech?
      instructions:
      - text: Stream {text} in voice {voice_id} with word timestamps.
        slots:
          text: requestBody.text
          voice_id: path.voice_id
      - text: Stream speech and word timing for {text} using voice {voice_id} and language {language_code}.
        slots:
          text: requestBody.text
          voice_id: path.voice_id
          language_code: requestBody.language_code
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/flows/text-to-speech'].get
  update:
    x-apievangelist-phrasing:
      intent: List queued asynchronous speech generations
      effect: read
      questions:
      - Where can I see the asynchronous speech generation jobs I've queued?
      - Can I list only the queued speech jobs that are still in progress?
      instructions:
      - text: List my asynchronous speech generation jobs.
      - text: Show queued speech jobs with status {status}.
        slots:
          status: query.status
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/flows/text-to-speech'].post
  update:
    x-apievangelist-phrasing:
      intent: Queue an asynchronous speech generation job
      effect: write
      questions:
      - Is there an asynchronous alternative to generating speech in a single request?
      - Can I use a speech model that's only available through the generation lifecycle?
      instructions:
      - text: Queue an asynchronous speech generation.
      - text: Create a speech generation job to poll later instead of synthesizing inline.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/flows/text-to-speech/{generation_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a queued speech generation's result
      effect: read
      questions:
      - Has my queued speech job finished, and where's its output?
      - How do I poll a speech generation job for its audio URL?
      instructions:
      - text: Poll speech generation job {generation_id}.
        slots:
          generation_id: path.generation_id
      - text: Fetch the result URL of queued speech job {generation_id}.
        slots:
          generation_id: path.generation_id
      method: generated
      generated: '2026-09-26'

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/elevenlabs-text-to-speech-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.