Skip to main content

Overview

Every Atlas voice is served two ways: a one-shot HTTP endpoint (POST /v1/audio/speech, OpenAI-compatible) and a WebSocket stream that returns audio sentence-by-sentence. Use the WebSocket service for interactive, real-time applications; use HTTP when you want a complete audio file per request.

HTTP endpoint reference

Full request/response reference for POST /v1/audio/speech.

Streaming reference

The WebSocket frame protocol for sentence-by-sentence audio.

Prerequisites

Account setup

  1. Sign in to the Atlas playground.
  2. Open API keys and create a key — the sk_… plaintext is shown only once.

Required environment variables

Your sk_ key is a secret. Send it only from your server — never ship it in client-side code. Keys are stored hashed on our side and cannot be recovered, only rotated.

Configuration

Request parameters

string
required
The voice id, e.g. lylla. List available voices via /v1/models.
string
required
The text to speak.
string
default:"wav"
Output audio format: wav, mp3, pcm, opus, or flac. With pcm the HTTP response is streamed as it is synthesized.
string
Accepted for OpenAI SDK compatibility but ignored — the voice selects the model. Pass any placeholder (e.g. "atlas-tts").

Response headers

Usage

Generate a clip (HTTP)

Stream sentence-by-sentence (WebSocket)

Python

Notes

  • The standard catalogue is English; Hindi voices are available to enterprise accounts — contact us for access.
  • Hindi voices accept Devanagari or romanized Hindi (Hinglish)"Kya haal hai?" and "क्या हाल है?" both work; romanized input is transliterated before synthesis.
  • The WebSocket service emits one binary audio frame per sentence — begin playback on the first frame for the lowest perceived latency.
  • Usage is metered per account in characters per day, with a per-minute request rate limit. 429 responses carry a quota_error body — see Errors.
  • The model request field is ignored; the voice is the sole selector.