Skip to main content
POST
Converts a script into speech. The voice you pick decides the model: one of 20 ElevenLabs Eleven v3 voices, one of 12 MiniMax preset voices, or one of your cloned voices. Credits are deducted when the job is queued. Poll Poll voiceover status with the returned generation.id until status is COMPLETED or FAILED. Pick a voice first. List voices has the Eleven v3 voices with preview clips; List voices you can use adds the MiniMax presets and your clones.

Headers

Request body

string
required
Script to convert to speech. Max 10,000 characters. Use <#x#> between words to insert a pause of x seconds (0.01–99.99), e.g. Hello <#1.5#> world.
string
required
Voice to use:
  • Eleven v3: Aria, Roger, Sarah, Laura, Charlie, George, Callum, River, Liam, Charlotte, Alice, Matilda, Will, Jessica, Eric, Chris, Brian, Daniel, Lily, Bill
  • MiniMax presets: Friendly_Person, Wise_Woman, Deep_Voice_Man, Calm_Woman, Casual_Guy, Lively_Girl, Inspirational_girl, Determined_Man, Lovely_Girl, Elegant_Man, English_CaptivatingStoryteller, English_ConfidentWoman
  • Your clones: the clone id from List voices you can use
string
Delivery for MiniMax preset voices: happy, sad, angry, fearful, disgusted, surprised or neutral. Default: neutral. Eleven v3 voices ignore it.
number
Speaking speed, 0.5–2. Default: 1.
string
mp3, wav or flac. Default: mp3. Eleven v3 voices always return mp3.
number
Eleven v3 voices only, 0–1. Higher values give a more consistent delivery; lower values are more expressive. Left out, the provider’s default applies. Other voices ignore it.
number
Eleven v3 voices only, 0–1. How closely the output sticks to the base voice; very high values can cause artifacts. Left out, the provider’s default applies. Other voices ignore it.

Credits

Async completion

Poll Poll voiceover status with generation.id until status is COMPLETED or FAILED. Webhooks are not supported on the public API.

Response

Example

Errors

Authorizations

Authorization
string
header
required

An Unsora API key (uns_…). A Clerk session token also works.

Headers

Idempotency-Key
string

API key requests only. Retrying with the same key within 24 hours replays the first response (with the Idempotent-Replayed: true header) instead of charging again. The body isn't compared; reusing the key on a different endpoint returns 409 IDEMPOTENCY_CONFLICT. Keys over 128 characters are ignored.

Maximum string length: 128

Body

application/json

Credits: Eleven v3 voices 6 per started 1,000 characters; MiniMax preset voices 1 per started 1,000 characters; your cloned voices 3 per started 500 characters (minimum 3).

text
string
required

Script to convert to speech (max 10,000 chars). Supports <#x#> tags between words to pause for x seconds (0.01–99.99).

Maximum string length: 10000
voice_id
string
required

A voice from GET /voiceovers/voices (20 Eleven v3 voices such as Aria or Roger), a MiniMax preset (Friendly_Person, Wise_Woman, Deep_Voice_Man, Calm_Woman, Casual_Guy, Lively_Girl, Inspirational_girl, Determined_Man, Lovely_Girl, Elegant_Man, English_CaptivatingStoryteller, English_ConfidentWoman), or the id of one of your cloned voices from GET /voice-clones. The voice decides which model runs.

emotion
enum<string>
default:neutral

Delivery, for MiniMax preset voices. Ignored by Eleven v3 voices.

Available options:
happy,
sad,
angry,
fearful,
disgusted,
surprised,
neutral
speed
number
default:1

Speaking speed.

Required range: 0.5 <= x <= 2
output_format
enum<string>
default:mp3

Audio format. Eleven v3 voices always return mp3.

Available options:
mp3,
wav,
flac
stability
number

Eleven v3 voices only (ignored otherwise). Higher = more consistent delivery, lower = more expressive. Omitted: the provider's default.

Required range: 0 <= x <= 1
similarity
number

Eleven v3 voices only (ignored otherwise). How closely the output sticks to the base voice. Omitted: the provider's default.

Required range: 0 <= x <= 1
model
enum<string>

Validated but not needed: the model follows from voice_id.

Available options:
eleven-v3,
minimax-speech-2.6-hd,
elevenlabs-multilingual-v2

Response

Job queued

success
boolean
required
generation
object
required
creditsDeducted
number
required
creditsRemaining
number
required