Introducing Song Creator Pro — create music with AI, locally on your device. Try it now →

Text to Speech API

Text to speech API with natural voices and style control

Send text and a speaker name in one request and get a WAV file back.

Available now as a local API in the desktop app. Cloud API coming soon.

POST/api/v1/tts/generate
curl -X POST "http://127.0.0.1:8100/api/v1/tts/generate?sync=true" \
-H "Content-Type: application/json" \
-d '{
"text": "Welcome to the product tour.",
"speaker": "Vivian",
"language": "English"
}'

What developers build with it

Each request returns up to about 3 minutes of speech. For longer scripts, send one request per paragraph.

  • Narration for product tours, explainers and course lessons, generated from your CMS
  • Spoken versions of articles or newsletters, rebuilt whenever the text changes
  • Voice lines for games and prototypes, regenerated with a fixed seed so takes stay the same
See the product page
Response
{
"success": true,
"status": "Generated successfully",
"audio_base64": "UklGRiQAAABXQVZFZm10..."
}

Want text to speech without running the app locally?

Endpoints

Text to speech endpoints

MethodPathWhat it does
POST/api/v1/tts/generateGenerate speech from text with a preset speaker
GET/api/v1/tts/speakersList the built-in speakers
GET/api/v1/tts/languagesList supported languages
GET/api/v1/generation/progressPoll a generation started without sync

Cloud API

Join the cloud API waitlist

We're building a cloud API. Pick the features you need and roughly how much you'd use, and your answers decide which ones come first.

Which features do you need?

We'll only email you about the API. Unsubscribe anytime.

FAQ

Common Questions

Up to about 3 minutes of speech per request. For longer scripts, send one request per paragraph, or use the audiobook endpoints, which split a manuscript into segments for you.

The preset speakers cover 10 languages. For other languages, clone or design a voice instead: voice cloning and voice design support 600+ languages.

Yes. Pass an instruct string with the request, for example "speak slowly and warmly", and the speaker reads the text in that style. A seed in generation_params keeps results repeatable.

No. The local API is part of the desktop app, a one-time purchase, so there is no per-character or per-request fee. Generation runs on your own computer.