Skip to main content
POST
Use POST /runwayml/v1/text_to_speech to create a speech task from text. Send your CometAPI API key with Bearer authentication and a JSON request body.

Choose a model and voice

Every request requires model, promptText, and voice. For preset voices, select a presetId from the request schema. For seed_audio, replace the example audioUri with an accessible HTTPS URL of your voice reference. Do not omit voice or send null for this field.

Adjust speech expression

With eleven_v3, promptText can include expressive tags such as [whispers] or [laughs]. The model also accepts these controls: For stability, similarityBoost, and style, a value of 0 uses the model default, as does omitting the field. useSpeakerBoost: false also uses the model default. To set a sampling seed, use a positive integer; seed: 0 chooses a seed automatically.

Adjust speech speed and format

With seed_audio, use speechRate and loudnessRate from -50 to 100, or pitchRate from -12 to 12 semitones. These controls accept integers; omission or 0 keeps the normal value. Set sampleRate to 8000, 16000, 24000, 32000, 44100, or 48000 Hz. Set outputFormat to wav, mp3, or ogg_opus. Do not include duration, referenceAudios, or Eleven v3 controls with seed_audio on this endpoint.

Retrieve the result

Save the returned id, then use Get a Runway task to retrieve task status. When status is SUCCEEDED, read the audio URLs in output. If the task fails, inspect failure and failureCode.

Authorizations

Authorization
string
header
required

Use your CometAPI API key.

Body

application/json

Request settings for eleven_multilingual_v2.

model
enum<string>
required

Model ID for this request.

Available options:
eleven_multilingual_v2
Allowed value: "eleven_multilingual_v2"
promptText
string
required

Text to speak, from 1 to 1000 UTF-16 code units.

Required string length: 1 - 1000
voice
RunwayPresetVoice · object
required

The voice to use for the generated speech.

Response

Task created. Save the returned id to retrieve task status.

id
string
required

Task ID for GET /runwayml/v1/tasks/{id}.

status
string

Task state, when returned.

createdAt
string<date-time>

Task submission timestamp, when returned.

output
string<uri>[]

Result URLs, when returned.

failure
string

Failure explanation, when returned.

failureCode
string

Machine-readable failure code, when returned.

estimatedCost
object

Task estimate metadata, when returned.

cost
object

Task cost metadata, when returned.

Last modified on September 21, 2026