Skip to main content
POST
Convert text to speech
Generates speech from text and returns the audio in the response body. For the conceptual walkthrough, SDK examples, and tips, see Docs: Create speech.

Endpoint

Path parameters

Request body

Supported languages by model

Voice settings

Unsupported settings are silently ignored — they don’t error.

Voice settings by model

Response

Default (include_phonemes=false): Binary audio in the body.
  • Content-Type: audio/wav or audio/mpeg (matches output_format).
  • X-Audio-Length header: duration of the generated audio in seconds.
When include_phonemes=true: JSON body with base64 audio plus phoneme arrays.

Notes

  • text over 300 characters returns 400. Use the Python or TypeScript SDK for automatic chunking, or split manually — see Long text.
  • speed applies after duration. Setting duration=5 with speed=2 produces ~10 seconds of audio.
  • When style is omitted, the first value in the voice’s styles array is used. Different voices can have different defaults — call Get voice to check.

See also

Docs: Create speech

Walkthrough with SDK examples.

Stream speech

Stream audio chunks instead of waiting for the full clip.

Authorizations

x-sup-api-key
string
header
required

Path Parameters

voice_id
string
required

Body

application/json
text
string
required

The text to convert to speech

Maximum string length: 300
language
enum<string>
required

The language code of the text

Available options:
en,
ko,
ja,
bg,
cs,
da,
el,
es,
et,
fi,
hu,
it,
nl,
pl,
pt,
ro,
ar,
de,
fr,
hi,
id,
ru,
vi,
hr,
lt,
lv,
sk,
sl,
sv,
tr,
uk
style
string

The style of character to use for the text-to-speech conversion

model
enum<string>
default:sona_speech_1

The model type to use for the text-to-speech conversion

Available options:
sona_speech_1,
sona_speech_2,
sona_speech_2_flash,
supertonic_api_1,
supertonic_api_3
output_format
enum<string>
default:wav

The desired output format of the audio file (wav, mp3). Default is wav.

Available options:
wav,
mp3
voice_settings
object
include_phonemes
boolean
default:false

Return phoneme timing data with the audio

normalized_text
string

Pre-normalized text for TTS. Only used with sona_speech_2 and sona_speech_2_flash models.

Response

Returns either binary audio or JSON with phoneme data based on include_phonemes parameter

Binary audio file (when include_phonemes=false or omitted)