Skip to main content
curl --request POST \
  --url https://users.rime.ai/v1/rime-tts \
  --header 'Accept: audio/webm;codecs=opus' \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --output output.webm \
  --fail \
  --data '{
  "text": "Hello from Rime!",
  "modelId": "mistv3",
  "speaker": "cove",
  "lang": "en",
  "samplingRate": 24000
}'

Documentation Index

Fetch the complete documentation index at: https://docs.rime.ai/llms.txt

Use this file to discover all available pages before exploring further.

The streaming endpoint returns audio bytes in the format specified by the Accept header.

Audio Formats

Set the Accept header to one of the following values:
FormatAccept HeaderNotes
Opus (WebM)audio/webm;codecs=opusRecommended. Opus offers excellent compression. WebM streams natively in browsers.
Opus (OGG)audio/ogg;codecs=opusOpus offers excellent compression. OGG container.
MP3audio/mp3Lower compression rate than Opus. Highest compatibility across devices and players.
WAVaudio/wavUncompressed. RIFF WAVE header with 16-bit little-endian linear PCM samples. Streams natively in browsers.
PCMaudio/pcmHeaderless 16-bit little-endian linear PCM.
G.711 μ-lawaudio/x-mulawHeaderless stream of audio bytes.

Variable Parameters

speaker
string
required
Must be one of the voices listed in our documentation.
text
string
required
The text you’d like spoken. Character limit per request is 500 via the API and 1,000 in the dashboard UI.
modelId
string
Set to mistv3.
samplingRate
number
default:"24000"
The sampling rate (Hz).
timeScaleFactor
number
default:"1.0"
The time scaling factor.A value above 1.0 slows down the audio, a value below 1.0 speeds up the audio.
lang
string
default:"en"
If provided, the language must match the language spoken by the provided speaker. This can be checked in our voices documentation.
pauseBetweenBrackets
bool
default:"false"
When set to true, adds pauses between words enclosed in angle brackets. The number inside the brackets specifies the pause duration in milliseconds. Example: Hi. <200> I'd love to have a conversation with you. adds a 200ms pause. Learn more about custom pauses.
phonemizeBetweenBrackets
bool
default:"false"
When set to true, you can specify the phonemes for a word enclosed in curly brackets. Example: {h'El.o} World will pronounce “Hello” as expected. Learn more about custom pronunciation.
inlineSpeedAlpha
string
Comma-separated list of speed values applied to words in square brackets. Values > 1.0 speed up speech, < 1.0 slow it down. Example: “This is [slow] and [fast]”, use “0.5, 3” to make “slow” slower and “fast” faster.
curl --request POST \
  --url https://users.rime.ai/v1/rime-tts \
  --header 'Accept: audio/webm;codecs=opus' \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --output output.webm \
  --fail \
  --data '{
  "text": "Hello from Rime!",
  "modelId": "mistv3",
  "speaker": "cove",
  "lang": "en",
  "samplingRate": 24000
}'