Hosts and authentication
Rime publishes Python
rime-api and JavaScript @rimelabs/api for generated TTS message definitions and schemas. These packages cover the standalone engine protocol. Your application still manages connections and authentication. The cloud examples below use standard HTTP and WebSocket clients.
The Coda Protobuf quickstart uses rime-api message definitions with a standard WebSocket client.
Synthesize speech (HTTP)
POST https://coda.api.rime.ai/ returns audio bytes in the format named by your Accept header (audio/mpeg, audio/wav, audio/webm;codecs=opus, audio/ogg;codecs=opus, audio/L16, audio/PCMU):
Stream Coda speech over WebSocket
Connect towss://coda.api.rime.ai/ws with rime.v1.json and wait for ready. Send these messages separately to stream a sentence as PCM audio:
audio values as they arrive. Read until done, which leaves the socket open. To interrupt, stop playback and send {"contextId":"turn-1","cancel":{}}.
Use the JSON quickstart for a runnable client and the Coda WebSocket API reference for parameters, events, and binary encoding.
For Mist, use the model-specific WebSocket reference.
List voices
Both voice endpoints are public and require no API key.Check vocabulary coverage (/oov)
Returns the input words that are not in Rime’s pronunciation dictionary:
Normalize text (/textnorm)
Preview exactly how numbers, dates, and phone numbers will be spoken. Note the host: optimize.rime.ai.
HTTP and legacy WebSocket parameters
This table covers HTTP and the legacy WebSocket endpoints. For Coda WebSocket v1, uselanguage and audioParameters inside start. See the Coda WebSocket parameters for the full list.
Where to go deeper
- API reference index: every endpoint across every model
- WebSocket API overview: endpoint comparison, timestamps, interruption handling
- Build a voice agent: complete apps in Next.js, Vite, Express, plain Node, and FastAPI
- Rime CLI and the hosted MCP server: tooling around this same API

