Skip to content

Text to speech

Routed across ElevenLabs, LMNT, and Deepgram Aura. Voice aliases (female, male) map to a comparable native voice on each provider, so the same request works wherever it lands. Billing is per input character.

FormatProviders
mp3ElevenLabs, LMNT, Deepgram Aura
wavLMNT, Deepgram Aura (ElevenLabs is skipped automatically)
POST /v1/tools/speech
{
"text": "Your build finished — three tests fixed, zero regressions.",
"voice": "female",
"format": "mp3",
"routing": { "sort": "quality" }
}

Audio comes back base64-encoded, with the provider-native voice the alias resolved to:

{
"result": {
"audio_base64": "//uQxAAB…",
"format": "mp3",
"voice": "Rachel",
"characters": 58
}
}