Product
POST /v1/tts
Text to speech
Voices that pronounce Indian names correctly, switch scripts mid-sentence, and sound the same next month as they do today. Three tiers, one endpoint.
Models
| Version | Aliases | Rate / 1M chars |
|---|---|---|
echo-turbo-1.0.0 Lowest latency. Voice agents and IVR. | echo-turbo · echo-turbo-1 | $8 |
echo-1.0.0 The default. Balanced quality and speed. | echo-1 · echo-latest | $15 |
echo-pro-1.0.0 Most expressive. Narration and long form. | echo-pro · echo-pro-1 | $40 |
Aliases move when a new version ships. Exact versions never do — pin one to a key and that key is frozen until you change it.
Controls
| text | 1 – 5 000 characters, whitespace collapsed |
| voice_id | 14 public voices, plus your org's own |
| speed | 0.25 – 4.0× · out of range is rejected, not clamped |
| pitch | −20 – +20 semitones |
| seed | any integer · same seed, same bytes |
| output_format | wav_<rate> · pcm_<rate> · mulaw_<rate> |
✓ mulaw_8000 for telephony✓ pcm for streaming into your own mixer✓ mp3 and opus are not available yet
Example
One request, one wav file.
import requests r = requests.post( "https://api.vocalix.ai/v1/tts", headers={"Authorization": f"Bearer {KEY}"}, json={ "text": "आपका parcel आज शाम तक deliver हो जाएगा।", "voice_id": "meera-hi", "model": "echo-1", "output_format": "wav_22050", "speed": 1.0, "seed": 42, }, ) r.raise_for_status() open("reply.wav", "wb").write(r.content) print(r.headers["X-Vocalix-Model-Version"]) # echo-1.0.0