Speech
Multi-speaker dialogue from ElevenLabs (v4, v4 Turbo or v3), billed per 1,000 characters. The voice ids are listed under Speech models on the overview.
Generate speech
Submits a multi-speaker dialogue and charges it. Price is driven by the total character count across every line, so keep the dialogue tight.
Headers
Idempotency-KeyMakes this submission safe to retry. A replay within 15 minutes returns
the original body with status 200 and is not charged again; a replay while
the first request is still in flight returns 409 request_in_progress.
The key is fingerprinted with the request's prompt (its dialogue, for
speech), so reusing a key with a different prompt starts a new
generation. A client_request_id body field works identically.
Generate speech › Request Body
The lines, in order. At most 6 lines and 10 distinct voices, with a combined text length of 5–5,000 characters. That combined length is what you are billed on.
modelOptional. Anything outside the catalog fails with invalid_model.
stability0 creative, 0.5 natural, 1 stable. Accepted as a number or a
string; anything other than these three values is rejected.
language_codeEmpty string auto-detects. Otherwise one of the supported codes.
Generate speech › Responses
An Idempotency-Key replay within 15 minutes. The body is byte-identical
to the original 202 and nothing was charged again.
idPoll this with GET /generations/{id}/.
typeMedia type of the job.
modelThe model as you requested it.
statusAlways processing — nothing is rendered yet.
credits_chargedAlready debited. This is the final price, except for seedance25 edit/extend jobs where it is a hold that is partially refunded after delivery.
created_at