GET
/v1/schemas/runway/audio/v1/speech_to_speech
Accept:
| field | recorded source |
|---|---|
| schema | Source linked above. upstream-spec Source tracecbe9ae85cc6ad0ff714fd5ad664993f943b9d51a6155383212951177e4bc2acb{
"fetchedAt": 1786771313,
"extractorVersion": "1",
"verifiedAt": null
} |
Request body
0 properties · 0 required · 0 $defsThis schema isn’t a plain object with properties — showing the raw JSON instead.
application/json
{
"provider": "runway",
"activity": "audio",
"endpointId": "v1/speech_to_speech",
"kind": "input",
"contentHash": "3b6bb32df4a25a9bb8e5baff94cc4759eef8a7b94bf5ab2d11cd3a5f30479425",
"specRevision": null,
"provenance": {
"sourceUrl": "https://raw.githubusercontent.com/runwayml/openapi/next/openapi.json",
"sourceHash": "cbe9ae85cc6ad0ff714fd5ad664993f943b9d51a6155383212951177e4bc2acb",
"fetchedAt": 1786771313,
"extractorVersion": "1",
"derivation": "upstream-spec",
"verifiedAt": null
},
"createdAt": 1786771313,
"supersededAt": null,
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"oneOf": [
{
"title": "eleven_multilingual_sts_v2",
"type": "object",
"properties": {
"removeBackgroundNoise": {
"description": "Whether to remove background noise from the generated speech.",
"type": "boolean"
},
"media": {
"oneOf": [
{
"title": "SpeechToSpeechAudio",
"description": "An audio file containing dialogue to be processed.",
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "audio"
},
"uri": {
"description": "A HTTPS URL, Runway or data URI containing an encoded audio. See [our docs](/assets/inputs#audio) on audio inputs for more information.",
"example": "https://example.com/audio.mp3",
"anyOf": [
{
"description": "A HTTPS URL, Runway upload URI, or base64 data URI (e.g. `data:audio/mp3;base64,...`, up to 16MB) containing an encoded audio. See [our docs](/assets/inputs#audio) on audio inputs for more information.",
"example": "https://example.com/audio.mp3",
"type": "string",
"minLength": 13,
"maxLength": 2048,
"pattern": "^https:\\/\\/.*"
},
{
"description": "A Runway upload URI. See https://docs.dev.runwayml.com/assets/uploads for more information.",
"example": "runway://<token>",
"type": "string",
"minLength": 13,
"maxLength": 5000,
"pattern": "^runway:\\/\\/.*"
},
{
"description": "A data URI containing encoded media.",
"example": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==",
"type": "string",
"minLength": 13,
"maxLength": 16777216,
"pattern": "^data:audio\\/.*"
}
]
}
},
"required": [
"type",
"uri"
]
},
{
"title": "SpeechToSpeechVideo",
"description": "A video file containing dialogue to be processed.",
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "video"
},
"uri": {
"description": "A HTTPS URL, Runway or data URI containing an encoded video. See [our docs](/assets/inputs#videos) on video inputs for more information.",
"example": "https://example.com/video.mp4",
"anyOf": [
{
"description": "A HTTPS URL, Runway upload URI, or base64 data URI (e.g. `data:video/mp4;base64,...`, up to 16MB) containing an encoded video. See [our docs](/assets/inputs#videos) on video inputs for more information.",
"example": "https://example.com/video.mp4",
"type": "string",
"minLength": 13,
"maxLength": 2048,
"pattern": "^https:\\/\\/.*"
},
{
"description": "A Runway upload URI. See https://docs.dev.runwayml.com/assets/uploads for more information.",
"example": "runway://<token>",
"type": "string",
"minLength": 13,
"maxLength": 5000,
"pattern": "^runway:\\/\\/.*"
},
{
"description": "A data URI containing encoded media.",
"example": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==",
"type": "string",
"minLength": 13,
"maxLength": 16777216,
"pattern": "^data:video\\/.*"
}
]
}
},
"required": [
"type",
"uri"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
"voice": {
"description": "The voice to use for the generated speech.",
"oneOf": [
{
"title": "RunwayPresetVoice",
"description": "A voice preset from the RunwayML API.",
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "runway-preset"
},
"presetId": {
"description": "The preset voice ID to use for the generated speech.",
"type": "string",
"enum": [
"Maya",
"Arjun",
"Serene",
"Bernard",
"Billy",
"Mark",
"Clint",
"Mabel",
"Chad",
"Leslie",
"Eleanor",
"Elias",
"Elliot",
"Grungle",
"Brodie",
"Sandra",
"Kirk",
"Kylie",
"Lara",
"Lisa",
"Malachi",
"Marlene",
"Martin",
"Miriam",
"Monster",
"Paula",
"Pip",
"Rusty",
"Ragnar",
"Xylar",
"Maggie",
"Jack",
"Katie",
"Noah",
"James",
"Rina",
"Ella",
"Mariah",
"Frank",
"Claudia",
"Niki",
"Vincent",
"Kendrick",
"Myrna",
"Tom",
"Wanda",
"Benjamin",
"Kiana",
"Rachel"
]
}
},
"required": [
"type",
"presetId"
]
}
],
"discriminator": {
"propertyName": "type"
}
},
"model": {
"type": "string",
"const": "eleven_multilingual_sts_v2"
}
},
"required": [
"media",
"voice",
"model"
]
}
],
"discriminator": {
"propertyName": "model"
}
}
}Validate a payload
before you spend tokensshell
$ curl -X POST https://modelschemas.com/v1/validate \
-d '{"provider":"runway","endpointId":"v1/speech_to_speech","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}