Realtime TTS-2 is live. Built for realtime conversation that feels human. Learn more

Build with Realtime TTS

Synthesize Speech

Send up to 2,000 characters and receive the complete audio in a single HTTP response

The non-streaming API is the simplest way to synthesize a short piece of text: send one request and receive the complete audio in one HTTP response. It accepts up to 2,000 characters per request.

The server generates the entire audio before returning it, so playback starts later than with a streaming method. Use this API when a simple, one-shot integration matters more than latency or input size. For most other use cases, choose one of the methods below.

Choose a synthesis method

If you needUseWhy
The lowest possible latencyWebSocket APIReuses a persistent connection and streams audio chunks as they are generated.
Low latency with a simpler integrationStreaming APIStreams audio over HTTP and accepts up to 4,000 characters per request.
A drop-in replacement for OpenAI text-to-speechOpenAI compatibilityWorks with the OpenAI SDKs once the base URL, API key, model, and voice point at Inworld, and streams audio like the Streaming API.
Long-form audio such as audiobooks, podcasts, or voiceoversAsync APIAccepts up to 100,000 characters per job and returns the result after background generation. On-Demand accounts are capped at 10,000 characters per job.
Lower-cost generation that can finish laterBatch APICosts 20% less per character and processes many independent requests in the background.
The simplest integration for short textSynthesize SpeechReturns the complete audio in one response, with a 2,000-character request limit.

See the latency best practices for more ways to reduce time to first audio.

Code Examples

API Reference

Synthesize Speech

View the complete API specification

Next Steps