from breeze_blue import BreezeBlue
client = BreezeBlue()
with client.text_to_speech.stream_with_timestamps("voc_example", text="Hello world.") as stream:
for chunk in stream:
print(chunk["word_timestamps"])
import { BreezeBlueClient } from "@breeze.blue/sdk";
const client = new BreezeBlueClient();
const stream = await client.textToSpeech.streamWithTimestamps("voc_example", { text: "Hello world." });
for await (const chunk of stream) console.log(chunk.wordTimestamps);
Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See Speech timing for stream handling.
from breeze_blue import BreezeBlue
client = BreezeBlue()
with client.text_to_speech.stream_with_timestamps("voc_example", text="Hello world.") as stream:
for chunk in stream:
print(chunk["word_timestamps"])
import { BreezeBlueClient } from "@breeze.blue/sdk";
const client = new BreezeBlueClient();
const stream = await client.textToSpeech.streamWithTimestamps("voc_example", { text: "Hello world." });
for await (const chunk of stream) console.log(chunk.wordTimestamps);
Text to synthesize. Up to 1000 characters by default; accounts with an approved higher limit may send up to their configured limit, at most 2000 characters. See Audio tags.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Breeze Blue","description":"Reference documentation, guides, and quickstarts for the Breeze Developer API, SDKs, and CLI.","colors":{"primary":"#0B5AD2","light":"#3D78DC","dark":"#0B5AD2"},"logo":{"light":"https://mintcdn.com/breezeblue/HJi9cL24BjuobeR3/logo-light.png?fit=max\u0026auto=format\u0026n=HJi9cL24BjuobeR3\u0026q=85\u0026s=64b2b794b84ec5e5975584a36d52f1cd","dark":"https://mintcdn.com/breezeblue/HJi9cL24BjuobeR3/logo-dark.png?fit=max\u0026auto=format\u0026n=HJi9cL24BjuobeR3\u0026q=85\u0026s=f5a080d68beff8740d65ef033ab6b564","href":"https://breezeblue.ai"},"favicon":"https://mintcdn.com/breezeblue/uwKEVtPuSz6xAzRM/favicon.png?fit=max\u0026auto=format\u0026n=uwKEVtPuSz6xAzRM\u0026q=85\u0026s=341474510af96418bfb8d36f42125d88","api":{"examples":{"autogenerate":false}},"appearance":{"default":"system","strict":false},"navbar":{"links":[{"href":"https://breezeblue.ai","label":"Breeze Blue"},{"href":"https://breezeblue.ai/app/developer","label":"Developer Console"}],"primary":{"type":"button","label":"Open Studio","href":"https://breezeblue.ai/app"}},"footer":{"socials":{"website":"https://breezeblue.ai","discord":"https://discord.gg/6H7AgPe9pA","x":"https://x.com/BreezeBlueX"},"links":[{"header":"Product","items":[{"label":"Creator","href":"https://breezeblue.ai/app"},{"label":"API","href":"/api-reference/introduction"},{"label":"CLI","href":"/cli"}]},{"header":"Explore","items":[{"label":"Bluebell","href":"https://breezeblue.ai/bluebell"},{"label":"Voice Galaxy","href":"https://breezeblue.ai/labs/voice-galaxy"}]},{"header":"Company","items":[{"label":"About","href":"https://breezeblue.ai/about"},{"label":"Blog","href":"https://breezeblue.ai/blog"},{"label":"Contact","href":"https://breezeblue.ai/contact"},{"label":"Email","href":"mailto:[email protected]"}]},{"header":"Legal","items":[{"label":"Privacy","href":"https://breezeblue.ai/legal/privacy"},{"label":"Terms","href":"https://breezeblue.ai/legal/terms"}]}]},"seo":{"metatags":{"google-site-verification":"eAqPjwtfRocfzlfoMcCcsjpUiDlOBlWswzYSNGb_D4s"},"indexing":"navigable"},"icons":{"library":"lucide"},"contextual":{"options":["copy","download-spec","chatgpt","claude"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"breezeblue","hasAudioNarration":false,"actualSubdomain":"breezeblue","customDomains":["docs.breezeblue.ai"],"gitSource":{"type":"github","owner":"breezebluestudio","repo":"breezebluestudio","deployBranch":"main","contentDirectory":"developer-docs","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae9f83c22dab27fc6c0c7cb","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"API Reference","count":85},{"language":"default","tag":"Studio","count":42},{"language":"default","tag":"Documentation","count":23},{"language":"default","tag":"CLI Reference","count":13},{"language":"default","tag":"Guides","count":13},{"language":"default","tag":"Account","count":12},{"language":"default","tag":"Voice Previews","count":11},{"language":"default","tag":"Text to Speech","count":8},{"language":"default","tag":"Voices","count":6},{"language":"default","tag":"Get started","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#api-playground-2-operation-page .mdx-content:has(>.api-next-steps){display:flex;flex-direction:column}#api-playground-2-operation-page .mdx-content>.api-next-steps{order:1}"}],"page":{"pagePath":"api-reference/text-to-speech/stream-speech-with-word-timestamps","slug":"/api-reference/text-to-speech/stream-speech-with-word-timestamps","pageMetadata":{"title":"Stream speech with word timestamps","description":"Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See [Speech timing](https://docs.breezeblue.ai/guides/speech-timing) for stream handling.","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/text-to-speech/{voice_id}/stream/with-timestamps","href":"/api-reference/text-to-speech/stream-speech-with-word-timestamps","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n a: \"a\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See \", _jsx(_components.a, {\n href: \"https://docs.breezeblue.ai/guides/speech-timing\",\n children: \"Speech timing\"\n }), \" for stream handling.\"]\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{jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const{Card,Columns,Heading}={..._provideComponents(),...props.components};if(!Card)_missingMdxReference(`Card`,true);if(!Columns)_missingMdxReference(`Columns`,true);if(!Heading)_missingMdxReference(`Heading`,true);return _jsxs(`section`,{className:`api-next-steps`,\"aria-label\":`Continue building`,children:[_jsx(Heading,{level:`2`,id:`continue-building`,children:`Continue building`}),_jsxs(Columns,{cols:2,children:[_jsx(Card,{title:`Write instructions`,icon:`sliders-horizontal`,href:`/guides/voice-instruction-prompting`,children:`Choose intent, emotion, and delivery.`}),_jsx(Card,{title:`Speech timing`,icon:`clock`,href:`/guides/speech-timing`,children:`Build captions with word timing.`}),_jsx(Card,{title:`Convert with timestamps`,icon:`braces`,href:`/api-reference/text-to-speech/convert-with-timestamps`,children:`Get complete audio with word timing.`}),_jsx(Card,{title:`Output formats`,icon:`file-audio`,href:`/concepts/output-format`,children:`Choose and decode an audio format.`})]})]})}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":"Stream speech with word timestamps","description":"Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See [Speech timing](https://docs.breezeblue.ai/guides/speech-timing) for stream handling.","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/text-to-speech/{voice_id}/stream/with-timestamps","href":"/api-reference/text-to-speech/stream-speech-with-word-timestamps","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Continue building","slug":"continue-building","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Text to Speech"],"summary":"Stream speech with word timestamps","description":"Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See [Speech timing](https://docs.breezeblue.ai/guides/speech-timing) for stream handling.","operationId":"tts_stream_with_timestamps","parameters":["586186ce-dde6-409f-9553-16eb2d109f95","69770011-7e33-4731-96c6-ea67693850fe","9530e895-71b1-4dd3-a704-6b98331e408f"],"requestBody":"a4834220-f4c8-41fe-a035-932740f64b73","responses":{"200":"27bc2676-2479-462d-922a-623d05fec1d4","400":"22b51aea-7779-4874-82b1-e26749ea363b","401":"3a8bd6b2-3a24-4a58-ac90-005b1d3abe86","403":"f2dd6888-7f7b-4143-92b9-3eb19449f9e6","404":"19ad9d23-5848-4a49-b532-4a02c70af91a","422":"f3014783-a963-4b71-adfa-e06954e81cc8","429":"eb01cfc2-702f-4ef2-85f6-00042dde937e","503":"e9a8bb5c-29f8-43e7-90a0-69a7c98be103","504":"e8bf932f-939a-4c37-9353-71ea980b1ffd"},"x-mint":{"content":"\u003csection className=\"api-next-steps\" aria-label=\"Continue building\">\n\n## Continue building\n\n\u003cColumns cols={2}>\n\u003cCard title=\"Write instructions\" icon=\"sliders-horizontal\" href=\"/guides/voice-instruction-prompting\">Choose intent, emotion, and delivery.\u003c/Card>\n\u003cCard title=\"Speech timing\" icon=\"clock\" href=\"/guides/speech-timing\">Build captions with word timing.\u003c/Card>\n\u003cCard title=\"Convert with timestamps\" icon=\"braces\" href=\"/api-reference/text-to-speech/convert-with-timestamps\">Get complete audio with word timing.\u003c/Card>\n\u003cCard title=\"Output formats\" icon=\"file-audio\" href=\"/concepts/output-format\">Choose and decode an audio format.\u003c/Card>\n\u003c/Columns>\n\n\u003c/section>"},"x-breeze-api-name":"Stream speech with timestamps","x-breeze-docs-group":"Text to Speech","x-breeze-docs-href":"/docs/api-reference/text-to-speech/stream-with-timestamps","x-breeze-notes":["Supports BreezeBlue TTS 2 models. timestamp_mode is chunk (default) or lookahead. Timing follows the delivered audio, including speed and inserted segment pauses.","For one complete JSON response, use [Convert with timestamps](https://docs.breezeblue.ai/api-reference/text-to-speech/convert-with-timestamps). See [Speech timing](https://docs.breezeblue.ai/guides/speech-timing) for SDK and CLI examples."],"security":["a0befd42-786d-4635-bccd-773f26fbfbfb"],"x-codeSamples":[{"lang":"cURL","label":"cURL","source":"curl \\\n --request POST \\\n --url \"https://api.breeze.blue/v1/text-to-speech/voc_xeh3w54cqvnp/stream/with-timestamps\" \\\n --header \"xi-api-key: $BREEZE_API_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"text\": \"Hello world.\",\n \"model_id\": \"breeze-tts-2-multilingual\",\n \"language_code\": \"en\",\n \"timestamp_mode\": \"chunk\"\n}'"},{"lang":"Python","source":"from breeze_blue import BreezeBlue\n\nclient = BreezeBlue()\nwith client.text_to_speech.stream_with_timestamps(\"voc_example\", text=\"Hello world.\") as stream:\n for chunk in stream:\n print(chunk[\"word_timestamps\"])"},{"lang":"TypeScript","source":"import { BreezeBlueClient } from \"@breeze.blue/sdk\";\nconst client = new BreezeBlueClient();\nconst stream = await client.textToSpeech.streamWithTimestamps(\"voc_example\", { text: \"Hello world.\" });\nfor await (const chunk of stream) console.log(chunk.wordTimestamps);"}],"method":"post","type":"path","servers":["8bb76e4e-0975-4cf1-8ac6-7bf2353dcdda"],"path":"/v1/text-to-speech/{voice_id}/stream/with-timestamps","baseUrlOptions":["https://api.breeze.blue"],"title":"Stream speech with word timestamps","codeSamples":[{"label":"cURL","lang":"cURL","source":"curl \\\n --request POST \\\n --url \"https://api.breeze.blue/v1/text-to-speech/voc_xeh3w54cqvnp/stream/with-timestamps\" \\\n --header \"xi-api-key: $BREEZE_API_KEY\" \\\n --header \"Content-Type: application/json\" \\\n --data '{\n \"text\": \"Hello world.\",\n \"model_id\": \"breeze-tts-2-multilingual\",\n \"language_code\": \"en\",\n \"timestamp_mode\": \"chunk\"\n}'"},{"lang":"Python","source":"from breeze_blue import BreezeBlue\n\nclient = BreezeBlue()\nwith client.text_to_speech.stream_with_timestamps(\"voc_example\", text=\"Hello world.\") as stream:\n for chunk in stream:\n print(chunk[\"word_timestamps\"])"},{"lang":"TypeScript","source":"import { BreezeBlueClient } from \"@breeze.blue/sdk\";\nconst client = new BreezeBlueClient();\nconst stream = await client.textToSpeech.streamWithTimestamps(\"voc_example\", { text: \"Hello world.\" });\nfor await (const chunk of stream) console.log(chunk.wordTimestamps);"}],"requiredOnlyExamples":false,"disableCodeSampleGeneration":true,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{"586186ce-dde6-409f-9553-16eb2d109f95":{"name":"voice_id","in":"path","required":true,"schema":{"title":"Voice Id","type":"string","isRequired":true,"description":"Voice ID. See [List voices](https://docs.breezeblue.ai/api-reference/voices/list-voices).","uniqueKey":"","typeLabel":"string"},"description":"Voice ID. See [List voices](https://docs.breezeblue.ai/api-reference/voices/list-voices)."},"69770011-7e33-4731-96c6-ea67693850fe":{"name":"output_format","in":"query","required":false,"schema":{"type":"string","title":"Output Format","default":"pcm","enum":["pcm","mp3","wav"],"isRequired":false,"description":"Audio encoding: pcm, mp3, or wav. Default: pcm. Audio is 24 kHz mono. Decode audio_base64 before playing. See [Output formats](https://docs.breezeblue.ai/concepts/output-format).","uniqueKey":"","typeLabel":"enum\u003cstring>"},"description":"Audio encoding: pcm, mp3, or wav. Default: pcm. Audio is 24 kHz mono. Decode audio_base64 before playing. See [Output formats](https://docs.breezeblue.ai/concepts/output-format)."},"9530e895-71b1-4dd3-a704-6b98331e408f":{"name":"enable_logging","in":"query","required":false,"schema":{"oneOf":[{"type":"boolean","title":"Enable Logging","uniqueKey":"oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Enable Logging","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"boolean | null"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"text":{"type":"string","minLength":1,"title":"Text","description":"Text to synthesize. Up to 1000 characters by default; accounts with an approved higher limit may send up to their configured limit, at most 2000 characters. See [Audio tags](https://docs.breezeblue.ai/guides/audio-tags).","isRequired":true,"uniqueKey":"text","typeLabel":"string"},"model_id":{"oneOf":[{"type":"string","title":"Model Id","description":"Model ID for speech generation. Selected automatically when omitted. See [List models](https://docs.breezeblue.ai/api-reference/models/list-models).","maxLength":120,"minLength":1,"uniqueKey":"model_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Model Id","description":"Model ID for speech generation. Selected automatically when omitted. See [List models](https://docs.breezeblue.ai/api-reference/models/list-models).","uniqueKey":"model_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"model_id","typeLabel":"string | null"},"language_code":{"oneOf":[{"type":"string","title":"Language Code","description":"ISO 639-1 two-letter language code supported by the selected model. See [supported language codes](https://docs.breezeblue.ai/concepts/multilingual).","maxLength":2,"minLength":2,"pattern":"^[A-Za-z]{2}$","uniqueKey":"language_code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Language Code","description":"ISO 639-1 two-letter language code supported by the selected model. See [supported language codes](https://docs.breezeblue.ai/concepts/multilingual).","uniqueKey":"language_code.oneOf.1","typeLabel":"null"}],"uniqueKey":"language_code","typeLabel":"string | null"},"instructions":{"oneOf":[{"type":"string","title":"Instructions","description":"Performance instructions, written in the same language as the input text. Leading and trailing whitespace is removed. See [Expressive controls](https://docs.breezeblue.ai/guides/text-to-speech#tuning-expressive-controls), [Voice instruction prompting](https://docs.breezeblue.ai/guides/voice-instruction-prompting).","uniqueKey":"instructions.oneOf.0","typeLabel":"string"},{"type":"null","title":"Instructions","description":"Performance instructions, written in the same language as the input text. Leading and trailing whitespace is removed. See [Expressive controls](https://docs.breezeblue.ai/guides/text-to-speech#tuning-expressive-controls), [Voice instruction prompting](https://docs.breezeblue.ai/guides/voice-instruction-prompting).","uniqueKey":"instructions.oneOf.1","typeLabel":"null"}],"uniqueKey":"instructions","typeLabel":"string | null"},"voice_settings":{"oneOf":[{"type":"object","title":"TtsVoiceSettingsPayload","description":"Per-request voice settings. See [Expressive controls](https://docs.breezeblue.ai/guides/text-to-speech#tuning-expressive-controls).","properties":{"guidance_scale":{"oneOf":[{"type":"number","title":"Guidance Scale","description":"Generation guidance strength. Accepted range: 1.0 to 10.0. Default: 1.0. See [Expressive controls](https://docs.breezeblue.ai/guides/text-to-speech#tuning-expressive-controls).","maximum":10,"minimum":1,"uniqueKey":"voice_settings.oneOf.0.guidance_scale.oneOf.0","typeLabel":"number"},{"type":"null","title":"Guidance Scale","description":"Generation guidance strength. Accepted range: 1.0 to 10.0. Default: 1.0. See [Expressive controls](https://docs.breezeblue.ai/guides/text-to-speech#tuning-expressive-controls).","uniqueKey":"voice_settings.oneOf.0.guidance_scale.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_settings.oneOf.0.guidance_scale","typeLabel":"number | null"},"speed":{"type":"number","maximum":2,"minimum":0.5,"title":"Speed","description":"Speech speed multiplier that preserves pitch. Range: 0.5–2.0; default: 1.0.","default":1,"uniqueKey":"voice_settings.oneOf.0.speed","typeLabel":"number"},"volume":{"type":"number","maximum":2,"minimum":0.01,"title":"Volume","description":"Request-only linear amplitude multiplier. Range: 0.01–2.0 (1%–200%); default: 1.0. Values above 1.0 may clip peaks. Does not normalize loudness.","default":1,"uniqueKey":"voice_settings.oneOf.0.volume","typeLabel":"number"},"use_speaker_boost":{"type":"boolean","title":"Use Speaker Boost","description":"Improve similarity to the reference voice. Default: false. Ignored when instructions are non-empty and guidance_scale is above 1; otherwise, when true, guidance_scale is applied as 1. Instructions are always applied.","default":false,"uniqueKey":"voice_settings.oneOf.0.use_speaker_boost","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"voice_settings.oneOf.0","typeLabel":"TtsVoiceSettingsPayload · object"},{"type":"null","description":"Per-request voice settings. See [Expressive controls](https://docs.breezeblue.ai/guides/text-to-speech#tuning-expressive-controls).","uniqueKey":"voice_settings.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice_settings","typeLabel":"TtsVoiceSettingsPayload · object | null"},"timestamp_mode":{"type":"string","enum":["chunk","lookahead"],"title":"Timestamp Mode","default":"chunk","description":"See [Streaming timing modes](https://docs.breezeblue.ai/guides/speech-timing#streaming-audio-with-timing).","uniqueKey":"timestamp_mode","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"type":"object","required":["text"],"title":"TtsWithTimestampsRequest","uniqueKey":"","typeLabel":"TtsWithTimestampsRequest · object"},"examples":{"Example":{"title":"Example","value":{"text":"\u003cstring>","model_id":"\u003cstring>","language_code":"\u003cstring>","instructions":"\u003cstring>","voice_settings":{"guidance_scale":5.5,"speed":1,"volume":1,"use_speaker_boost":false},"timestamp_mode":"chunk"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"27bc2676-2479-462d-922a-623d05fec1d4":{"description":"NDJSON; each line is a speech timing chunk. A stream error instead contains an error object with code and message.","content":{"application/x-ndjson":{"schema":{"properties":{"audio_base64":{"description":"Base64 audio bytes; may be empty for metadata-only updates. See [Decode audio and timing](https://docs.breezeblue.ai/guides/speech-timing).","title":"Audio Base64","type":"string","isRequired":true,"uniqueKey":"audio_base64","typeLabel":"string"},"word_timestamps":{"items":{"properties":{"index":{"description":"Word/token index, shared across fragments of the same word.","minimum":0,"title":"Index","type":"integer","isRequired":true,"uniqueKey":"word_timestamps.items.[INDEX].index","typeLabel":"integer"},"word":{"title":"Word","type":"string","isRequired":true,"uniqueKey":"word_timestamps.items.[INDEX].word","typeLabel":"string"},"start":{"description":"Start in seconds from the generated audio origin.","minimum":0,"title":"Start","type":"number","isRequired":true,"uniqueKey":"word_timestamps.items.[INDEX].start","typeLabel":"number"},"end":{"description":"End in seconds from the generated audio origin.","minimum":0,"title":"End","type":"number","isRequired":true,"uniqueKey":"word_timestamps.items.[INDEX].end","typeLabel":"number"}},"required":["index","word","start","end"],"title":"WordTimestampResponse","type":"object","uniqueKey":"word_timestamps.items.[INDEX]","typeLabel":"WordTimestampResponse · object"},"title":"Word Timestamps","type":"array","description":"See [Speech timing](https://docs.breezeblue.ai/guides/speech-timing).","isRequired":true,"uniqueKey":"word_timestamps","typeLabel":"WordTimestampResponse · object[]"}},"required":["audio_base64","word_timestamps"],"title":"SpeechTimingChunkResponse","type":"object","uniqueKey":"","typeLabel":"SpeechTimingChunkResponse · object"},"examples":{"Example":{"title":"Example","value":{"audio_base64":"\u003cstring>","word_timestamps":[{"index":1,"word":"\u003cstring>","start":1,"end":1}]}}},"exampleType":"generated"}},"headers":{"history-item-id":{"description":"History item ID for the generated audio.","schema":{"type":"string"}},"x-breeze-api-key-id":{"description":"Public API key identifier used to authenticate the request, when an API key was used.","schema":{"type":"string"}}},"exampleType":"generated"},"22b51aea-7779-4874-82b1-e26749ea363b":{"description":"HTTP 400 error response.","content":{"application/json":{"schema":{"properties":{"code":{"title":"Code","type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error":{"title":"Error","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"ok":{"default":false,"title":"Ok","type":"boolean","uniqueKey":"ok","typeLabel":"boolean"},"meta":{"oneOf":[{"type":"object","title":"Meta","additionalProperties":true,"uniqueKey":"meta.oneOf.0","typeLabel":"Meta · object"},{"type":"null","title":"Meta","uniqueKey":"meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta","typeLabel":"Meta · object | null"}},"required":["code","detail","error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"code":"\u003cstring>","detail":"\u003cstring>","error":"\u003cstring>","ok":false,"meta":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"3a8bd6b2-3a24-4a58-ac90-005b1d3abe86":{"description":"HTTP 401 error response.","content":{"application/json":{"schema":{"properties":{"code":{"title":"Code","type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error":{"title":"Error","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"ok":{"default":false,"title":"Ok","type":"boolean","uniqueKey":"ok","typeLabel":"boolean"},"meta":{"oneOf":[{"type":"object","title":"Meta","additionalProperties":true,"uniqueKey":"meta.oneOf.0","typeLabel":"Meta · object"},{"type":"null","title":"Meta","uniqueKey":"meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta","typeLabel":"Meta · object | null"}},"required":["code","detail","error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"code":"\u003cstring>","detail":"\u003cstring>","error":"\u003cstring>","ok":false,"meta":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"f2dd6888-7f7b-4143-92b9-3eb19449f9e6":{"description":"HTTP 403 error response.","content":{"application/json":{"schema":{"properties":{"code":{"title":"Code","type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error":{"title":"Error","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"ok":{"default":false,"title":"Ok","type":"boolean","uniqueKey":"ok","typeLabel":"boolean"},"meta":{"oneOf":[{"type":"object","title":"Meta","additionalProperties":true,"uniqueKey":"meta.oneOf.0","typeLabel":"Meta · object"},{"type":"null","title":"Meta","uniqueKey":"meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta","typeLabel":"Meta · object | null"}},"required":["code","detail","error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"code":"\u003cstring>","detail":"\u003cstring>","error":"\u003cstring>","ok":false,"meta":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"19ad9d23-5848-4a49-b532-4a02c70af91a":{"description":"HTTP 404 error response.","content":{"application/json":{"schema":{"properties":{"code":{"title":"Code","type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error":{"title":"Error","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"ok":{"default":false,"title":"Ok","type":"boolean","uniqueKey":"ok","typeLabel":"boolean"},"meta":{"oneOf":[{"type":"object","title":"Meta","additionalProperties":true,"uniqueKey":"meta.oneOf.0","typeLabel":"Meta · object"},{"type":"null","title":"Meta","uniqueKey":"meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta","typeLabel":"Meta · object | null"}},"required":["code","detail","error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"code":"\u003cstring>","detail":"\u003cstring>","error":"\u003cstring>","ok":false,"meta":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"f3014783-a963-4b71-adfa-e06954e81cc8":{"description":"HTTP 422 error response.","content":{"application/json":{"schema":{"properties":{"code":{"title":"Code","type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error":{"title":"Error","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"ok":{"default":false,"title":"Ok","type":"boolean","uniqueKey":"ok","typeLabel":"boolean"},"meta":{"oneOf":[{"type":"object","title":"Meta","additionalProperties":true,"uniqueKey":"meta.oneOf.0","typeLabel":"Meta · object"},{"type":"null","title":"Meta","uniqueKey":"meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta","typeLabel":"Meta · object | null"}},"required":["code","detail","error"],"title":"ValidationErrorResponse","type":"object","uniqueKey":"","typeLabel":"ValidationErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"code":"\u003cstring>","detail":"\u003cstring>","error":"\u003cstring>","ok":false,"meta":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"eb01cfc2-702f-4ef2-85f6-00042dde937e":{"description":"HTTP 429 error response.","content":{"application/json":{"schema":{"properties":{"code":{"title":"Code","type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error":{"title":"Error","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"ok":{"default":false,"title":"Ok","type":"boolean","uniqueKey":"ok","typeLabel":"boolean"},"meta":{"oneOf":[{"type":"object","title":"Meta","additionalProperties":true,"uniqueKey":"meta.oneOf.0","typeLabel":"Meta · object"},{"type":"null","title":"Meta","uniqueKey":"meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta","typeLabel":"Meta · object | null"}},"required":["code","detail","error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"code":"\u003cstring>","detail":"\u003cstring>","error":"\u003cstring>","ok":false,"meta":{}}}},"exampleType":"generated"}},"headers":{"Retry-After":{"description":"When provided, seconds to wait before retrying a rate or shared-capacity rejection.","schema":{"type":"integer","minimum":0,"maximum":3600}}},"exampleType":"generated"},"e9a8bb5c-29f8-43e7-90a0-69a7c98be103":{"description":"HTTP 503 error response.","content":{"application/json":{"schema":{"properties":{"code":{"title":"Code","type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error":{"title":"Error","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"ok":{"default":false,"title":"Ok","type":"boolean","uniqueKey":"ok","typeLabel":"boolean"},"meta":{"oneOf":[{"type":"object","title":"Meta","additionalProperties":true,"uniqueKey":"meta.oneOf.0","typeLabel":"Meta · object"},{"type":"null","title":"Meta","uniqueKey":"meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta","typeLabel":"Meta · object | null"}},"required":["code","detail","error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"code":"\u003cstring>","detail":"\u003cstring>","error":"\u003cstring>","ok":false,"meta":{}}}},"exampleType":"generated"}},"headers":{"Retry-After":{"description":"When provided, seconds to wait before retrying a rate or shared-capacity rejection.","schema":{"type":"integer","minimum":0,"maximum":3600}}},"exampleType":"generated"},"e8bf932f-939a-4c37-9353-71ea980b1ffd":{"description":"HTTP 504 error response.","content":{"application/json":{"schema":{"properties":{"code":{"title":"Code","type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error":{"title":"Error","type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"ok":{"default":false,"title":"Ok","type":"boolean","uniqueKey":"ok","typeLabel":"boolean"},"meta":{"oneOf":[{"type":"object","title":"Meta","additionalProperties":true,"uniqueKey":"meta.oneOf.0","typeLabel":"Meta · object"},{"type":"null","title":"Meta","uniqueKey":"meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta","typeLabel":"Meta · object | null"}},"required":["code","detail","error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"code":"\u003cstring>","detail":"\u003cstring>","error":"\u003cstring>","ok":false,"meta":{}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"a0befd42-786d-4635-bccd-773f26fbfbfb":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"xi-api-key","description":"Breeze Developer API key.","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"8bb76e4e-0975-4cf1-8ac6-7bf2353dcdda":{"url":"https://api.breeze.blue"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"xi-api-key","description":"Breeze Developer API key.","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"xi-api-key","type":"string","description":"Breeze Developer API key.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"xi-api-key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"openapi.json"},"subdomain":"breezeblue","siteName":"Breeze Blue","title":"Stream speech with word timestamps - Breeze Blue","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-03T10:08:57.690Z","originalFileLocation":"api-reference/text-to-speech/stream-speech-with-word-timestamps.mdx"},"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=\"Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See Speech timing for stream handling.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Breeze Blue\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/breezeblue/EfwzJlIYKxgPDxPM/_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/breezeblue/EfwzJlIYKxgPDxPM/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/breezeblue/EfwzJlIYKxgPDxPM/_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/breezeblue/EfwzJlIYKxgPDxPM/_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/breezeblue/EfwzJlIYKxgPDxPM/_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/breezeblue/EfwzJlIYKxgPDxPM/_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/breezeblue/EfwzJlIYKxgPDxPM/_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/breezeblue/EfwzJlIYKxgPDxPM/_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/breezeblue/EfwzJlIYKxgPDxPM/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Stream speech with word timestamps - Breeze Blue\">\u003cmeta data-mint-head property=\"og:description\" content=\"Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See Speech timing for stream handling.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Breeze Blue\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://breezeblue.mintlify.site/_mintlify/api/og/v2?division=Text+to+Speech\u0026amp;title=Stream+speech+with+word+timestamps\u0026amp;description=Stream+speech+and+word+timestamps+as+newline-delimited+JSON+%28NDJSON%29.+Each+line+contains+audio%2C+timing+updates%2C+or+an+error.+See+%5BSpeech+timing%5D%28https%3A%2F%2Fdocs.br\u0026amp;theme=3740d9931486a261965ee039\u0026amp;signature=ff85d20bb2931d436612ca7239bdd3356a7a9cb7a9697e9bd464bb459474ed70\">\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=\"Stream speech with word timestamps - Breeze Blue\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See Speech timing for stream handling.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://breezeblue.mintlify.site/_mintlify/api/og/v2?division=Text+to+Speech\u0026amp;title=Stream+speech+with+word+timestamps\u0026amp;description=Stream+speech+and+word+timestamps+as+newline-delimited+JSON+%28NDJSON%29.+Each+line+contains+audio%2C+timing+updates%2C+or+an+error.+See+%5BSpeech+timing%5D%28https%3A%2F%2Fdocs.br\u0026amp;theme=3740d9931486a261965ee039\u0026amp;signature=ff85d20bb2931d436612ca7239bdd3356a7a9cb7a9697e9bd464bb459474ed70\">\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/breezeblue/EfwzJlIYKxgPDxPM/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Breeze Blue\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0B5AD2\">\u003cmeta data-mint-head name=\"google-site-verification\" content=\"eAqPjwtfRocfzlfoMcCcsjpUiDlOBlWswzYSNGb_D4s\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/text-to-speech/stream-speech-with-word-timestamps.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.breezeblue.ai/#organization\",\"name\":\"Breeze Blue\",\"url\":\"https://docs.breezeblue.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/breezeblue/HJi9cL24BjuobeR3/logo-light.png?fit=max\u0026auto=format\u0026n=HJi9cL24BjuobeR3\u0026q=85\u0026s=64b2b794b84ec5e5975584a36d52f1cd\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.breezeblue.ai#website\",\"name\":\"Breeze Blue\",\"url\":\"https://docs.breezeblue.ai\",\"publisher\":{\"@id\":\"https://docs.breezeblue.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps#webpage\",\"url\":\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps\",\"name\":\"Stream speech with word timestamps\",\"description\":\"Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See Speech timing for stream handling.\",\"dateModified\":\"2026-11-03T10:08:57.690Z\",\"isPartOf\":{\"@id\":\"https://docs.breezeblue.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Text to Speech\",\"item\":\"https://docs.breezeblue.ai/api-reference/text-to-speech/convert-text-to-speech\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Stream speech with word timestamps\",\"item\":\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps#apireference\",\"headline\":\"Stream speech with word timestamps\",\"name\":\"Stream speech with word timestamps\",\"description\":\"Stream speech and word timestamps as newline-delimited JSON (NDJSON). Each line contains audio, timing updates, or an error. See Speech timing for stream handling.\",\"url\":\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps\",\"mainEntityOfPage\":{\"@id\":\"https://docs.breezeblue.ai/api-reference/text-to-speech/stream-speech-with-word-timestamps#webpage\"},\"dateModified\":\"2026-11-03T10:08:57.690Z\",\"publisher\":{\"@id\":\"https://docs.breezeblue.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.breezeblue.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Breeze Blue\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Breeze Blue","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"API Reference","groups":[{"group":"Overview","icon":"braces","pages":[{"title":"API reference introduction","href":"/api-reference/introduction"}]},{"group":"Models","pages":[{"title":"List models","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/models","href":"/api-reference/models/list-models"}]},{"group":"Text to Speech","pages":[{"title":"Convert text to speech","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/text-to-speech/{voice_id}","href":"/api-reference/text-to-speech/convert-text-to-speech"},{"title":"Convert with timestamps","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/text-to-speech/{voice_id}/with-timestamps","href":"/api-reference/text-to-speech/convert-with-timestamps"},{"title":"Get generation job","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/generation-jobs/{generation_job_id}","href":"/api-reference/text-to-speech/get-generation-job"},{"title":"Download generation job audio","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/generation-jobs/{generation_job_id}/audio","href":"/api-reference/text-to-speech/download-generation-job-audio"},{"title":"Stream text to speech","description":"Stream synthesized audio as it is generated. For timing, see [Speech timing](https://docs.breezeblue.ai/guides/speech-timing); for one complete JSON response, use [Convert with timestamps](https://docs.breezeblue.ai/api-reference/text-to-speech/convert-with-timestamps).","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/text-to-speech/{voice_id}/stream","href":"/api-reference/text-to-speech/stream-text-to-speech"},{"title":"Stream speech with word timestamps","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/text-to-speech/{voice_id}/stream/with-timestamps","href":"/api-reference/text-to-speech/stream-speech-with-word-timestamps"},{"title":"Create realtime TTS session","description":"Create a short-lived browser-safe token for the realtime text-to-speech WebSocket. This HTTP operation only creates the session. Official SDKs and the CLI prefer the optional query-free `direct_websocket_url` and fall back to `websocket_url`; wait for `session.ready`, and then exchange turn events and binary audio in the selected format. While no turn is active, send `session.update` with non-empty `instructions` (up to 1,000 characters) and wait for `session.updated`; the confirmed instructions apply starting with the next turn. See the [Realtime TTS WebSocket guide](https://docs.breezeblue.ai/guides/realtime-text-to-speech) for complete raw WebSocket, SDK, browser playback, and CLI examples.","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/text-to-speech/{voice_id}/realtime-sessions","href":"/api-reference/text-to-speech/create-realtime-tts-session"},{"title":"Enhance text to speech instruction","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/text-to-speech/enhance","href":"/api-reference/text-to-speech/enhance-text-to-speech-instruction"}]},{"group":"Voices","pages":[{"title":"List Voice Metadata options","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/voice-metadata/options","href":"/api-reference/voices/list-voice-metadata-options"},{"title":"List voices","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/voices","href":"/api-reference/voices/list-voices"},{"title":"Get a voice","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/voices/{voice_id}","href":"/api-reference/voices/get-a-voice"},{"title":"Delete a voice","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/voices/{voice_id}","href":"/api-reference/voices/delete-a-voice"},{"title":"Edit a voice","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/voices/{voice_id}","href":"/api-reference/voices/edit-a-voice"},{"title":"Update effective voice tags","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/voices/{voice_id}/tags","href":"/api-reference/voices/update-effective-voice-tags"}]},{"group":"Voice Previews","pages":[{"title":"Create clone preview","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/voice-previews/clone","href":"/api-reference/voice-previews/create-clone-preview"},{"title":"Create design previews","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/voice-previews/design","href":"/api-reference/voice-previews/create-design-previews"},{"title":"Stream a design preview","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/voice-previews/design/stream","href":"/api-reference/voice-previews/stream-a-design-preview"},{"title":"List remix presets","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/voice-previews/remix/presets","href":"/api-reference/voice-previews/list-remix-presets"},{"title":"Prepare remix preview","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/voice-previews/remix/prepare","href":"/api-reference/voice-previews/prepare-remix-preview"},{"title":"Create remix preview","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/voice-previews/remix","href":"/api-reference/voice-previews/create-remix-preview"},{"title":"Get remix preview","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/voice-previews/remix/{generation_job_id}","href":"/api-reference/voice-previews/get-remix-preview"},{"title":"Create localize preview","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/voice-previews/localize","href":"/api-reference/voice-previews/create-localize-preview"},{"title":"Get localize preview","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/voice-previews/localize/{generation_job_id}","href":"/api-reference/voice-previews/get-localize-preview"},{"title":"Download completed voice preview","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/voice-previews/{generated_voice_id}/stream","href":"/api-reference/voice-previews/download-completed-voice-preview"},{"title":"Save voice preview","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/voice-previews/{generated_voice_id}/save","href":"/api-reference/voice-previews/save-voice-preview"}]},{"group":"Account","pages":[{"title":"Get account balance","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/balance","href":"/api-reference/account/get-account-balance"},{"title":"Get account entitlements","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/entitlements","href":"/api-reference/account/get-account-entitlements"},{"title":"Get usage metering","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/usage","href":"/api-reference/account/get-usage-metering"},{"title":"List API keys","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/api-keys","href":"/api-reference/account/list-api-keys"},{"title":"Create an API key","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/api-keys","href":"/api-reference/account/create-an-api-key"},{"title":"Get the current API key","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/api-keys/current","href":"/api-reference/account/get-the-current-api-key"},{"title":"Delete an API key","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/api-keys/{key_id}","href":"/api-reference/account/delete-an-api-key"},{"title":"Update an API key","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/api-keys/{key_id}","href":"/api-reference/account/update-an-api-key"},{"title":"Disable an API key","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/api-keys/{key_id}/disable","href":"/api-reference/account/disable-an-api-key"},{"title":"Enable an API key","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/api-keys/{key_id}/enable","href":"/api-reference/account/enable-an-api-key"},{"title":"Rotate an API key","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/api-keys/{key_id}/rotate","href":"/api-reference/account/rotate-an-api-key"},{"title":"Reset an API key credit budget","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/api-keys/{key_id}/credit-budget/reset","href":"/api-reference/account/reset-an-api-key-credit-budget"}]},{"group":"History","pages":[{"title":"List history items","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/history","href":"/api-reference/history/list-history-items"},{"title":"Get a history item","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/history/{history_item_id}","href":"/api-reference/history/get-a-history-item"},{"title":"Delete a history item","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/history/{history_item_id}","href":"/api-reference/history/delete-a-history-item"},{"title":"Download history audio","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/history/{history_item_id}/audio","href":"/api-reference/history/download-history-audio"}]},{"group":"Studio","pages":[{"title":"List projects","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects","href":"/api-reference/studio/list-projects"},{"title":"Create a project","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects","href":"/api-reference/studio/create-a-project"},{"title":"Import a project","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects/import","href":"/api-reference/studio/import-a-project"},{"title":"Get a project","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects/{project_id}","href":"/api-reference/studio/get-a-project"},{"title":"Delete a project","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/studio/projects/{project_id}","href":"/api-reference/studio/delete-a-project"},{"title":"Update a project","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/projects/{project_id}","href":"/api-reference/studio/update-a-project"},{"title":"List chapters","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects/{project_id}/chapters","href":"/api-reference/studio/list-chapters"},{"title":"Create a chapter","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects/{project_id}/chapters","href":"/api-reference/studio/create-a-chapter"},{"title":"Reorder chapters","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/projects/{project_id}/chapters/reorder","href":"/api-reference/studio/reorder-chapters"},{"title":"Get a chapter","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects/{project_id}/chapters/{chapter_id}","href":"/api-reference/studio/get-a-chapter"},{"title":"Delete a chapter","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/studio/projects/{project_id}/chapters/{chapter_id}","href":"/api-reference/studio/delete-a-chapter"},{"title":"Rename a chapter","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/projects/{project_id}/chapters/{chapter_id}","href":"/api-reference/studio/rename-a-chapter"},{"title":"Restore a chapter","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects/{project_id}/chapters/{chapter_id}/restore","href":"/api-reference/studio/restore-a-chapter"},{"title":"List clips","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects/{project_id}/clips","href":"/api-reference/studio/list-clips"},{"title":"Create a clip","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects/{project_id}/clips","href":"/api-reference/studio/create-a-clip"},{"title":"Create clips in bulk","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects/{project_id}/clips/batch","href":"/api-reference/studio/create-clips-in-bulk"},{"title":"Update clips in bulk","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/projects/{project_id}/clips/batch","href":"/api-reference/studio/update-clips-in-bulk"},{"title":"Delete clips in bulk","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects/{project_id}/clips/bulk-delete","href":"/api-reference/studio/delete-clips-in-bulk"},{"title":"Reorder clips","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/projects/{project_id}/clips/reorder","href":"/api-reference/studio/reorder-clips"},{"title":"Move clips","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects/{project_id}/clips/move","href":"/api-reference/studio/move-clips"},{"title":"Get a clip","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects/{project_id}/clips/{clip_id}","href":"/api-reference/studio/get-a-clip"},{"title":"Delete a clip","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/studio/projects/{project_id}/clips/{clip_id}","href":"/api-reference/studio/delete-a-clip"},{"title":"Update a clip","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/projects/{project_id}/clips/{clip_id}","href":"/api-reference/studio/update-a-clip"},{"title":"List tracks","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects/{project_id}/tracks","href":"/api-reference/studio/list-tracks"},{"title":"Create a track","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects/{project_id}/tracks","href":"/api-reference/studio/create-a-track"},{"title":"Reorder tracks","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/projects/{project_id}/tracks/reorder","href":"/api-reference/studio/reorder-tracks"},{"title":"Get a track","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects/{project_id}/tracks/{track_id}","href":"/api-reference/studio/get-a-track"},{"title":"Delete a track","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/studio/projects/{project_id}/tracks/{track_id}","href":"/api-reference/studio/delete-a-track"},{"title":"Update a track","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/projects/{project_id}/tracks/{track_id}","href":"/api-reference/studio/update-a-track"},{"title":"List instances","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects/{project_id}/tracks/{track_id}/instances","href":"/api-reference/studio/list-instances"},{"title":"Create an instance","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/projects/{project_id}/tracks/{track_id}/instances","href":"/api-reference/studio/create-an-instance"},{"title":"Get an instance","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/projects/{project_id}/tracks/{track_id}/instances/{instance_id}","href":"/api-reference/studio/get-an-instance"},{"title":"Delete an instance","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/studio/projects/{project_id}/tracks/{track_id}/instances/{instance_id}","href":"/api-reference/studio/delete-an-instance"},{"title":"Update an instance","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/projects/{project_id}/tracks/{track_id}/instances/{instance_id}","href":"/api-reference/studio/update-an-instance"},{"title":"List files","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/files","href":"/api-reference/studio/list-files"},{"title":"Create a file","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/files","href":"/api-reference/studio/create-a-file"},{"title":"Get a file","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/studio/files/{file_id}","href":"/api-reference/studio/get-a-file"},{"title":"Delete a file","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/studio/files/{file_id}","href":"/api-reference/studio/delete-a-file"},{"title":"Rename a file","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/studio/files/{file_id}","href":"/api-reference/studio/rename-a-file"},{"title":"Get an upload URL","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/files/{file_id}/upload","href":"/api-reference/studio/get-an-upload-url"},{"title":"Complete an upload","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/files/{file_id}/complete","href":"/api-reference/studio/complete-an-upload"},{"title":"Retry file processing","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/studio/files/{file_id}/retry","href":"/api-reference/studio/retry-file-processing"}]}]},{"tab":"CLI Reference","pages":[{"title":"CLI Reference","href":"/cli"}]}]},"basePath":"","title":"Stream speech with word timestamps - Breeze Blue","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C-hEh3I2.js","utils-CnF4QiUD.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C7PVNbel.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-8ytevL2A.js","snippetPresets-BT1alx3v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BLXC0i_W.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CyLIGI9_.js","shallow-DC0lGVIW.js","getApiPlaygroundDisplay-CgDQ85tN.js","CodeSnippet-6-I-Gpv9.js","CodeSnippets-BAk1kDdu.js","Page-C945cI-W.js","getPastedJson-B276RuWN.js","icon-BqP8etTm.js","MethodPill-DM6sbxG1.js","DuplicateIcon-PyJglOaE.js","createIcon-CMeOMAc_.js","DynamicMarkdown-BoyYAA8K.js","SectionHeading-DAYv3gvZ.js","axios-vUo_bRtp.js","Markdown-BhTTmazV.js","clsx-CR-RHrVC.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CBUH0-zX.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BmARFYNC.js"]}