Every request requires model and promptText. The voice field is required
for eleven_multilingual_v2, eleven_v3, and eleven_v4, and optional for seed_audio.
Model ID
Text limit
Voice configuration
eleven_multilingual_v2
1000 UTF-16 code units
type: runway-preset and a presetId, such as Maya
eleven_v3
5000 characters
type: runway-preset and a presetId, such as Maya
eleven_v4
Non-empty text
type: runway-preset and a presetId, such as Maya
seed_audio
2048 characters
Omit voice for a default voice, or use type: reference-audio and an audioUri
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.
With eleven_v3, promptText can include expressive tags such as [whispers]
or [laughs]. The model also accepts these controls:
Field
Values
Meaning
stability
Number from 0 to 1
Lower nonzero values allow more expression; higher values are steadier.
similarityBoost
Number from 0 to 1
Higher values follow the selected voice more closely.
style
Number from 0 to 1
Higher values emphasize the voice style.
speed
Number from 0.7 to 1.2
1 uses normal speed.
useSpeakerBoost
true
Request greater similarity to the selected voice.
languageCode
ISO 639-1 language code
Guide pronunciation and text normalization.
applyTextNormalization
auto, on, off
Control how text such as numbers becomes spoken words.
seed
Integer from 1 to 4294967295
Set the sampling seed.
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.
Continue speech from text generated before this request.
nextText
String
Lead speech into text generated after this request.
seed
Integer from 0 to 4294967295
Choose a seed for more consistent output.
eleven_v4 does not use applyTextNormalization. The previousText and
nextText fields are useful when you generate adjacent segments and want the
model to keep the transition coherent.
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.
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.
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"CometAPI Documentation","description":"CometAPI developer documentation for unified API access to GPT, Claude, Gemini, Grok, Llama, DeepSeek, Mistral, Qwen, and more, including API reference, quickstart guides, and integration tutorials.","colors":{"primary":"#00ACE2","light":"#00ACE2","dark":"#0274C3"},"logo":{"light":"https://mintcdn.com/cometapi/cmhWX83dzrkf2F-2/logo/comet-light.svg?fit=max\u0026auto=format\u0026n=cmhWX83dzrkf2F-2\u0026q=85\u0026s=7ae2fde0df7785d111912bce23157ef2","dark":"https://mintcdn.com/cometapi/cmhWX83dzrkf2F-2/logo/comet-dark.svg?fit=max\u0026auto=format\u0026n=cmhWX83dzrkf2F-2\u0026q=85\u0026s=2d25d0a1c0376b7a3b5b2b06c4149fbc"},"favicon":"https://mintcdn.com/cometapi/cmhWX83dzrkf2F-2/logo/comet.svg?fit=max\u0026auto=format\u0026n=cmhWX83dzrkf2F-2\u0026q=85\u0026s=bd1150b78a8058af98088b06cbe67cdc","api":{"playground":{"display":"interactive","proxy":true},"examples":{"defaults":"required","prefill":true}},"navbar":{"links":[{"href":"https://www.cometapi.com/models/","label":"Models"}],"primary":{"type":"button","label":"Dashboard","href":"https://www.cometapi.com/console"}},"footer":{},"seo":{"metatags":{"og:site_name":"CometAPI Docs","og:type":"website","twitter:card":"summary_large_image","canonical":"https://apidoc.cometapi.com","author":"CometAPI","copyright":"Copyright 2026 CometAPI","category":"Technology","distribution":"global","coverage":"Worldwide"},"indexing":"navigable"},"integrations":{"posthog":{"apiKey":"phc_y3KwBz46V9TGDjqPtDrpuSahVg3bDky6eyzGsD8vuCYS","sessionRecording":false}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity"],"display":"header"},"interaction":{"drilldown":false},"metadata":{"timestamp":true},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","href":""},{"language":"zh-Hans","href":"zh-Hans"},{"language":"zh-Hant","href":"zh-Hant"},{"language":"ja","href":"ja"},{"language":"ko","href":"ko"},{"language":"fr","href":"fr"},{"language":"de","href":"de"},{"language":"es","href":"es"},{"language":"it","href":"it"},{"language":"pt","href":"pt"},{"language":"ru","href":"ru"},{"language":"ar","href":"ar"},{"language":"vi","href":"vi"},{"language":"id","href":"id"},{"language":"tr","href":"tr"},{"language":"pl","href":"pl"},{"language":"nl","href":"nl"},{"language":"no","href":"no"},{"language":"uk","href":"uk"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"cometapi","hasAudioNarration":false,"actualSubdomain":"cometapi","customDomains":["apidoc.cometapi.com"],"gitSource":{"type":"github","owner":"cometapi-dev","repo":"cometapi-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae2ec350f3a19b455e9452e","collectionId":"ac249683-b28e-4ebb-9061-39e00c026722","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae2ec350f3a19b455e9452e"},"entitlements":{},"buildId":"6ae2ec350f3a19b455e9452e","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"en","tag":"API","count":109},{"language":"en","tag":"Video Models","count":66},{"language":"en","tag":"Integrations","count":53},{"language":"en","tag":"Docs","count":35},{"language":"en","tag":"Kling","count":33},{"language":"en","tag":"Image Models","count":28},{"language":"en","tag":"AI chat clients","count":14},{"language":"en","tag":"Runway","count":13},{"language":"en","tag":"Midjourney","count":10},{"language":"en","tag":"AI coding agents","count":10}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"img[src*=\"cloudfront.net/flags/\"]{display:none!important}div.relative:has(>img[src*=\"cloudfront.net/flags/\"]){display:none!important}#localization-select-item-zh-Hans{display:none!important}nav a.link[class~=\"bg-gray-950/[0.03]\"]{background-color:rgb(var(--primary) / 0.12);box-shadow:inset 0 0 0 1px rgb(var(--primary) / 0.38), 0 1px 2px rgb(var(--primary) / 0.08);color:rgb(var(--primary))}nav a.link[class~=\"bg-gray-950/[0.03]\"]:hover,nav a.link[class~=\"bg-gray-950/[0.03]\"]:focus-visible{background-color:rgb(var(--primary) / 0.18);box-shadow:inset 0 0 0 1px rgb(var(--primary) / 0.58), 0 1px 2px rgb(var(--primary) / 0.1);color:rgb(var(--primary))}nav a.link[class~=\"bg-gray-950/[0.03]\"]:focus-visible{outline:2px solid rgb(var(--primary) / 0.45);outline-offset:2px}.dark nav a.link[class~=\"bg-gray-950/[0.03]\"]{background-color:rgb(var(--primary-light) / 0.2);box-shadow:inset 0 0 0 1px rgb(var(--primary-light) / 0.55), 0 1px 2px rgb(var(--primary-light) / 0.16);color:rgb(var(--primary-light))}.dark nav a.link[class~=\"bg-gray-950/[0.03]\"]:hover,.dark nav a.link[class~=\"bg-gray-950/[0.03]\"]:focus-visible{background-color:rgb(var(--primary-light) / 0.28);box-shadow:inset 0 0 0 1px rgb(var(--primary-light) / 0.7), 0 1px 2px rgb(var(--primary-light) / 0.18);color:rgb(var(--primary-light))}.integration-logo-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:12px;margin:16px 0 28px}.integration-logo-card{align-items:center;background:rgba(127, 127, 127, 0.04);border:1px solid rgba(127, 127, 127, 0.22);border-radius:8px;color:inherit;display:flex;gap:14px;min-height:72px;padding:14px 16px;text-decoration:none!important;transition:background 160ms ease, border-color 160ms ease, transform 160ms ease}.integration-logo-card:hover,.integration-logo-card:focus-visible{background:rgba(0, 172, 226, 0.08);border-color:rgba(0, 172, 226, 0.55);transform:translateY(-1px)}.integration-logo-card:focus-visible{outline:2px solid rgba(0, 172, 226, 0.45);outline-offset:2px}.integration-logo-mark{align-items:center;background:#fff;background-position:center;background-repeat:no-repeat;background-size:28px 28px;border:1px solid rgba(127, 127, 127, 0.18);border-radius:8px;display:flex;flex:0 0 38px;height:38px;justify-content:center;overflow:hidden;width:38px}.integration-logo-body{display:flex;flex-direction:column;gap:2px;min-width:0}.integration-logo-title{font-size:0.95rem;font-weight:600;line-height:1.3}.integration-logo-subtitle{color:rgba(90, 90, 90, 0.92);font-size:0.78rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.integration-card-arrow{color:rgba(90, 90, 90, 0.7);flex:0 0 16px;font-size:0.9rem;margin-left:auto;text-align:right}.integration-card-arrow::before{content:\"\\2197\"}.integration-logo-ai-sdk{background-image:url(\"/images/integrations/logos/ai-sdk.png\")}.integration-logo-agno{background-image:url(\"/images/integrations/logos/agno.png\")}.integration-logo-claude-code{background-image:url(\"/images/integrations/logos/claude-code.png\")}.integration-logo-claude-desktop{background-image:url(\"/images/integrations/logos/claude-desktop.png\")}.integration-logo-codex{background-image:url(\"/images/integrations/logos/codex.png\")}.integration-logo-dify{background-image:url(\"/images/integrations/logos/dify.png\")}.integration-logo-gemini-cli{background-image:url(\"/images/integrations/logos/gemini-cli.png\")}.integration-logo-hermes-agent{background-image:url(\"/images/integrations/logos/hermes-agent.png\");background-size:34px 34px}.integration-logo-langchain{background-image:url(\"/images/integrations/logos/langchain.png\")}.integration-logo-langflow{background-image:url(\"/images/integrations/logos/langflow.png\")}.integration-logo-langfuse{background-image:url(\"/images/integrations/logos/langfuse.png\")}.integration-logo-litellm{background-image:url(\"/images/integrations/logos/litellm.png\")}.integration-logo-llamaindex{background-image:url(\"/images/integrations/logos/llamaindex.png\")}.integration-logo-lobe-chat{background-image:url(\"/images/integrations/logos/lobe-chat.jpg\")}.integration-logo-make{background-image:url(\"/images/integrations/logos/make.jpg\")}.integration-logo-n8n{background-image:url(\"/images/integrations/logos/n8n.png\")}.integration-logo-open-webui{background-image:url(\"/images/integrations/logos/open-webui.png\")}.integration-logo-workbuddy-ai{background-image:url(\"/images/integrations/logos/workbuddy-ai.svg\")}.integration-logo-openclaw{background-image:url(\"/images/integrations/logos/openclaw.svg\")}.integration-logo-opencode{background-image:url(\"/images/integrations/logos/opencode.png\")}.integration-logo-pi{background-image:url(\"/images/integrations/logos/pi.svg\")}.integration-logo-promptfoo{background-image:url(\"/images/integrations/logos/promptfoo.png\")}.dark .integration-logo-card{background:rgba(255, 255, 255, 0.035);border-color:rgba(255, 255, 255, 0.14)}.dark .integration-logo-card:hover,.dark .integration-logo-card:focus-visible{background:rgba(0, 172, 226, 0.14);border-color:rgba(0, 172, 226, 0.65)}.dark .integration-logo-mark{background-color:rgba(255, 255, 255, 0.96)}.dark .integration-logo-subtitle{color:rgba(255, 255, 255, 0.66)}.dark .integration-card-arrow{color:rgba(255, 255, 255, 0.64)}@media (max-width: 1024px){.integration-logo-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (max-width: 640px){.integration-logo-grid{grid-template-columns:1fr}.integration-logo-card{min-height:68px}}"}],"page":{"pagePath":"api/video/runway/official-format/generate-speech-from-text","slug":"/api/video/runway/official-format/generate-speech-from-text","pageMetadata":{"title":"Generate Runway speech from text","sidebarTitle":"Generate Runway speech from text","openapi":"api/openapi/video/runway/official-format/post-generate-speech-from-text.openapi.json POST /runwayml/v1/text_to_speech","description":"Convert text into speech with a preset voice or reference audio using the Runway API.","href":"/api/video/runway/official-format/generate-speech-from-text"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Convert text into speech with a preset voice or reference audio using the Runway API.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Heading,Table}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Use `,_jsx(_components.code,{children:`POST /runwayml/v1/text_to_speech`}),` to create a speech task from text.\nSend your CometAPI API key with Bearer authentication and a JSON request body.`]}),`\n`,_jsx(Heading,{level:`2`,id:`choose-a-model-and-voice`,children:`Choose a model and voice`}),`\n`,_jsxs(_components.p,{children:[`Every request requires `,_jsx(_components.code,{children:`model`}),` and `,_jsx(_components.code,{children:`promptText`}),`. The `,_jsx(_components.code,{children:`voice`}),` field is required\nfor `,_jsx(_components.code,{children:`eleven_multilingual_v2`}),`, `,_jsx(_components.code,{children:`eleven_v3`}),`, and `,_jsx(_components.code,{children:`eleven_v4`}),`, and optional for `,_jsx(_components.code,{children:`seed_audio`}),`.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Model ID`}),_jsx(_components.th,{children:`Text limit`}),_jsx(_components.th,{children:`Voice configuration`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`eleven_multilingual_v2`})}),_jsx(_components.td,{children:`1000 UTF-16 code units`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`type: runway-preset`}),` and a `,_jsx(_components.code,{children:`presetId`}),`, such as `,_jsx(_components.code,{children:`Maya`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`eleven_v3`})}),_jsx(_components.td,{children:`5000 characters`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`type: runway-preset`}),` and a `,_jsx(_components.code,{children:`presetId`}),`, such as `,_jsx(_components.code,{children:`Maya`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`eleven_v4`})}),_jsx(_components.td,{children:`Non-empty text`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`type: runway-preset`}),` and a `,_jsx(_components.code,{children:`presetId`}),`, such as `,_jsx(_components.code,{children:`Maya`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`seed_audio`})}),_jsx(_components.td,{children:`2048 characters`}),_jsxs(_components.td,{children:[`Omit `,_jsx(_components.code,{children:`voice`}),` for a default voice, or use `,_jsx(_components.code,{children:`type: reference-audio`}),` and an `,_jsx(_components.code,{children:`audioUri`})]})]})]})]}),`\n`,_jsxs(_components.p,{children:[`For preset voices, select a `,_jsx(_components.code,{children:`presetId`}),` from the request schema. For `,_jsx(_components.code,{children:`seed_audio`}),`,\nreplace the example `,_jsx(_components.code,{children:`audioUri`}),` with an accessible HTTPS URL of your voice reference.`]}),`\n`,_jsx(Heading,{level:`2`,id:`adjust-speech-expression`,children:`Adjust speech expression`}),`\n`,_jsxs(_components.p,{children:[`With `,_jsx(_components.code,{children:`eleven_v3`}),`, `,_jsx(_components.code,{children:`promptText`}),` can include expressive tags such as `,_jsx(_components.code,{children:`[whispers]`}),`\nor `,_jsx(_components.code,{children:`[laughs]`}),`. The model also accepts these controls:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Values`}),_jsx(_components.th,{children:`Meaning`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`stability`})}),_jsx(_components.td,{children:`Number from 0 to 1`}),_jsx(_components.td,{children:`Lower nonzero values allow more expression; higher values are steadier.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`similarityBoost`})}),_jsx(_components.td,{children:`Number from 0 to 1`}),_jsx(_components.td,{children:`Higher values follow the selected voice more closely.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`style`})}),_jsx(_components.td,{children:`Number from 0 to 1`}),_jsx(_components.td,{children:`Higher values emphasize the voice style.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`speed`})}),_jsx(_components.td,{children:`Number from 0.7 to 1.2`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`1`}),` uses normal speed.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`useSpeakerBoost`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`true`})}),_jsx(_components.td,{children:`Request greater similarity to the selected voice.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`languageCode`})}),_jsx(_components.td,{children:`ISO 639-1 language code`}),_jsx(_components.td,{children:`Guide pronunciation and text normalization.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`applyTextNormalization`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`auto`}),`, `,_jsx(_components.code,{children:`on`}),`, `,_jsx(_components.code,{children:`off`})]}),_jsx(_components.td,{children:`Control how text such as numbers becomes spoken words.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`seed`})}),_jsx(_components.td,{children:`Integer from 1 to 4294967295`}),_jsx(_components.td,{children:`Set the sampling seed.`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`For `,_jsx(_components.code,{children:`stability`}),`, `,_jsx(_components.code,{children:`similarityBoost`}),`, and `,_jsx(_components.code,{children:`style`}),`, a value of `,_jsx(_components.code,{children:`0`}),` uses the model\ndefault, as does omitting the field. `,_jsx(_components.code,{children:`useSpeakerBoost: false`}),` also uses the model\ndefault. To set a sampling seed, use a positive integer; `,_jsx(_components.code,{children:`seed: 0`}),` chooses a seed\nautomatically.`]}),`\n`,_jsx(Heading,{level:`2`,id:`adjust-eleven-v4-speech`,children:`Adjust Eleven v4 speech`}),`\n`,_jsxs(_components.p,{children:[`With `,_jsx(_components.code,{children:`eleven_v4`}),`, `,_jsx(_components.code,{children:`promptText`}),` supports expressive tags such as `,_jsx(_components.code,{children:`[laughs]`}),`,\n`,_jsx(_components.code,{children:`[whispers]`}),`, and `,_jsx(_components.code,{children:`[pause]`}),`. Use these optional controls:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Values`}),_jsx(_components.th,{children:`Meaning`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`stability`})}),_jsx(_components.td,{children:`Number from 0 to 1`}),_jsx(_components.td,{children:`Lower values allow broader emotional range; higher values are steadier.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`similarityBoost`})}),_jsx(_components.td,{children:`Number from 0 to 1`}),_jsx(_components.td,{children:`Set how closely the output tracks the selected voice.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`style`})}),_jsx(_components.td,{children:`Number from 0 to 1`}),_jsx(_components.td,{children:`Higher values amplify the speaker style.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`speed`})}),_jsx(_components.td,{children:`Number from 0.7 to 1.2`}),_jsx(_components.td,{children:`Values below 1 slow speech; values above 1 speed it up.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`useSpeakerBoost`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`true`}),` or `,_jsx(_components.code,{children:`false`})]}),_jsxs(_components.td,{children:[`Boost similarity to the selected voice when `,_jsx(_components.code,{children:`true`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`languageCode`})}),_jsx(_components.td,{children:`2–16 characters`}),_jsxs(_components.td,{children:[`Enforce pronunciation, such as `,_jsx(_components.code,{children:`en`}),` or `,_jsx(_components.code,{children:`pt-BR`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`previousText`})}),_jsx(_components.td,{children:`String`}),_jsx(_components.td,{children:`Continue speech from text generated before this request.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`nextText`})}),_jsx(_components.td,{children:`String`}),_jsx(_components.td,{children:`Lead speech into text generated after this request.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`seed`})}),_jsx(_components.td,{children:`Integer from 0 to 4294967295`}),_jsx(_components.td,{children:`Choose a seed for more consistent output.`})]})]})]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`eleven_v4`}),` does not use `,_jsx(_components.code,{children:`applyTextNormalization`}),`. The `,_jsx(_components.code,{children:`previousText`}),` and\n`,_jsx(_components.code,{children:`nextText`}),` fields are useful when you generate adjacent segments and want the\nmodel to keep the transition coherent.`]}),`\n`,_jsx(Heading,{level:`2`,id:`adjust-speech-speed-and-format`,children:`Adjust speech speed and format`}),`\n`,_jsxs(_components.p,{children:[`With `,_jsx(_components.code,{children:`seed_audio`}),`, use `,_jsx(_components.code,{children:`speechRate`}),` and `,_jsx(_components.code,{children:`loudnessRate`}),` from -50 to 100, or\n`,_jsx(_components.code,{children:`pitchRate`}),` from -12 to 12 semitones. These controls accept integers; omission\nor `,_jsx(_components.code,{children:`0`}),` keeps the normal value.`]}),`\n`,_jsxs(_components.p,{children:[`Set `,_jsx(_components.code,{children:`sampleRate`}),` to `,_jsx(_components.code,{children:`8000`}),`, `,_jsx(_components.code,{children:`16000`}),`, `,_jsx(_components.code,{children:`24000`}),`, `,_jsx(_components.code,{children:`32000`}),`, `,_jsx(_components.code,{children:`44100`}),`, or `,_jsx(_components.code,{children:`48000`}),` Hz.\nSet `,_jsx(_components.code,{children:`outputFormat`}),` to `,_jsx(_components.code,{children:`wav`}),`, `,_jsx(_components.code,{children:`mp3`}),`, or `,_jsx(_components.code,{children:`ogg_opus`}),`. Do not include `,_jsx(_components.code,{children:`duration`}),`,\n`,_jsx(_components.code,{children:`referenceAudios`}),`, or Eleven v3 controls with `,_jsx(_components.code,{children:`seed_audio`}),` on this endpoint.`]}),`\n`,_jsx(Heading,{level:`2`,id:`retrieve-the-result`,children:`Retrieve the result`}),`\n`,_jsxs(_components.p,{children:[`Save the returned `,_jsx(_components.code,{children:`id`}),`, then use `,_jsx(_components.a,{href:`/api/video/runway/official-format/runway-to-get-task-details`,children:`Get a Runway task`}),`\nto retrieve task status. When `,_jsx(_components.code,{children:`status`}),` is `,_jsx(_components.code,{children:`SUCCEEDED`}),`, read the audio URLs in\n`,_jsx(_components.code,{children:`output`}),`. If the task fails, inspect `,_jsx(_components.code,{children:`failure`}),` and `,_jsx(_components.code,{children:`failureCode`}),`.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Generate Runway speech from text","sidebarTitle":"Generate Runway speech from text","openapi":"api/openapi/video/runway/official-format/post-generate-speech-from-text.openapi.json POST /runwayml/v1/text_to_speech","description":"Convert text into speech with a preset voice or reference audio using the Runway API.","href":"/api/video/runway/official-format/generate-speech-from-text"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Choose a model and voice","slug":"choose-a-model-and-voice","depth":2,"children":[]},{"title":"Adjust speech expression","slug":"adjust-speech-expression","depth":2,"children":[]},{"title":"Adjust Eleven v4 speech","slug":"adjust-eleven-v4-speech","depth":2,"children":[]},{"title":"Adjust speech speed and format","slug":"adjust-speech-speed-and-format","depth":2,"children":[]},{"title":"Retrieve the result","slug":"retrieve-the-result","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/cometapi/430a303ac1007180/analytics.js"],"openApiReferenceData":{"operation":{"summary":"Generate Runway speech from text","operationId":"runway_text_to_speech","description":"Convert text into speech with a preset voice or reference audio using the Runway API.","requestBody":"29c0db94-f3f3-4778-8565-4bd3d3e44a47","responses":{"200":"e6a627c0-e455-4225-9895-d7d5347e88cc","400":"60287f95-e1b3-4cb2-8e62-84129a86dd7f","401":"6933a6a2-3210-450e-a453-b1d3b3c067ce"},"x-codeSamples":[{"lang":"Shell","label":"eleven_multilingual_v2","source":"curl https://api.cometapi.com/runwayml/v1/text_to_speech \\\n --request POST \\\n --header \"Authorization: Bearer $COMETAPI_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"model\": \"eleven_multilingual_v2\",\n \"promptText\": \"Welcome to our audio guide. Let us begin the tour.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n }\n}'\n"},{"lang":"Python","label":"eleven_multilingual_v2","source":"import os\nimport requests\n\npayload = { 'model': 'eleven_multilingual_v2',\n 'promptText': 'Welcome to our audio guide. Let us begin the tour.',\n 'voice': {'type': 'runway-preset', 'presetId': 'Maya'}}\n\nresponse = requests.post(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n headers={\"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]},\n json=payload,\n)\nresponse.raise_for_status()\nprint(response.json()[\"id\"])\n"},{"lang":"JavaScript","label":"eleven_multilingual_v2","source":"const payload = {\n \"model\": \"eleven_multilingual_v2\",\n \"promptText\": \"Welcome to our audio guide. Let us begin the tour.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n }\n};\n\nconst response = await fetch(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n {\n method: \"POST\",\n headers: {\n Authorization: `Bearer ${process.env.COMETAPI_KEY}`,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(payload),\n },\n);\nif (!response.ok) throw new Error(await response.text());\nconst task = await response.json();\nconsole.log(task.id);\n"},{"lang":"Shell","label":"eleven_v3","source":"curl https://api.cometapi.com/runwayml/v1/text_to_speech \\\n --request POST \\\n --header \"Authorization: Bearer $COMETAPI_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"model\": \"eleven_v3\",\n \"promptText\": \"[whispers] The adventure begins at sunrise.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n },\n \"stability\": 0.5,\n \"speed\": 1\n}'\n"},{"lang":"Python","label":"eleven_v3","source":"import os\nimport requests\n\npayload = { 'model': 'eleven_v3',\n 'promptText': '[whispers] The adventure begins at sunrise.',\n 'voice': {'type': 'runway-preset', 'presetId': 'Maya'},\n 'stability': 0.5,\n 'speed': 1}\n\nresponse = requests.post(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n headers={\"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]},\n json=payload,\n)\nresponse.raise_for_status()\nprint(response.json()[\"id\"])\n"},{"lang":"JavaScript","label":"eleven_v3","source":"const payload = {\n \"model\": \"eleven_v3\",\n \"promptText\": \"[whispers] The adventure begins at sunrise.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n },\n \"stability\": 0.5,\n \"speed\": 1\n};\n\nconst response = await fetch(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n {\n method: \"POST\",\n headers: {\n Authorization: `Bearer ${process.env.COMETAPI_KEY}`,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(payload),\n },\n);\nif (!response.ok) throw new Error(await response.text());\nconst task = await response.json();\nconsole.log(task.id);\n"},{"lang":"Shell","label":"eleven_v4","source":"curl https://api.cometapi.com/runwayml/v1/text_to_speech \\\n --request POST \\\n --header \"Authorization: Bearer $COMETAPI_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"model\": \"eleven_v4\",\n \"promptText\": \"[pause] The museum opens at nine.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n },\n \"stability\": 0.5,\n \"speed\": 1,\n \"languageCode\": \"en\",\n \"previousText\": \"The guide takes a breath.\",\n \"nextText\": \"Visitors enter through the west door.\"\n}'\n"},{"lang":"Python","label":"eleven_v4","source":"import os\nimport requests\n\npayload = {\n \"model\": \"eleven_v4\",\n \"promptText\": \"[pause] The museum opens at nine.\",\n \"voice\": {\"type\": \"runway-preset\", \"presetId\": \"Maya\"},\n \"stability\": 0.5,\n \"speed\": 1,\n \"languageCode\": \"en\",\n \"previousText\": \"The guide takes a breath.\",\n \"nextText\": \"Visitors enter through the west door.\",\n}\n\nresponse = requests.post(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n headers={\"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]},\n json=payload,\n)\nresponse.raise_for_status()\nprint(response.json()[\"id\"])\n"},{"lang":"JavaScript","label":"eleven_v4","source":"const payload = {\n \"model\": \"eleven_v4\",\n \"promptText\": \"[pause] The museum opens at nine.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n },\n \"stability\": 0.5,\n \"speed\": 1,\n \"languageCode\": \"en\",\n \"previousText\": \"The guide takes a breath.\",\n \"nextText\": \"Visitors enter through the west door.\"\n};\n\nconst response = await fetch(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n {\n method: \"POST\",\n headers: {\n Authorization: `Bearer ${process.env.COMETAPI_KEY}`,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(payload),\n },\n);\nif (!response.ok) throw new Error(await response.text());\nconst task = await response.json();\nconsole.log(task.id);\n"},{"lang":"Shell","label":"seed_audio","source":"curl https://api.cometapi.com/runwayml/v1/text_to_speech \\\n --request POST \\\n --header \"Authorization: Bearer $COMETAPI_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"model\": \"seed_audio\",\n \"promptText\": \"Welcome to our audio guide. Let us begin the tour.\",\n \"voice\": {\n \"type\": \"reference-audio\",\n \"audioUri\": \"https://your-audio-host/voice-reference.mp3\"\n },\n \"sampleRate\": 44100,\n \"outputFormat\": \"mp3\"\n}'\n"},{"lang":"Python","label":"seed_audio","source":"import os\nimport requests\n\npayload = { 'model': 'seed_audio',\n 'promptText': 'Welcome to our audio guide. Let us begin the tour.',\n 'voice': { 'type': 'reference-audio',\n 'audioUri': 'https://your-audio-host/voice-reference.mp3'},\n 'sampleRate': 44100,\n 'outputFormat': 'mp3'}\n\nresponse = requests.post(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n headers={\"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]},\n json=payload,\n)\nresponse.raise_for_status()\nprint(response.json()[\"id\"])\n"},{"lang":"JavaScript","label":"seed_audio","source":"const payload = {\n \"model\": \"seed_audio\",\n \"promptText\": \"Welcome to our audio guide. Let us begin the tour.\",\n \"voice\": {\n \"type\": \"reference-audio\",\n \"audioUri\": \"https://your-audio-host/voice-reference.mp3\"\n },\n \"sampleRate\": 44100,\n \"outputFormat\": \"mp3\"\n};\n\nconst response = await fetch(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n {\n method: \"POST\",\n headers: {\n Authorization: `Bearer ${process.env.COMETAPI_KEY}`,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(payload),\n },\n);\nif (!response.ok) throw new Error(await response.text());\nconst task = await response.json();\nconsole.log(task.id);\n"}],"method":"post","type":"path","servers":["096ef9a8-181d-4ebe-8c4c-895c1826d892"],"security":["e2d99fc2-8bae-46e4-9a9e-dcd2351ed1a9"],"path":"/runwayml/v1/text_to_speech","baseUrlOptions":["https://api.cometapi.com"],"title":"Generate Runway speech from text","codeSamples":[{"label":"eleven_multilingual_v2","lang":"Shell","source":"curl https://api.cometapi.com/runwayml/v1/text_to_speech \\\n --request POST \\\n --header \"Authorization: Bearer $COMETAPI_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"model\": \"eleven_multilingual_v2\",\n \"promptText\": \"Welcome to our audio guide. Let us begin the tour.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n }\n}'\n"},{"label":"eleven_multilingual_v2","lang":"Python","source":"import os\nimport requests\n\npayload = { 'model': 'eleven_multilingual_v2',\n 'promptText': 'Welcome to our audio guide. Let us begin the tour.',\n 'voice': {'type': 'runway-preset', 'presetId': 'Maya'}}\n\nresponse = requests.post(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n headers={\"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]},\n json=payload,\n)\nresponse.raise_for_status()\nprint(response.json()[\"id\"])\n"},{"label":"eleven_multilingual_v2","lang":"JavaScript","source":"const payload = {\n \"model\": \"eleven_multilingual_v2\",\n \"promptText\": \"Welcome to our audio guide. Let us begin the tour.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n }\n};\n\nconst response = await fetch(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n {\n method: \"POST\",\n headers: {\n Authorization: `Bearer ${process.env.COMETAPI_KEY}`,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(payload),\n },\n);\nif (!response.ok) throw new Error(await response.text());\nconst task = await response.json();\nconsole.log(task.id);\n"},{"label":"eleven_v3","lang":"Shell","source":"curl https://api.cometapi.com/runwayml/v1/text_to_speech \\\n --request POST \\\n --header \"Authorization: Bearer $COMETAPI_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"model\": \"eleven_v3\",\n \"promptText\": \"[whispers] The adventure begins at sunrise.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n },\n \"stability\": 0.5,\n \"speed\": 1\n}'\n"},{"label":"eleven_v3","lang":"Python","source":"import os\nimport requests\n\npayload = { 'model': 'eleven_v3',\n 'promptText': '[whispers] The adventure begins at sunrise.',\n 'voice': {'type': 'runway-preset', 'presetId': 'Maya'},\n 'stability': 0.5,\n 'speed': 1}\n\nresponse = requests.post(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n headers={\"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]},\n json=payload,\n)\nresponse.raise_for_status()\nprint(response.json()[\"id\"])\n"},{"label":"eleven_v3","lang":"JavaScript","source":"const payload = {\n \"model\": \"eleven_v3\",\n \"promptText\": \"[whispers] The adventure begins at sunrise.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n },\n \"stability\": 0.5,\n \"speed\": 1\n};\n\nconst response = await fetch(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n {\n method: \"POST\",\n headers: {\n Authorization: `Bearer ${process.env.COMETAPI_KEY}`,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(payload),\n },\n);\nif (!response.ok) throw new Error(await response.text());\nconst task = await response.json();\nconsole.log(task.id);\n"},{"label":"eleven_v4","lang":"Shell","source":"curl https://api.cometapi.com/runwayml/v1/text_to_speech \\\n --request POST \\\n --header \"Authorization: Bearer $COMETAPI_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"model\": \"eleven_v4\",\n \"promptText\": \"[pause] The museum opens at nine.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n },\n \"stability\": 0.5,\n \"speed\": 1,\n \"languageCode\": \"en\",\n \"previousText\": \"The guide takes a breath.\",\n \"nextText\": \"Visitors enter through the west door.\"\n}'\n"},{"label":"eleven_v4","lang":"Python","source":"import os\nimport requests\n\npayload = {\n \"model\": \"eleven_v4\",\n \"promptText\": \"[pause] The museum opens at nine.\",\n \"voice\": {\"type\": \"runway-preset\", \"presetId\": \"Maya\"},\n \"stability\": 0.5,\n \"speed\": 1,\n \"languageCode\": \"en\",\n \"previousText\": \"The guide takes a breath.\",\n \"nextText\": \"Visitors enter through the west door.\",\n}\n\nresponse = requests.post(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n headers={\"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]},\n json=payload,\n)\nresponse.raise_for_status()\nprint(response.json()[\"id\"])\n"},{"label":"eleven_v4","lang":"JavaScript","source":"const payload = {\n \"model\": \"eleven_v4\",\n \"promptText\": \"[pause] The museum opens at nine.\",\n \"voice\": {\n \"type\": \"runway-preset\",\n \"presetId\": \"Maya\"\n },\n \"stability\": 0.5,\n \"speed\": 1,\n \"languageCode\": \"en\",\n \"previousText\": \"The guide takes a breath.\",\n \"nextText\": \"Visitors enter through the west door.\"\n};\n\nconst response = await fetch(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n {\n method: \"POST\",\n headers: {\n Authorization: `Bearer ${process.env.COMETAPI_KEY}`,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(payload),\n },\n);\nif (!response.ok) throw new Error(await response.text());\nconst task = await response.json();\nconsole.log(task.id);\n"},{"label":"seed_audio","lang":"Shell","source":"curl https://api.cometapi.com/runwayml/v1/text_to_speech \\\n --request POST \\\n --header \"Authorization: Bearer $COMETAPI_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"model\": \"seed_audio\",\n \"promptText\": \"Welcome to our audio guide. Let us begin the tour.\",\n \"voice\": {\n \"type\": \"reference-audio\",\n \"audioUri\": \"https://your-audio-host/voice-reference.mp3\"\n },\n \"sampleRate\": 44100,\n \"outputFormat\": \"mp3\"\n}'\n"},{"label":"seed_audio","lang":"Python","source":"import os\nimport requests\n\npayload = { 'model': 'seed_audio',\n 'promptText': 'Welcome to our audio guide. Let us begin the tour.',\n 'voice': { 'type': 'reference-audio',\n 'audioUri': 'https://your-audio-host/voice-reference.mp3'},\n 'sampleRate': 44100,\n 'outputFormat': 'mp3'}\n\nresponse = requests.post(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n headers={\"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]},\n json=payload,\n)\nresponse.raise_for_status()\nprint(response.json()[\"id\"])\n"},{"label":"seed_audio","lang":"JavaScript","source":"const payload = {\n \"model\": \"seed_audio\",\n \"promptText\": \"Welcome to our audio guide. Let us begin the tour.\",\n \"voice\": {\n \"type\": \"reference-audio\",\n \"audioUri\": \"https://your-audio-host/voice-reference.mp3\"\n },\n \"sampleRate\": 44100,\n \"outputFormat\": \"mp3\"\n};\n\nconst response = await fetch(\n \"https://api.cometapi.com/runwayml/v1/text_to_speech\",\n {\n method: \"POST\",\n headers: {\n Authorization: `Bearer ${process.env.COMETAPI_KEY}`,\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(payload),\n },\n);\nif (!response.ok) throw new Error(await response.text());\nconst task = await response.json();\nconsole.log(task.id);\n"}],"requiredOnlyExamples":true,"requestExampleType":"codeSamples","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.oneOf.0.model":"eleven_multilingual_v2","body.oneOf.0.promptText":"Welcome to our audio guide. Let us begin the tour.","body.oneOf.0.voice.type":"runway-preset","body.oneOf.0.voice.presetId":"Maya"},{"body.oneOf.1.model":"eleven_v3","body.oneOf.1.promptText":"[whispers] The adventure begins at sunrise.","body.oneOf.1.voice.type":"runway-preset","body.oneOf.1.voice.presetId":"Maya","body.oneOf.1.stability":0.5,"body.oneOf.1.speed":1},{"body.oneOf.2.model":"eleven_v4","body.oneOf.2.promptText":"[pause] The museum opens at nine.","body.oneOf.2.voice.type":"runway-preset","body.oneOf.2.voice.presetId":"Maya","body.oneOf.2.stability":0.5,"body.oneOf.2.speed":1,"body.oneOf.2.languageCode":"en","body.oneOf.2.previousText":"The guide takes a breath.","body.oneOf.2.nextText":"Visitors enter through the west door."},{"body.oneOf.3.model":"seed_audio","body.oneOf.3.promptText":"Welcome to our audio guide. Let us begin the tour.","body.oneOf.3.voice.type":"reference-audio","body.oneOf.3.voice.audioUri.oneOf.0":"https://your-audio-host/voice-reference.mp3","body.oneOf.3.sampleRate":44100,"body.oneOf.3.outputFormat":"mp3"}]},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"type":"object","title":"eleven_multilingual_v2","description":"Request settings for eleven_multilingual_v2.","default":{"model":"eleven_multilingual_v2","promptText":"Welcome to our audio guide. Let us begin the tour.","voice":{"type":"runway-preset","presetId":"Maya"}},"required":["promptText","voice","model"],"properties":{"model":{"type":"string","const":"eleven_multilingual_v2","enum":["eleven_multilingual_v2"],"description":"Model ID for this request.","isRequired":true,"uniqueKey":"oneOf.0.model","typeLabel":"enum\u003cstring>"},"promptText":{"description":"Text to speak, from 1 to 1000 UTF-16 code units.","type":"string","minLength":1,"maxLength":1000,"isRequired":true,"uniqueKey":"oneOf.0.promptText","typeLabel":"string"},"voice":{"type":"object","title":"RunwayPresetVoice","description":"The voice to use for the generated speech.","required":["type","presetId"],"properties":{"type":{"type":"string","const":"runway-preset","enum":["runway-preset"],"description":"Input type. Use runway-preset.","isRequired":true,"uniqueKey":"oneOf.0.voice.type","typeLabel":"enum\u003cstring>"},"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"],"isRequired":true,"uniqueKey":"oneOf.0.voice.presetId","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.0.voice","typeLabel":"RunwayPresetVoice · object"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"eleven_multilingual_v2 · object"},{"type":"object","title":"eleven_v3","description":"Request settings for eleven_v3.","default":{"model":"eleven_multilingual_v2","promptText":"Welcome to our audio guide. Let us begin the tour.","voice":{"type":"runway-preset","presetId":"Maya"}},"required":["promptText","voice","model"],"properties":{"model":{"type":"string","const":"eleven_v3","enum":["eleven_v3"],"description":"Model ID for this request.","isRequired":true,"uniqueKey":"oneOf.1.model","typeLabel":"enum\u003cstring>"},"promptText":{"description":"The text to convert to speech. You can include expressive audio tags like [laughs] or [whispers] in the script.","type":"string","minLength":1,"maxLength":5000,"isRequired":true,"uniqueKey":"oneOf.1.promptText","typeLabel":"string"},"voice":{"type":"object","title":"RunwayPresetVoice","description":"The voice to use for the generated speech.","required":["type","presetId"],"properties":{"type":{"type":"string","const":"runway-preset","enum":["runway-preset"],"description":"Input type. Use runway-preset.","isRequired":true,"uniqueKey":"oneOf.1.voice.type","typeLabel":"enum\u003cstring>"},"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"],"isRequired":true,"uniqueKey":"oneOf.1.voice.presetId","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.1.voice","typeLabel":"RunwayPresetVoice · object"},"stability":{"description":"Voice stability from 0 to 1. Lower nonzero values allow more expression; higher values are steadier. Omit or use 0 for the model default.","type":"number","minimum":0,"maximum":1,"uniqueKey":"oneOf.1.stability","typeLabel":"number"},"similarityBoost":{"description":"Voice similarity from 0 to 1. Higher values follow the selected voice more closely. Omit or use 0 for the model default.","type":"number","minimum":0,"maximum":1,"uniqueKey":"oneOf.1.similarityBoost","typeLabel":"number"},"style":{"description":"Style intensity from 0 to 1. Higher values emphasize the selected voice style. Omit or use 0 for the model default.","type":"number","minimum":0,"maximum":1,"uniqueKey":"oneOf.1.style","typeLabel":"number"},"speed":{"description":"Speech speed multiplier from 0.7 to 1.2. A value of 1 uses normal speed.","type":"number","minimum":0.7,"maximum":1.2,"uniqueKey":"oneOf.1.speed","typeLabel":"number"},"useSpeakerBoost":{"description":"Set true to request greater similarity to the selected voice. Omit or use false for the model default.","type":"boolean","uniqueKey":"oneOf.1.useSpeakerBoost","typeLabel":"boolean"},"languageCode":{"description":"ISO 639-1 language code to enforce pronunciation and normalization.","type":"string","minLength":2,"maxLength":5,"uniqueKey":"oneOf.1.languageCode","typeLabel":"string"},"applyTextNormalization":{"description":"How to normalize spoken text, such as reading numbers as words: auto, on, or off.","type":"string","enum":["auto","on","off"],"uniqueKey":"oneOf.1.applyTextNormalization","typeLabel":"enum\u003cstring>"},"seed":{"description":"Sampling seed from 1 to 4294967295. Omit or use 0 for an automatically chosen seed.","type":"integer","minimum":0,"maximum":4294967295,"uniqueKey":"oneOf.1.seed","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"eleven_v3 · object"},{"type":"object","title":"eleven_v4","description":"Request settings for eleven_v4.","default":{"model":"eleven_multilingual_v2","promptText":"Welcome to our audio guide. Let us begin the tour.","voice":{"type":"runway-preset","presetId":"Maya"}},"required":["promptText","voice","model"],"properties":{"model":{"type":"string","const":"eleven_v4","enum":["eleven_v4"],"description":"Model ID for this request.","isRequired":true,"uniqueKey":"oneOf.2.model","typeLabel":"enum\u003cstring>"},"promptText":{"description":"The text to convert to speech. You can include expressive audio tags like [laughs], [whispers], or [pause] in the script.","type":"string","minLength":1,"isRequired":true,"uniqueKey":"oneOf.2.promptText","typeLabel":"string"},"voice":{"type":"object","title":"RunwayPresetVoice","description":"The voice to use for the generated speech.","required":["type","presetId"],"properties":{"type":{"type":"string","const":"runway-preset","enum":["runway-preset"],"description":"Input type. Use runway-preset.","isRequired":true,"uniqueKey":"oneOf.2.voice.type","typeLabel":"enum\u003cstring>"},"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"],"isRequired":true,"uniqueKey":"oneOf.2.voice.presetId","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.2.voice","typeLabel":"RunwayPresetVoice · object"},"stability":{"description":"Voice stability from 0 to 1. Lower values allow broader emotional range; higher values are steadier.","type":"number","minimum":0,"maximum":1,"uniqueKey":"oneOf.2.stability","typeLabel":"number"},"similarityBoost":{"description":"How closely the output tracks the selected voice, from 0 to 1.","type":"number","minimum":0,"maximum":1,"uniqueKey":"oneOf.2.similarityBoost","typeLabel":"number"},"style":{"description":"Style exaggeration from 0 to 1. Higher values amplify the speaker style.","type":"number","minimum":0,"maximum":1,"uniqueKey":"oneOf.2.style","typeLabel":"number"},"speed":{"description":"Speech speed multiplier from 0.7 to 1.2. Values below 1 slow the speech down, and values above 1 speed it up.","type":"number","minimum":0.7,"maximum":1.2,"uniqueKey":"oneOf.2.speed","typeLabel":"number"},"useSpeakerBoost":{"description":"Set true to boost similarity to the selected voice at a small latency cost.","type":"boolean","uniqueKey":"oneOf.2.useSpeakerBoost","typeLabel":"boolean"},"languageCode":{"description":"Language code from 2 to 16 characters to enforce pronunciation, such as en or pt-BR.","type":"string","minLength":2,"maxLength":16,"uniqueKey":"oneOf.2.languageCode","typeLabel":"string"},"seed":{"description":"Optional seed from 0 to 4294967295 for more consistent output.","type":"integer","minimum":0,"maximum":4294967295,"uniqueKey":"oneOf.2.seed","typeLabel":"integer"},"previousText":{"description":"Text that comes before this request, so speech can continue from an earlier generation.","type":"string","uniqueKey":"oneOf.2.previousText","typeLabel":"string"},"nextText":{"description":"Text that comes after this request, so speech can lead into a later generation.","type":"string","uniqueKey":"oneOf.2.nextText","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.2","typeLabel":"eleven_v4 · object"},{"type":"object","title":"seed_audio","description":"Request settings for seed_audio.","default":{"model":"eleven_multilingual_v2","promptText":"Welcome to our audio guide. Let us begin the tour.","voice":{"type":"runway-preset","presetId":"Maya"}},"required":["promptText","model"],"properties":{"model":{"type":"string","const":"seed_audio","enum":["seed_audio"],"description":"Model ID for this request.","isRequired":true,"uniqueKey":"oneOf.3.model","typeLabel":"enum\u003cstring>"},"promptText":{"description":"Text to speak.","type":"string","minLength":1,"maxLength":2048,"isRequired":true,"uniqueKey":"oneOf.3.promptText","typeLabel":"string"},"voice":{"description":"Optional reference audio that supplies the speaking voice. Omit this field to use a default voice.","title":"SeedReferenceVoice","type":"object","properties":{"type":{"type":"string","const":"reference-audio","enum":["reference-audio"],"description":"Input type. Use reference-audio.","isRequired":true,"uniqueKey":"oneOf.3.voice.type","typeLabel":"enum\u003cstring>"},"audioUri":{"oneOf":[{"type":"string","description":"Audio input as an accessible HTTPS URL or base64 data URI.","maxLength":2048,"minLength":13,"pattern":"^https:\\/\\/.*","isRequired":true,"uniqueKey":"oneOf.3.voice.audioUri.oneOf.0","typeLabel":"string"},{"type":"string","description":"Audio input as an accessible HTTPS URL or base64 data URI.","maxLength":5242880,"minLength":13,"pattern":"^data:audio\\/.*","isRequired":true,"uniqueKey":"oneOf.3.voice.audioUri.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"oneOf.3.voice.audioUri","typeLabel":"string"}},"required":["type","audioUri"],"additionalProperties":false,"uniqueKey":"oneOf.3.voice","typeLabel":"SeedReferenceVoice · object"},"speechRate":{"description":"Relative speech speed: negative values slow speech, positive values speed it up. Omit or use 0 for normal speed.","type":"integer","minimum":-50,"maximum":100,"uniqueKey":"oneOf.3.speechRate","typeLabel":"integer"},"loudnessRate":{"description":"Relative loudness: negative values reduce volume, positive values increase it. Omit or use 0 for normal loudness.","type":"integer","minimum":-50,"maximum":100,"uniqueKey":"oneOf.3.loudnessRate","typeLabel":"integer"},"pitchRate":{"description":"Pitch shift in semitones: negative values lower pitch, positive values raise it. Omit or use 0 for unchanged pitch.","type":"integer","minimum":-12,"maximum":12,"uniqueKey":"oneOf.3.pitchRate","typeLabel":"integer"},"sampleRate":{"description":"Output sample rate in Hz.","type":"integer","enum":[8000,16000,24000,32000,44100,48000],"uniqueKey":"oneOf.3.sampleRate","typeLabel":"enum\u003cinteger>"},"outputFormat":{"description":"Output audio container/format.","type":"string","enum":["wav","mp3","ogg_opus"],"uniqueKey":"oneOf.3.outputFormat","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"oneOf.3","typeLabel":"seed_audio · object"}],"uniqueKey":"","typeLabel":"eleven_multilingual_v2 · object | eleven_v3 · object | eleven_v4 · object | seed_audio · object"},"examples":{"eleven_multilingual_v2":{"title":"eleven_multilingual_v2","value":{"model":"eleven_multilingual_v2","promptText":"Welcome to our audio guide. Let us begin the tour.","voice":{"type":"runway-preset","presetId":"Maya"}}},"eleven_v3":{"title":"eleven_v3","value":{"model":"eleven_v3","promptText":"[whispers] The adventure begins at sunrise.","voice":{"type":"runway-preset","presetId":"Maya"},"stability":0.5,"speed":1}},"eleven_v4":{"title":"eleven_v4","value":{"model":"eleven_v4","promptText":"[pause] The museum opens at nine.","voice":{"type":"runway-preset","presetId":"Maya"},"stability":0.5,"speed":1,"languageCode":"en","previousText":"The guide takes a breath.","nextText":"Visitors enter through the west door."}},"seed_audio":{"title":"seed_audio","value":{"model":"seed_audio","promptText":"Welcome to our audio guide. Let us begin the tour.","voice":{"type":"reference-audio","audioUri":"https://your-audio-host/voice-reference.mp3"},"sampleRate":44100,"outputFormat":"mp3"}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"e6a627c0-e455-4225-9895-d7d5347e88cc":{"description":"Task created. Save the returned id to retrieve task status.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"Task ID for GET /runwayml/v1/tasks/{id}.","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"status":{"type":"string","description":"Task state, when returned.","uniqueKey":"status","typeLabel":"string"},"createdAt":{"type":"string","description":"Task submission timestamp, when returned.","format":"date-time","uniqueKey":"createdAt","typeLabel":"string\u003cdate-time>"},"output":{"type":"array","description":"Result URLs, when returned.","items":{"type":"string","format":"uri","uniqueKey":"output.items.[INDEX]","typeLabel":"string\u003curi>"},"uniqueKey":"output","typeLabel":"string\u003curi>[]"},"failure":{"type":"string","description":"Failure explanation, when returned.","uniqueKey":"failure","typeLabel":"string"},"failureCode":{"type":"string","description":"Machine-readable failure code, when returned.","uniqueKey":"failureCode","typeLabel":"string"},"estimatedCost":{"type":"object","description":"Task estimate metadata, when returned.","properties":{"credits":{"type":"integer","description":"Credit value reported with the task.","isRequired":true,"uniqueKey":"estimatedCost.credits","typeLabel":"integer"}},"required":["credits"],"additionalProperties":false,"uniqueKey":"estimatedCost","typeLabel":"object"},"cost":{"type":"object","description":"Task cost metadata, when returned.","properties":{"credits":{"type":"integer","description":"Credit value reported with the task.","isRequired":true,"uniqueKey":"cost.credits","typeLabel":"integer"}},"required":["credits"],"additionalProperties":false,"uniqueKey":"cost","typeLabel":"object"}},"required":["id"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"example":{"id":"123e4567-e89b-42d3-a456-426614174000"},"examples":{"Example":{"title":"Example","value":{"id":"123e4567-e89b-42d3-a456-426614174000"}}},"exampleType":"examples"}},"exampleType":"examples"},"60287f95-e1b3-4cb2-8e62-84129a86dd7f":{"description":"Invalid request or unavailable task ID.","content":{"application/json":{"schema":{"oneOf":[{"type":"object","description":"Task request error.","required":["code","message"],"properties":{"code":{"oneOf":[{"type":"string","description":"Machine-readable task error code.","isRequired":true,"uniqueKey":"oneOf.0.code.oneOf.0","typeLabel":"string"},{"type":"integer","description":"Machine-readable task error code.","isRequired":true,"uniqueKey":"oneOf.0.code.oneOf.1","typeLabel":"integer"}],"isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"string | integer"},"message":{"type":"string","description":"Error explanation.","isRequired":true,"uniqueKey":"oneOf.0.message","typeLabel":"string"},"data":{"description":"Additional error details, when returned.","uniqueKey":"oneOf.0.data","typeLabel":"any"}},"additionalProperties":true,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Request authentication or validation error.","required":["error"],"properties":{"error":{"type":"object","description":"Error details.","properties":{"message":{"type":"string","description":"Error explanation.","isRequired":true,"uniqueKey":"oneOf.1.error.message","typeLabel":"string"},"type":{"type":"string","description":"Error category.","uniqueKey":"oneOf.1.error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","description":"Error code, when returned.","uniqueKey":"oneOf.1.error.code.oneOf.0","typeLabel":"string"},{"type":"integer","description":"Error code, when returned.","uniqueKey":"oneOf.1.error.code.oneOf.1","typeLabel":"integer"},{"type":"null","description":"Error code, when returned.","uniqueKey":"oneOf.1.error.code.oneOf.2","typeLabel":"null"}],"uniqueKey":"oneOf.1.error.code","typeLabel":"string | integer | null"}},"required":["message"],"additionalProperties":true,"isRequired":true,"uniqueKey":"oneOf.1.error","typeLabel":"object"}},"additionalProperties":true,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"\u003cstring>","message":"\u003cstring>","data":"\u003cunknown>"}}},"exampleType":"generated"}},"exampleType":"generated"},"6933a6a2-3210-450e-a453-b1d3b3c067ce":{"description":"Authentication failed.","content":{"application/json":{"schema":{"type":"object","description":"Request authentication or validation error.","properties":{"error":{"type":"object","description":"Error details.","properties":{"message":{"type":"string","description":"Error explanation.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","description":"Error category.","uniqueKey":"error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","description":"Error code, when returned.","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"integer","description":"Error code, when returned.","uniqueKey":"error.code.oneOf.1","typeLabel":"integer"},{"type":"null","description":"Error code, when returned.","uniqueKey":"error.code.oneOf.2","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | integer | null"}},"required":["message"],"additionalProperties":true,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"message":"\u003cstring>","type":"\u003cstring>","code":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"e2d99fc2-8bae-46e4-9a9e-dcd2351ed1a9":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Use your CometAPI API key.","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"096ef9a8-181d-4ebe-8c4c-895c1826d892":{"url":"https://api.cometapi.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Use your CometAPI API key.","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Use your CometAPI API key.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api/openapi/video/runway/official-format/post-generate-speech-from-text.openapi.json"},"subdomain":"cometapi","siteName":"CometAPI Documentation","title":"Generate Runway speech from text - CometAPI Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api/video/runway/official-format/generate-speech-from-text","matchLevel":0},"zh-Hans":{"href":"/zh-Hans/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"zh-Hant":{"href":"/zh-Hant/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"ja":{"href":"/ja/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"ko":{"href":"/ko/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"fr":{"href":"/fr/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"de":{"href":"/de/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"es":{"href":"/es/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"it":{"href":"/it/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"pt":{"href":"/pt/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"ru":{"href":"/ru/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"ar":{"href":"/ar/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"vi":{"href":"/vi/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"id":{"href":"/id/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"tr":{"href":"/tr/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"pl":{"href":"/pl/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"nl":{"href":"/nl/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"no":{"href":"/no/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true},"uk":{"href":"/uk/api/video/runway/official-format/generate-speech-from-text","matchLevel":1,"noindex":true}}},"lastModified":"2026-10-11T03:29:43.610Z","gitLastModified":"2026-10-11T03:26:16.000Z","originalFileLocation":"api/video/runway/official-format/generate-speech-from-text.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Convert text into speech with a preset voice or reference audio using the Runway API.\">\u003cmeta data-mint-head name=\"application-name\" content=\"CometAPI Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Generate Runway speech from text - CometAPI Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Convert text into speech with a preset voice or reference audio using the Runway API.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"CometAPI Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://cometapi.mintlify.app/_mintlify/api/og/v2?division=Audio\u0026amp;title=Generate+Runway+speech+from+text\u0026amp;description=Convert+text+into+speech+with+a+preset+voice+or+reference+audio+using+the+Runway+API.\u0026amp;theme=8f4122d879437f2cf832428a\u0026amp;signature=831d3439e5cd024789daaf70d506a0c98f15272576380cd4d7c9c85906e6cd7b\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Generate Runway speech from text - CometAPI Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Convert text into speech with a preset voice or reference audio using the Runway API.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://cometapi.mintlify.app/_mintlify/api/og/v2?division=Audio\u0026amp;title=Generate+Runway+speech+from+text\u0026amp;description=Convert+text+into+speech+with+a+preset+voice+or+reference+audio+using+the+Runway+API.\u0026amp;theme=8f4122d879437f2cf832428a\u0026amp;signature=831d3439e5cd024789daaf70d506a0c98f15272576380cd4d7c9c85906e6cd7b\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"CometAPI Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#00ACE2\">\u003cmeta data-mint-head name=\"author\" content=\"CometAPI\">\u003cmeta data-mint-head name=\"copyright\" content=\"Copyright 2026 CometAPI\">\u003cmeta data-mint-head name=\"category\" content=\"Technology\">\u003cmeta data-mint-head name=\"distribution\" content=\"global\">\u003cmeta data-mint-head name=\"coverage\" content=\"Worldwide\">\u003clink data-mint-head rel=\"canonical\" href=\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api/video/runway/official-format/generate-speech-from-text.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://apidoc.cometapi.com/#organization\",\"name\":\"CometAPI Documentation\",\"url\":\"https://apidoc.cometapi.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/cometapi/cmhWX83dzrkf2F-2/logo/comet-light.svg?fit=max\u0026auto=format\u0026n=cmhWX83dzrkf2F-2\u0026q=85\u0026s=7ae2fde0df7785d111912bce23157ef2\"}},{\"@type\":\"WebSite\",\"@id\":\"https://apidoc.cometapi.com#website\",\"name\":\"CometAPI Documentation\",\"url\":\"https://apidoc.cometapi.com\",\"publisher\":{\"@id\":\"https://apidoc.cometapi.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text#webpage\",\"url\":\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text\",\"name\":\"Generate Runway speech from text\",\"description\":\"Convert text into speech with a preset voice or reference audio using the Runway API.\",\"dateModified\":\"2026-10-11T03:26:16.000Z\",\"isPartOf\":{\"@id\":\"https://apidoc.cometapi.com#website\"},\"breadcrumb\":{\"@id\":\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Video Models\",\"item\":\"https://apidoc.cometapi.com/api/video/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Runway\",\"item\":\"https://apidoc.cometapi.com/api/video/runway/overview\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Audio\",\"item\":\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-sound-effects\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Generate Runway speech from text\",\"item\":\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text#apireference\",\"headline\":\"Generate Runway speech from text\",\"name\":\"Generate Runway speech from text\",\"description\":\"Convert text into speech with a preset voice or reference audio using the Runway API.\",\"url\":\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text\",\"mainEntityOfPage\":{\"@id\":\"https://apidoc.cometapi.com/api/video/runway/official-format/generate-speech-from-text#webpage\"},\"dateModified\":\"2026-10-11T03:26:16.000Z\",\"publisher\":{\"@id\":\"https://apidoc.cometapi.com/#organization\"},\"isPartOf\":{\"@id\":\"https://apidoc.cometapi.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"CometAPI Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"CometAPI Documentation","nav":{"global":null,"languages":[{"language":"en","tabs":[{"tab":"Docs","pages":[{"title":"Docs","href":""}]},{"tab":"API","groups":[{"group":"Text Models","icon":"message","root":{"title":"Text and chat APIs","sidebarTitle":"Text and chat APIs","href":"/api/text"},"expanded":false,"pages":[{"title":"Create a chat completion","sidebarTitle":"Create a chat completion","openapi":"api/openapi/text/post-chat.openapi.json POST /v1/chat/completions","href":"/api/text/chat"},{"title":"Create a model response","sidebarTitle":"Create a model response","openapi":"api/openapi/text/post-responses.openapi.json POST /v1/responses","href":"/api/text/responses"},{"title":"Create a Message","sidebarTitle":"Create a Message","openapi":"api/openapi/text/post-anthropic-messages.openapi.json POST /v1/messages","href":"/api/text/anthropic-messages"},{"title":"Generate content","sidebarTitle":"Generate content","openapi":"api/openapi/text/post-gemini-generating-content.openapi.json POST /v1beta/models/{model}:{operator}","href":"/api/text/gemini-generating-content"}]},{"group":"Image Models","icon":"image","root":{"title":"Image generation and editing APIs","sidebarTitle":"Image Models","href":"/api/image/index"},"expanded":false,"pages":[{"group":"OpenAI","pages":[{"title":"Create an image","sidebarTitle":"Create an image","openapi":"api/openapi/image/openai/post-images.openapi.json POST /v1/images/generations","href":"/api/image/openai/images"},{"title":"Retrieve an image generation task","sidebarTitle":"Retrieve image task","openapi":"api/openapi/image/openai/get-image-generation-task.openapi.json GET /v1/images/generations/{task_id}","href":"/api/image/openai/image-generation-task"},{"title":"Create image edit","sidebarTitle":"Create image edit","openapi":"api/openapi/image/openai/post-image-editing.openapi.json POST /v1/images/edits","href":"/api/image/openai/image-editing"}]},{"group":"Gemini","pages":[{"title":"Generate images with Gemini","sidebarTitle":"Generate images with Gemini","openapi":"api/openapi/image/gemini/post-gemini-generates-image.openapi.json POST /v1beta/models/{model}:generateContent","href":"/api/image/gemini/gemini-generates-image"},{"title":"Use Gemini image models","sidebarTitle":"Use Gemini image models","href":"/api/image/gemini/generate-image-guide"}]},{"group":"Grok","pages":[{"title":"Generate images with Grok","sidebarTitle":"Generate images","openapi":"api/openapi/image/grok/post-image-generation.openapi.json POST /v1/images/generations","href":"/api/image/grok/image-generation"},{"title":"Edit images with Grok","sidebarTitle":"Edit images","openapi":"api/openapi/image/grok/post-image-editing.openapi.json POST /v1/images/edits","href":"/api/image/grok/image-editing"}]},{"group":"Kling","pages":[{"title":"Generate images with Kling","sidebarTitle":"Generate images with Kling","openapi":"api/openapi/image/kling/post-image-generation.openapi.json POST /kling/v1/images/generations","href":"/api/image/kling/image-generation"},{"title":"Generate a Kling image from multiple images","sidebarTitle":"Generate a Kling image from multiple images","openapi":"api/openapi/image/kling/post-multi-image-to-image.openapi.json POST /kling/v1/images/multi-image2image","href":"/api/image/kling/multi-image-to-image"},{"title":"Expand an image with Kling","sidebarTitle":"Expand an image with Kling","openapi":"api/openapi/image/kling/post-image-expansion.openapi.json POST /kling/v1/images/editing/expand","href":"/api/image/kling/image-expansion"},{"title":"Create a Kling Omni image task","sidebarTitle":"Create a Kling Omni image task","openapi":"api/openapi/image/kling/post-omni-image.openapi.json POST /kling/v1/images/omni-image","href":"/api/image/kling/omni-image"},{"title":"Get a Kling Omni image task","sidebarTitle":"Get a Kling Omni image task","openapi":"api/openapi/image/kling/get-omni-image.openapi.json GET /kling/v1/images/omni-image/{task_id}","href":"/api/image/kling/omni-image-query"}]},{"group":"Midjourney","pages":[{"title":"Start with Midjourney API","sidebarTitle":"Start with Midjourney API","href":"/api/image/midjourney/midjourney-api-quick-start"},{"group":"Task fetching","pages":[{"title":"List Midjourney tasks","sidebarTitle":"List Midjourney tasks","openapi":"api/openapi/image/midjourney/task-fetching-api/post-list-by-condition.openapi.json POST /mj/task/list-by-condition","href":"/api/image/midjourney/task-fetching-api/list-by-condition"},{"title":"Fetch a Midjourney task","sidebarTitle":"Fetch a Midjourney task","openapi":"api/openapi/image/midjourney/task-fetching-api/get-fetch-single-task.openapi.json GET /mj/task/{id}/fetch","href":"/api/image/midjourney/task-fetching-api/fetch-single-task"}]},{"title":"Create a Midjourney imagine task","sidebarTitle":"Create a Midjourney imagine task","openapi":"api/openapi/image/midjourney/post-imagine.openapi.json POST /mj/submit/imagine","href":"/api/image/midjourney/imagine"},{"title":"Create a Midjourney video task","sidebarTitle":"Create a Midjourney video task","openapi":"api/openapi/image/midjourney/post-submit-video.openapi.json POST /mj/submit/video","href":"/api/image/midjourney/submit-video"},{"title":"Create a Midjourney editor task","sidebarTitle":"Create a Midjourney editor task","openapi":"api/openapi/image/midjourney/post-submit-editor.openapi.json POST /mj/submit/edits","href":"/api/image/midjourney/submit-editor"},{"title":"Create a Midjourney action task","sidebarTitle":"Create a Midjourney action task","openapi":"api/openapi/image/midjourney/post-action.openapi.json POST /mj/submit/action","href":"/api/image/midjourney/action"},{"title":"Create a Midjourney blend task","sidebarTitle":"Create a Midjourney blend task","openapi":"api/openapi/image/midjourney/post-blend.openapi.json POST /mj/submit/blend","href":"/api/image/midjourney/blend"},{"title":"Describe an image with Midjourney","sidebarTitle":"Describe an image with Midjourney","openapi":"api/openapi/image/midjourney/post-describe.openapi.json POST /mj/submit/describe","href":"/api/image/midjourney/describe"},{"title":"Create a Midjourney modal task","sidebarTitle":"Create a Midjourney modal task","openapi":"api/openapi/image/midjourney/post-modal.openapi.json POST /mj/submit/modal","href":"/api/image/midjourney/modal"}]},{"group":"Replicate","pages":[{"title":"Create a Replicate prediction","sidebarTitle":"Create a Replicate prediction","openapi":"api/openapi/image/replicate/post-create-predictions-general.openapi.json POST /replicate/v1/models/{models}/predictions","href":"/api/image/replicate/create-predictions-general"},{"title":"Get a Replicate prediction","sidebarTitle":"Get a Replicate prediction","openapi":"api/openapi/image/replicate/get-replicate-query.openapi.json GET /replicate/v1/predictions/{id}","href":"/api/image/replicate/replicate-query"}]},{"group":"Seedream","pages":[{"title":"Create a Seedream image task","sidebarTitle":"Create image task","openapi":"api/openapi/image/seededit-seedream/post-bytedance-image-generation.openapi.json POST /v1/images/generations","href":"/api/image/seededit-seedream/bytedance-image-generation"},{"title":"Retrieve a Seedream image task","sidebarTitle":"Retrieve image task","openapi":"api/openapi/image/seededit-seedream/get-bytedance-image-generation-task.openapi.json GET /v1/images/generations/{task_id}","href":"/api/image/seededit-seedream/bytedance-image-generation-task"}]},{"group":"Flux","pages":[{"title":"Generate a FLUX image","sidebarTitle":"Generate a FLUX image","openapi":"api/openapi/image/flux/post-flux-generate-image.openapi.json POST /flux/v1/{model}","href":"/api/image/flux/flux-generate-image"},{"title":"Get a FLUX image result","sidebarTitle":"Get a FLUX image result","openapi":"api/openapi/image/flux/get-flux-query.openapi.json GET /flux/v1/get_result","href":"/api/image/flux/flux-query"}]}]},{"group":"Video Models","icon":"video","root":{"title":"Video generation APIs","sidebarTitle":"Video Models","href":"/api/video/index"},"expanded":false,"pages":[{"group":"Seedance","pages":[{"title":"Create a Seedance video","sidebarTitle":"Create a Seedance video","openapi":"api/openapi/video/seedance/post-seedance-create.openapi.json POST /v1/videos","href":"/api/video/seedance/create"},{"title":"Retrieve a Seedance video","sidebarTitle":"Retrieve a Seedance video","openapi":"api/openapi/video/seedance/get-seedance-query.openapi.json GET /v1/videos/{id}","href":"/api/video/seedance/query"}]},{"group":"HappyHorse","pages":[{"title":"Create a HappyHorse video","sidebarTitle":"Create a HappyHorse video","openapi":"api/openapi/video/happyhorse/post-create.openapi.json POST /v1/videos","href":"/api/video/happyhorse/create"},{"title":"Retrieve a HappyHorse video","sidebarTitle":"Retrieve a HappyHorse video","openapi":"api/openapi/video/happyhorse/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/happyhorse/retrieve"},{"title":"Download HappyHorse video content","sidebarTitle":"Download HappyHorse video content","openapi":"api/openapi/video/happyhorse/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/happyhorse/retrieve-content"}]},{"group":"MiniMax H3","pages":[{"title":"Create a MiniMax H3 video","sidebarTitle":"Create a MiniMax H3 video","openapi":"api/openapi/video/minimax-h3/post-create.openapi.json POST /v1/videos","href":"/api/video/minimax-h3/create"},{"title":"Retrieve a MiniMax H3 video","sidebarTitle":"Retrieve a MiniMax H3 video","openapi":"api/openapi/video/minimax-h3/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/minimax-h3/retrieve"},{"title":"Download MiniMax H3 video content","sidebarTitle":"Download MiniMax H3 video content","openapi":"api/openapi/video/minimax-h3/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/minimax-h3/retrieve-content"}]},{"group":"Flux 3","pages":[{"title":"Create a Flux 3 video","sidebarTitle":"Create a Flux 3 video","openapi":"api/openapi/video/flux-3/post-create.openapi.json POST /v1/videos","href":"/api/video/flux-3/create"},{"title":"Retrieve a Flux 3 video","sidebarTitle":"Retrieve a Flux 3 video","openapi":"api/openapi/video/flux-3/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/flux-3/retrieve"},{"title":"Download Flux 3 video content","sidebarTitle":"Download Flux 3 video content","openapi":"api/openapi/video/flux-3/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/flux-3/retrieve-content"}]},{"group":"Veo 3","pages":[{"title":"Create a Veo 3 video","sidebarTitle":"Create a Veo 3 video","openapi":"api/openapi/video/veo3/post-create.openapi.json POST /v1/videos","href":"/api/video/veo3/create"},{"title":"Retrieve a Veo 3 video","sidebarTitle":"Retrieve a Veo 3 video","openapi":"api/openapi/video/veo3/get-retrieve.openapi.json GET /v1/videos/{video_id}","href":"/api/video/veo3/retrieve"}]},{"group":"Wan","pages":[{"title":"Create a Wan video","sidebarTitle":"Create a Wan video","openapi":"api/openapi/video/wan/post-create.openapi.json POST /v1/videos","href":"/api/video/wan/create"},{"title":"Retrieve a Wan video","sidebarTitle":"Retrieve a Wan video","openapi":"api/openapi/video/wan/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/wan/retrieve"},{"title":"Download Wan video content","sidebarTitle":"Download Wan video content","openapi":"api/openapi/video/wan/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/wan/retrieve-content"}]},{"group":"xAI","pages":[{"title":"Create a video with Grok","sidebarTitle":"Create a Grok video","openapi":"api/openapi/video/xai/post-video-generation.openapi.json POST /grok/v1/videos/generations","href":"/api/video/xai/video-generation"},{"title":"Create an xAI video edit","sidebarTitle":"Create an xAI video edit","openapi":"api/openapi/video/xai/post-video-edit.openapi.json POST /grok/v1/videos/edits","href":"/api/video/xai/video-edit"},{"title":"Get xAI video results","sidebarTitle":"Get xAI video results","openapi":"api/openapi/video/xai/get-get-video-generation-results.openapi.json GET /grok/v1/videos/{request_id}","href":"/api/video/xai/get-video-generation-results"}]},{"group":"Vidu","pages":[{"title":"Create a Vidu video","sidebarTitle":"Create a Vidu video","openapi":"api/openapi/video/vidu/post-create.openapi.json POST /v1/videos","href":"/api/video/vidu/create"},{"title":"Retrieve a Vidu video","sidebarTitle":"Retrieve a Vidu video","openapi":"api/openapi/video/vidu/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/vidu/retrieve"},{"title":"Download Vidu video content","sidebarTitle":"Download Vidu video content","openapi":"api/openapi/video/vidu/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/vidu/retrieve-content"}]},{"group":"Omni","tag":"Beta","pages":[{"title":"Create an Omni video from text, image, or video","sidebarTitle":"Create an Omni video","openapi":"api/openapi/video/omni/post-create.openapi.json POST /v1/videos","href":"/api/video/omni/create"},{"title":"Retrieve an Omni video","sidebarTitle":"Retrieve an Omni video","openapi":"api/openapi/video/omni/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/omni/retrieve"},{"title":"Download Omni video content","sidebarTitle":"Download Omni video content","openapi":"api/openapi/video/omni/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/omni/retrieve-content"}]},{"group":"Kling","pages":[{"group":"Multimodal video editing","pages":[{"title":"Initialize a Kling editing session","sidebarTitle":"Initialize a Kling editing session","openapi":"api/openapi/video/kling/multimodal-video-editing/post-initialize-video-for-editing.openapi.json POST /kling/v1/videos/multi-elements/init-selection","href":"/api/video/kling/multimodal-video-editing/initialize-video-for-editing"},{"title":"Add Kling video selection","sidebarTitle":"Add Kling video selection","openapi":"api/openapi/video/kling/multimodal-video-editing/post-add-video-selection.openapi.json POST /kling/v1/videos/multi-elements/add-selection","href":"/api/video/kling/multimodal-video-editing/add-video-selection"},{"title":"Delete Kling video selection","sidebarTitle":"Delete Kling video selection","openapi":"api/openapi/video/kling/multimodal-video-editing/post-delete-video-selection.openapi.json POST /kling/v1/videos/multi-elements/delete-selection","href":"/api/video/kling/multimodal-video-editing/delete-video-selection"},{"title":"Clear Kling video selection","sidebarTitle":"Clear Kling video selection","openapi":"api/openapi/video/kling/multimodal-video-editing/post-clear-video-selection.openapi.json POST /kling/v1/videos/multi-elements/clear-selection","href":"/api/video/kling/multimodal-video-editing/clear-video-selection"},{"title":"Preview Kling video selection","sidebarTitle":"Preview Kling video selection","openapi":"api/openapi/video/kling/multimodal-video-editing/post-preview-selected-video-area.openapi.json POST /kling/v1/videos/multi-elements/preview-selection","href":"/api/video/kling/multimodal-video-editing/preview-selected-video-area"},{"title":"Create a Kling multimodal edit task","sidebarTitle":"Create a Kling multimodal edit task","openapi":"api/openapi/video/kling/multimodal-video-editing/post-create-task.openapi.json POST /kling/v1/videos/multi-elements","href":"/api/video/kling/multimodal-video-editing/create-task"}]},{"group":"Model routes","pages":[{"title":"Create a Kling text-to-video task by model","sidebarTitle":"Text to video","openapi":"api/openapi/video/kling/model-routes/post-text-to-video.openapi.json POST /text-to-video/{model}","href":"/api/video/kling/model-routes/text-to-video"},{"title":"Create a Kling image-to-video task by model","sidebarTitle":"Image to video","openapi":"api/openapi/video/kling/model-routes/post-image-to-video.openapi.json POST /image-to-video/{model}","href":"/api/video/kling/model-routes/image-to-video"},{"title":"Create a Kling Omni video","sidebarTitle":"Omni video","openapi":"api/openapi/video/kling/model-routes/post-omni-video.openapi.json POST /omni-video/{model}","href":"/api/video/kling/model-routes/omni-video"},{"title":"Create a Kling motion-control video","sidebarTitle":"Motion control","openapi":"api/openapi/video/kling/model-routes/post-motion-control.openapi.json POST /motion-control/{model}","href":"/api/video/kling/model-routes/motion-control"},{"title":"Get a Kling model-route task","sidebarTitle":"Get a Kling task","openapi":"api/openapi/video/kling/model-routes/get-tasks.openapi.json GET /tasks","href":"/api/video/kling/model-routes/tasks"}]},{"title":"Create a Kling text-to-video task","sidebarTitle":"Create a Kling text-to-video task","openapi":"api/openapi/video/kling/post-text-to-video.openapi.json POST /kling/v1/videos/text2video","href":"/api/video/kling/text-to-video"},{"title":"Create a Kling image-to-video task","sidebarTitle":"Create a Kling image-to-video task","openapi":"api/openapi/video/kling/post-image-to-video.openapi.json POST /kling/v1/videos/image2video","href":"/api/video/kling/image-to-video"},{"title":"Create a Kling Motion Control task","sidebarTitle":"Create a Kling Motion Control task","openapi":"api/openapi/video/kling/post-motion-control.openapi.json POST /kling/v1/videos/motion-control","href":"/api/video/kling/motion-control"},{"title":"Create a Kling multi-image video task","sidebarTitle":"Create a Kling multi-image video task","openapi":"api/openapi/video/kling/post-multi-image-to-video.openapi.json POST /kling/v1/videos/multi-image2video","href":"/api/video/kling/multi-image-to-video"},{"title":"Extend a Kling video","sidebarTitle":"Extend a Kling video","openapi":"api/openapi/video/kling/post-video-extension.openapi.json POST /kling/v1/videos/video-extend","href":"/api/video/kling/video-extension"},{"title":"Create Kling speech","sidebarTitle":"Create Kling speech","openapi":"api/openapi/video/kling/post-tts.openapi.json POST /kling/v1/audio/tts","href":"/api/video/kling/tts"},{"title":"Create a Kling avatar video","sidebarTitle":"Create a Kling avatar video","openapi":"api/openapi/video/kling/post-avatar.openapi.json POST /kling/v1/videos/avatar/image2video","href":"/api/video/kling/avatar"},{"title":"Identify faces for Kling lip-sync","sidebarTitle":"Identify faces for Kling lip-sync","openapi":"api/openapi/video/kling/post-lip-sync.openapi.json POST /kling/v1/videos/identify-face","href":"/api/video/kling/lip-sync"},{"title":"Create a Kling advanced lip-sync task","sidebarTitle":"Create a Kling advanced lip-sync task","openapi":"api/openapi/video/kling/post-counterpart-creating-tasks.openapi.json POST /kling/v1/videos/advanced-lip-sync","href":"/api/video/kling/counterpart-creating-tasks"},{"title":"Apply Kling video effects","sidebarTitle":"Apply Kling video effects","openapi":"api/openapi/video/kling/post-video-effects.openapi.json POST /kling/v1/videos/effects","href":"/api/video/kling/video-effects"},{"title":"Create Kling text-to-audio","sidebarTitle":"Create Kling text-to-audio","openapi":"api/openapi/video/kling/post-text-to-audio.openapi.json POST /kling/v1/audio/text-to-audio","href":"/api/video/kling/text-to-audio"},{"title":"Create Kling video-to-audio","sidebarTitle":"Create Kling video-to-audio","openapi":"api/openapi/video/kling/post-video-to-audio.openapi.json POST /kling/v1/audio/video-to-audio","href":"/api/video/kling/video-to-audio"},{"title":"Recognize images with Kling","sidebarTitle":"Recognize images with Kling","openapi":"api/openapi/video/kling/post-image-recognize.openapi.json POST /kling/v1/videos/image-recognize","href":"/api/video/kling/image-recognize"},{"title":"Get a Kling task","sidebarTitle":"Get a Kling task","openapi":"api/openapi/video/kling/get-individual-queries.openapi.json GET /kling/v1/{action}/{action2}/{task_id}","href":"/api/video/kling/individual-queries"},{"title":"Create a Kling Omni video","sidebarTitle":"Create a Kling Omni video","openapi":"api/openapi/video/kling/post-omni-video.openapi.json POST /kling/v1/videos/omni-video","href":"/api/video/kling/omni-video"},{"title":"Get a Kling Omni video","sidebarTitle":"Get a Kling Omni video","openapi":"api/openapi/video/kling/get-omni-query.openapi.json GET /kling/v1/videos/omni-video/{task_id}","href":"/api/video/kling/omni-query"},{"title":"Use Kling callback URLs","sidebarTitle":"Use Kling callback URLs","href":"/api/video/kling/callback_url"}]},{"group":"Runway","pages":[{"title":"Runway API overview","sidebarTitle":"Overview","href":"/api/video/runway/overview"},{"group":"Images","pages":[{"title":"Create a Runway image","sidebarTitle":"Create a Runway image","openapi":"api/openapi/video/runway/official-format/post-generate-an-image-from-text.openapi.json POST /runwayml/v1/text_to_image","href":"/api/video/runway/official-format/generate-an-image-from-text"}]},{"group":"Videos","pages":[{"title":"Create a Runway image-to-video task","sidebarTitle":"Create a Runway image-to-video task","openapi":"api/openapi/video/runway/official-format/post-runway-images-raw-video.openapi.json POST /runwayml/v1/image_to_video","href":"/api/video/runway/official-format/runway-images-raw-video"},{"title":"Create a Runway text-to-video task","sidebarTitle":"Create a Runway text-to-video task","openapi":"api/openapi/video/runway/official-format/post-generate-a-video-from-text.openapi.json POST /runwayml/v1/text_to_video","href":"/api/video/runway/official-format/generate-a-video-from-text"},{"title":"Create a Runway video-to-video task","sidebarTitle":"Create a Runway video-to-video task","openapi":"api/openapi/video/runway/official-format/post-generate-a-video-from-a-video.openapi.json POST /runwayml/v1/video_to_video","href":"/api/video/runway/official-format/generate-a-video-from-a-video"},{"title":"Create a Runway character performance","sidebarTitle":"Create a Runway character performance","openapi":"api/openapi/video/runway/official-format/post-control-a-character.openapi.json POST /runwayml/v1/character_performance","href":"/api/video/runway/official-format/control-a-character"},{"title":"Upscale a Runway video","sidebarTitle":"Upscale a Runway video","openapi":"api/openapi/video/runway/official-format/post-upscale-a-video.openapi.json POST /runwayml/v1/video_upscale","href":"/api/video/runway/official-format/upscale-a-video"}]},{"group":"Audio","pages":[{"title":"Generate Runway sound effects","sidebarTitle":"Generate Runway sound effects","openapi":"api/openapi/video/runway/official-format/post-generate-sound-effects.openapi.json POST /runwayml/v1/sound_effect","description":"Generate sound effects or audio scenes from a text prompt with the Runway API.","href":"/api/video/runway/official-format/generate-sound-effects"},{"title":"Generate Runway speech from text","sidebarTitle":"Generate Runway speech from text","openapi":"api/openapi/video/runway/official-format/post-generate-speech-from-text.openapi.json POST /runwayml/v1/text_to_speech","href":"/api/video/runway/official-format/generate-speech-from-text"},{"title":"Convert Runway speech","sidebarTitle":"Convert Runway speech","openapi":"api/openapi/video/runway/official-format/post-convert-speech.openapi.json POST /runwayml/v1/speech_to_speech","description":"Convert recorded dialogue into a selected voice with the Runway API.","href":"/api/video/runway/official-format/convert-speech"},{"title":"Dub Runway audio","sidebarTitle":"Dub Runway audio","openapi":"api/openapi/video/runway/official-format/post-dub-audio.openapi.json POST /runwayml/v1/voice_dubbing","href":"/api/video/runway/official-format/dub-audio"},{"title":"Isolate a Runway voice","sidebarTitle":"Isolate a Runway voice","openapi":"api/openapi/video/runway/official-format/post-isolate-voice.openapi.json POST /runwayml/v1/voice_isolation","href":"/api/video/runway/official-format/isolate-voice"}]},{"group":"Tasks","pages":[{"title":"Get a Runway task","sidebarTitle":"Get a Runway task","openapi":"api/openapi/video/runway/official-format/get-runway-to-get-task-details.openapi.json GET /runwayml/v1/tasks/{id}","href":"/api/video/runway/official-format/runway-to-get-task-details"}]}]}]},{"group":"Audio Models","icon":"volume-high","root":{"title":"Audio APIs","sidebarTitle":"Audio Models","href":"/api/audio/index"},"expanded":false,"pages":[{"title":"Create speech","sidebarTitle":"Create speech","openapi":"api/openapi/audio/post-create-speech.openapi.json POST /v1/audio/speech","href":"/api/audio/create-speech"},{"title":"Create transcription","sidebarTitle":"Create transcription","openapi":"api/openapi/audio/post-create-transcription.openapi.json POST /v1/audio/transcriptions","href":"/api/audio/create-transcription"},{"title":"Create translation","sidebarTitle":"Create translation","openapi":"api/openapi/audio/post-create-translation.openapi.json POST /v1/audio/translations","href":"/api/audio/create-translation"}]},{"group":"Embeddings","icon":"database","root":{"title":"Embeddings API","sidebarTitle":"Embeddings","href":"/api/embeddings/index"},"expanded":false,"pages":[{"title":"Create embeddings","sidebarTitle":"Create embeddings","openapi":"api/openapi/text/post-embeddings.openapi.json POST /v1/embeddings","href":"/api/text/embeddings"}]},{"group":"Content moderation","icon":"shield-check","expanded":false,"pages":[{"title":"Create a moderation","sidebarTitle":"Create a moderation","openapi":"api/openapi/content-moderation/create-moderation.openapi.json POST /v1/moderations","href":"/api/content-moderation/create-moderation"}]},{"group":"API keys","icon":"key","expanded":false,"pages":[{"title":"Get current API key","sidebarTitle":"Get current API key","openapi":"api/openapi/api-keys/get-current-api-key.openapi.json GET /api/usage/token","href":"/api/api-keys/get-current-api-key"},{"title":"List API keys","sidebarTitle":"List API keys","openapi":"api/openapi/api-keys/list-api-keys.openapi.json GET /api/token/","href":"/api/api-keys/list-api-keys"},{"title":"Create an API key","sidebarTitle":"Create an API key","openapi":"api/openapi/api-keys/create-api-key.openapi.json POST /api/token/","href":"/api/api-keys/create-api-key"},{"title":"Retrieve an API key","sidebarTitle":"Retrieve an API key","openapi":"api/openapi/api-keys/get-api-key.openapi.json GET /api/token/{id}","href":"/api/api-keys/get-api-key"},{"title":"Delete an API key","sidebarTitle":"Delete an API key","openapi":"api/openapi/api-keys/delete-api-key.openapi.json DELETE /api/token/{id}","href":"/api/api-keys/delete-api-key"},{"title":"Update an API key","sidebarTitle":"Update an API key","openapi":"api/openapi/api-keys/update-api-key.openapi.json PUT /api/token/","href":"/api/api-keys/update-api-key"}]}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/integrations"}]}]},{"language":"zh-Hans","pages":[{"title":"zh-Hans","href":"/zh-Hans/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"zh-Hant","pages":[{"title":"zh-Hant","href":"/zh-Hant/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"ja","pages":[{"title":"ja","href":"/ja/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"ko","pages":[{"title":"ko","href":"/ko/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"de","pages":[{"title":"de","href":"/de/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"es","pages":[{"title":"es","href":"/es/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"it","pages":[{"title":"it","href":"/it/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"pt","pages":[{"title":"pt","href":"/pt/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"ru","pages":[{"title":"ru","href":"/ru/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"ar","pages":[{"title":"ar","href":"/ar/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"vi","pages":[{"title":"vi","href":"/vi/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"id","pages":[{"title":"id","href":"/id/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"tr","pages":[{"title":"tr","href":"/tr/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"pl","pages":[{"title":"pl","href":"/pl/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"nl","pages":[{"title":"nl","href":"/nl/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"no","pages":[{"title":"no","href":"/no/api/video/runway/official-format/generate-speech-from-text"}]},{"language":"uk","pages":[{"title":"uk","href":"/uk/api/video/runway/official-format/generate-speech-from-text"}]}]},"basePath":"","title":"Generate Runway speech from text - CometAPI Documentation","buildId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","deploymentId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-DX1Meug0.js","utils-B_OMIQVC.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-ChxhRPMa.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CuKvD8Iv.js","snippetPresets-C5d7p2hp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-BAvA99GL.js","ApiExamples-CfHcE8m4.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C1zZV314.js","shallow-CmQhqCJn.js","getApiPlaygroundDisplay-YRo9s1O7.js","CodeSnippet-RN1MTdfk.js","CodeSnippets-DKLPHxJA.js","getPastedJson-bz0M41mU.js","icon-CsmhpPrv.js","MethodPill-CNGsVE77.js","DuplicateIcon-DilfU_Z2.js","createIcon-BdsYzQck.js","DynamicMarkdown-CbqEDjbV.js","SectionHeading-O6hXpFCN.js","axios-vUo_bRtp.js","Markdown-nKm-uidQ.js","clsx-ClVdStUn.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CIQkMg3R.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ImrFS4Fy.js"]}