[{"data":1,"prerenderedAt":898},["ShallowReactive",2],{"navigation":3,"\u002Fapi-reference\u002Frealtime-api":220,"\u002Fapi-reference\u002Frealtime-api-surround":893},[4,28,64,92,124,152,192],{"title":5,"path":6,"stem":7,"children":8,"icon":27},"Start","\u002Fstart","1.start\u002F1.index",[9,11,15,19,23],{"title":10,"path":6,"stem":7},"Overview",{"title":12,"path":13,"stem":14},"Quickstart","\u002Fstart\u002Fquickstart","1.start\u002F2.quickstart",{"title":16,"path":17,"stem":18},"Authentication","\u002Fstart\u002Fauthentication","1.start\u002F3.authentication",{"title":20,"path":21,"stem":22},"SDKs","\u002Fstart\u002Fsdks","1.start\u002F4.sdks",{"title":24,"path":25,"stem":26},"Choose an API","\u002Fstart\u002Fchoose-an-api","1.start\u002F5.choose-an-api","i-lucide-rocket",{"title":29,"path":30,"stem":31,"children":32,"icon":63},"Realtime","\u002Frealtime","2.realtime\u002F1.index",[33,35,39,43,47,51,55,59],{"title":34,"path":30,"stem":31},"Realtime Overview",{"title":36,"path":37,"stem":38},"Realtime Quickstart","\u002Frealtime\u002Fquickstart","2.realtime\u002F2.quickstart",{"title":40,"path":41,"stem":42},"Connection Lifecycle","\u002Frealtime\u002Fconnection-lifecycle","2.realtime\u002F3.connection-lifecycle",{"title":44,"path":45,"stem":46},"Audio Input","\u002Frealtime\u002Faudio-input","2.realtime\u002F4.audio-input",{"title":48,"path":49,"stem":50},"Transcript Lifecycle","\u002Frealtime\u002Ftranscript-lifecycle","2.realtime\u002F5.transcript-lifecycle",{"title":52,"path":53,"stem":54},"Realtime Translation","\u002Frealtime\u002Frealtime-translation","2.realtime\u002F6.realtime-translation",{"title":56,"path":57,"stem":58},"Session Configuration","\u002Frealtime\u002Fsession-configuration","2.realtime\u002F7.session-configuration",{"title":60,"path":61,"stem":62},"Handling Interruptions & Silence","\u002Frealtime\u002Finterruptions-silence","2.realtime\u002F8.interruptions-silence","i-lucide-radio",{"title":65,"path":66,"stem":67,"children":68,"icon":91},"Recorded","\u002Frecorded","3.recorded\u002F1.index",[69,71,75,79,83,87],{"title":70,"path":66,"stem":67},"Recorded Overview",{"title":72,"path":73,"stem":74},"Transcribe Audio","\u002Frecorded\u002Ftranscribe-audio","3.recorded\u002F2.transcribe-audio",{"title":76,"path":77,"stem":78},"Timestamps & Speakers","\u002Frecorded\u002Ftimestamps-speakers","3.recorded\u002F3.timestamps-speakers",{"title":80,"path":81,"stem":82},"Subtitles","\u002Frecorded\u002Fsubtitles","3.recorded\u002F4.subtitles",{"title":84,"path":85,"stem":86},"Recorded Translation","\u002Frecorded\u002Ftranslation","3.recorded\u002F5.translation",{"title":88,"path":89,"stem":90},"Structured Results","\u002Frecorded\u002Fstructured-results","3.recorded\u002F6.structured-results","i-lucide-file-audio",{"title":93,"path":94,"stem":95,"children":96,"icon":123},"Concepts","\u002Fconcepts","4.concepts\u002F1.index",[97,99,103,107,111,115,119],{"title":98,"path":94,"stem":95},"Voice Context Layer",{"title":100,"path":101,"stem":102},"Stable vs. Partial Text","\u002Fconcepts\u002Fstable-vs-partial-text","4.concepts\u002F2.stable-vs-partial-text",{"title":104,"path":105,"stem":106},"StableStream","\u002Fconcepts\u002Fstablestream","4.concepts\u002F3.stablestream",{"title":108,"path":109,"stem":110},"Context-Aware Processing","\u002Fconcepts\u002Fcontext-aware-processing","4.concepts\u002F4.context-aware-processing",{"title":112,"path":113,"stem":114},"Understanding Latency","\u002Fconcepts\u002Flatency","4.concepts\u002F5.latency",{"title":116,"path":117,"stem":118},"Live Translation","\u002Fconcepts\u002Flive-translation","4.concepts\u002F6.live-translation",{"title":120,"path":121,"stem":122},"Trinity Engine","\u002Fconcepts\u002Ftrinity-engine","4.concepts\u002F7.trinity-engine","i-lucide-brain",{"title":125,"path":126,"stem":127,"children":128,"icon":151},"Guides","\u002Fguides","5.guides\u002F1.index",[129,131,135,139,143,147],{"title":130,"path":126,"stem":127},"Browser Live Captions",{"title":132,"path":133,"stem":134},"Server-side Streaming","\u002Fguides\u002Fserver-side-streaming","5.guides\u002F2.server-side-streaming",{"title":136,"path":137,"stem":138},"Build a Stable Caption UI","\u002Fguides\u002Fstable-caption-ui","5.guides\u002F3.stable-caption-ui",{"title":140,"path":141,"stem":142},"Build Live Translation","\u002Fguides\u002Flive-translation","5.guides\u002F4.live-translation",{"title":144,"path":145,"stem":146},"Save a Transcript","\u002Fguides\u002Fsave-transcript","5.guides\u002F5.save-transcript",{"title":148,"path":149,"stem":150},"Reconnect a Live Session","\u002Fguides\u002Freconnection","5.guides\u002F6.reconnection","i-lucide-book-open",{"title":153,"path":154,"stem":155,"children":156,"icon":191},"Reference","\u002Fapi-reference","6.api-reference\u002F1.index",[157,159,163,167,171,175,179,183,187],{"title":158,"path":154,"stem":155},"API Reference Overview",{"title":160,"path":161,"stem":162},"Realtime API","\u002Fapi-reference\u002Frealtime-api","6.api-reference\u002F2.realtime-api",{"title":164,"path":165,"stem":166},"Client Messages","\u002Fapi-reference\u002Fclient-messages","6.api-reference\u002F3.client-messages",{"title":168,"path":169,"stem":170},"Server Events","\u002Fapi-reference\u002Fserver-events","6.api-reference\u002F4.server-events",{"title":172,"path":173,"stem":174},"Transcription API","\u002Fapi-reference\u002Ftranscription","6.api-reference\u002F5.transcription",{"title":176,"path":177,"stem":178},"Languages & Models","\u002Fapi-reference\u002Flanguages","6.api-reference\u002F6.languages",{"title":180,"path":181,"stem":182},"Errors","\u002Fapi-reference\u002Ferrors","6.api-reference\u002F7.errors",{"title":184,"path":185,"stem":186},"Rate Limits","\u002Fapi-reference\u002Frate-limits","6.api-reference\u002F8.rate-limits",{"title":188,"path":189,"stem":190},"Admin API","\u002Fapi-reference\u002Fadmin","6.api-reference\u002F9.admin","i-lucide-code",{"title":193,"path":194,"stem":195,"children":196,"icon":219},"Production","\u002Fproduction","7.production\u002F1.index",[197,199,203,207,211,215],{"title":198,"path":194,"stem":195},"Production Checklist",{"title":200,"path":201,"stem":202},"Reconnection & Retries","\u002Fproduction\u002Freconnection-retries","7.production\u002F2.reconnection-retries",{"title":204,"path":205,"stem":206},"Latency Best Practices","\u002Fproduction\u002Flatency-best-practices","7.production\u002F3.latency-best-practices",{"title":208,"path":209,"stem":210},"Security & Privacy","\u002Fproduction\u002Fsecurity-privacy","7.production\u002F4.security-privacy",{"title":212,"path":213,"stem":214},"Data Retention","\u002Fproduction\u002Fdata-retention","7.production\u002F5.data-retention",{"title":216,"path":217,"stem":218},"Changelog","\u002Fproduction\u002Fchangelog","7.production\u002F6.changelog","i-lucide-server",{"id":221,"title":160,"body":222,"description":886,"extension":887,"links":888,"meta":889,"navigation":890,"path":161,"seo":891,"status":888,"stem":162,"__hash__":892},"docs\u002F6.api-reference\u002F2.realtime-api.md",{"type":223,"value":224,"toc":874},"minimark",[225,230,234,238,249,252,255,316,327,331,336,366,370,377,673,677,680,698,702,844,848,870],[226,227,229],"h2",{"id":228},"what-it-does","What it does",[231,232,233],"p",{},"Real-time streaming speech transcription. Open a WebSocket, send PCM16LE audio frames, receive transcription events.",[226,235,237],{"id":236},"endpoint","Endpoint",[239,240,245],"pre",{"className":241,"code":243,"language":244},[242],"language-text","WSS \u002Fv1\u002Faudio\u002Ftranscriptions\u002Fstream\n","text",[246,247,243],"code",{"__ignoreMap":248},"",[226,250,16],{"id":251},"authentication",[231,253,254],{},"Three authentication methods:",[256,257,258,274],"table",{},[259,260,261],"thead",{},[262,263,264,268,271],"tr",{},[265,266,267],"th",{},"Method",[265,269,270],{},"Usage",[265,272,273],{},"Use case",[275,276,277,291,304],"tbody",{},[262,278,279,283,288],{},[280,281,282],"td",{},"Bearer header",[280,284,285],{},[246,286,287],{},"Authorization: Bearer sk-...",[280,289,290],{},"Server-side clients",[262,292,293,296,301],{},[280,294,295],{},"Query token",[280,297,298],{},[246,299,300],{},"?access_token=rt_...",[280,302,303],{},"Browser (session token)",[262,305,306,309,314],{},[280,307,308],{},"Query token (alias)",[280,310,311],{},[246,312,313],{},"?token=rt_...",[280,315,303],{},[231,317,318,319,322,323,326],{},"Session tokens are obtained via ",[246,320,321],{},"POST \u002Fv1\u002Faudio\u002Ftranscriptions\u002Fsession-token"," and are valid for 60 seconds. See ",[324,325,16],"a",{"href":17},".",[226,328,330],{"id":329},"connection","Connection",[332,333,335],"h3",{"id":334},"upgrade-conditions","Upgrade conditions",[337,338,339,346,352,363],"ul",{},[340,341,342,343],"li",{},"Request must be a WebSocket upgrade, otherwise ",[246,344,345],{},"426 websocket_required",[340,347,348,349],{},"Gateway must be enabled, otherwise ",[246,350,351],{},"503 gateway_disabled",[340,353,354,355,358,359,362],{},"Upstream circuit breaker must be closed, otherwise ",[246,356,357],{},"503 upstream_unavailable"," with ",[246,360,361],{},"Retry-After"," header",[340,364,365],{},"Connection quota must pass (concurrent connections + handshake rate)",[332,367,369],{"id":368},"on-success","On success",[231,371,372,373,376],{},"Receives a ",[246,374,375],{},"session.created"," event:",[239,378,382],{"className":379,"code":380,"language":381,"meta":248,"style":248},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"type\": \"session.created\",\n  \"request_id\": \"...\",\n  \"session_id\": \"sess_...\",\n  \"audio\": { \"format\": \"pcm_s16le\", \"sample_rate\": 16000, \"channels\": 1 },\n  \"turn_detection\": { \"type\": \"server_vad\" },\n  \"plan\": \"free\",\n  \"limits\": {\n    \"max_concurrent_utterances\": 2,\n    \"max_session_seconds\": 900,\n    \"idle_timeout_seconds\": 60,\n    \"remaining_audio_seconds\": 3600\n  }\n}\n","json",[246,383,384,393,420,441,462,527,558,579,594,612,629,646,661,667],{"__ignoreMap":248},[385,386,389],"span",{"class":387,"line":388},"line",1,[385,390,392],{"class":391},"sMK4o","{\n",[385,394,396,399,403,406,409,412,415,417],{"class":387,"line":395},2,[385,397,398],{"class":391},"  \"",[385,400,402],{"class":401},"spNyl","type",[385,404,405],{"class":391},"\"",[385,407,408],{"class":391},":",[385,410,411],{"class":391}," \"",[385,413,375],{"class":414},"sfazB",[385,416,405],{"class":391},[385,418,419],{"class":391},",\n",[385,421,423,425,428,430,432,434,437,439],{"class":387,"line":422},3,[385,424,398],{"class":391},[385,426,427],{"class":401},"request_id",[385,429,405],{"class":391},[385,431,408],{"class":391},[385,433,411],{"class":391},[385,435,436],{"class":414},"...",[385,438,405],{"class":391},[385,440,419],{"class":391},[385,442,444,446,449,451,453,455,458,460],{"class":387,"line":443},4,[385,445,398],{"class":391},[385,447,448],{"class":401},"session_id",[385,450,405],{"class":391},[385,452,408],{"class":391},[385,454,411],{"class":391},[385,456,457],{"class":414},"sess_...",[385,459,405],{"class":391},[385,461,419],{"class":391},[385,463,465,467,470,472,474,477,479,483,485,487,489,492,494,497,499,502,504,506,510,512,514,517,519,521,524],{"class":387,"line":464},5,[385,466,398],{"class":391},[385,468,469],{"class":401},"audio",[385,471,405],{"class":391},[385,473,408],{"class":391},[385,475,476],{"class":391}," {",[385,478,411],{"class":391},[385,480,482],{"class":481},"sBMFI","format",[385,484,405],{"class":391},[385,486,408],{"class":391},[385,488,411],{"class":391},[385,490,491],{"class":414},"pcm_s16le",[385,493,405],{"class":391},[385,495,496],{"class":391},",",[385,498,411],{"class":391},[385,500,501],{"class":481},"sample_rate",[385,503,405],{"class":391},[385,505,408],{"class":391},[385,507,509],{"class":508},"sbssI"," 16000",[385,511,496],{"class":391},[385,513,411],{"class":391},[385,515,516],{"class":481},"channels",[385,518,405],{"class":391},[385,520,408],{"class":391},[385,522,523],{"class":508}," 1",[385,525,526],{"class":391}," },\n",[385,528,530,532,535,537,539,541,543,545,547,549,551,554,556],{"class":387,"line":529},6,[385,531,398],{"class":391},[385,533,534],{"class":401},"turn_detection",[385,536,405],{"class":391},[385,538,408],{"class":391},[385,540,476],{"class":391},[385,542,411],{"class":391},[385,544,402],{"class":481},[385,546,405],{"class":391},[385,548,408],{"class":391},[385,550,411],{"class":391},[385,552,553],{"class":414},"server_vad",[385,555,405],{"class":391},[385,557,526],{"class":391},[385,559,561,563,566,568,570,572,575,577],{"class":387,"line":560},7,[385,562,398],{"class":391},[385,564,565],{"class":401},"plan",[385,567,405],{"class":391},[385,569,408],{"class":391},[385,571,411],{"class":391},[385,573,574],{"class":414},"free",[385,576,405],{"class":391},[385,578,419],{"class":391},[385,580,582,584,587,589,591],{"class":387,"line":581},8,[385,583,398],{"class":391},[385,585,586],{"class":401},"limits",[385,588,405],{"class":391},[385,590,408],{"class":391},[385,592,593],{"class":391}," {\n",[385,595,597,600,603,605,607,610],{"class":387,"line":596},9,[385,598,599],{"class":391},"    \"",[385,601,602],{"class":481},"max_concurrent_utterances",[385,604,405],{"class":391},[385,606,408],{"class":391},[385,608,609],{"class":508}," 2",[385,611,419],{"class":391},[385,613,615,617,620,622,624,627],{"class":387,"line":614},10,[385,616,599],{"class":391},[385,618,619],{"class":481},"max_session_seconds",[385,621,405],{"class":391},[385,623,408],{"class":391},[385,625,626],{"class":508}," 900",[385,628,419],{"class":391},[385,630,632,634,637,639,641,644],{"class":387,"line":631},11,[385,633,599],{"class":391},[385,635,636],{"class":481},"idle_timeout_seconds",[385,638,405],{"class":391},[385,640,408],{"class":391},[385,642,643],{"class":508}," 60",[385,645,419],{"class":391},[385,647,649,651,654,656,658],{"class":387,"line":648},12,[385,650,599],{"class":391},[385,652,653],{"class":481},"remaining_audio_seconds",[385,655,405],{"class":391},[385,657,408],{"class":391},[385,659,660],{"class":508}," 3600\n",[385,662,664],{"class":387,"line":663},13,[385,665,666],{"class":391},"  }\n",[385,668,670],{"class":387,"line":669},14,[385,671,672],{"class":391},"}\n",[226,674,676],{"id":675},"message-format","Message format",[231,678,679],{},"All messages are JSON text frames or binary PCM audio frames.",[337,681,682,692],{},[340,683,684,688,689,691],{},[685,686,687],"strong",{},"Text frames",": JSON objects, must contain a ",[246,690,402],{}," field",[340,693,694,697],{},[685,695,696],{},"Binary frames",": raw PCM audio data (ArrayBuffer)",[226,699,701],{"id":700},"websocket-close-codes","WebSocket close codes",[256,703,704,718],{},[259,705,706],{},[262,707,708,712,715],{},[265,709,711],{"align":710},"right","Code",[265,713,714],{},"Close reason",[265,716,717],{},"Meaning",[275,719,720,731,744,756,768,781,794,807,819,831],{},[262,721,722,725,728],{},[280,723,724],{"align":710},"1000",[280,726,727],{},"—",[280,729,730],{},"Normal close",[262,732,733,736,741],{},[280,734,735],{"align":710},"1008",[280,737,738],{},[246,739,740],{},"session_audio_limit",[280,742,743],{},"Realtime session audio budget exceeded",[262,745,746,748,753],{},[280,747,735],{"align":710},[280,749,750],{},[246,751,752],{},"audio_quota_exhausted",[280,754,755],{},"Billing-window audio budget exhausted",[262,757,758,760,765],{},[280,759,735],{"align":710},[280,761,762],{},[246,763,764],{},"session_duration_limit",[280,766,767],{},"Session wall-clock duration exceeded",[262,769,770,773,778],{},[280,771,772],{"align":710},"1009",[280,774,775],{},[246,776,777],{},"frame_too_large",[280,779,780],{},"Audio frame exceeds 1 MiB",[262,782,783,786,791],{},[280,784,785],{"align":710},"1011",[280,787,788],{},[246,789,790],{},"client_error",[280,792,793],{},"Client socket error or unexpected gateway error",[262,795,796,799,804],{},[280,797,798],{"align":710},"1013",[280,800,801],{},[246,802,803],{},"upstream_unavailable",[280,805,806],{},"Realtime upstream unavailable (circuit breaker open)",[262,808,809,811,816],{},[280,810,798],{"align":710},[280,812,813],{},[246,814,815],{},"upstream_backpressure",[280,817,818],{},"Upstream is not draining fast enough",[262,820,821,823,828],{},[280,822,798],{"align":710},[280,824,825],{},[246,826,827],{},"client_backpressure",[280,829,830],{},"Client is not reading events fast enough",[262,832,833,836,841],{},[280,834,835],{"align":710},"4408",[280,837,838],{},[246,839,840],{},"idle_timeout",[280,842,843],{},"No audio received within idle timeout window",[226,845,847],{"id":846},"related","Related",[337,849,850,855,860,865],{},[340,851,852,854],{},[324,853,164],{"href":165}," — all client-sent messages",[340,856,857,859],{},[324,858,168],{"href":169}," — all server-pushed events",[340,861,862,864],{},[324,863,36],{"href":37}," — complete example",[340,866,867,869],{},[324,868,16],{"href":17}," — auth details",[871,872,873],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":248,"searchDepth":388,"depth":395,"links":875},[876,877,878,879,883,884,885],{"id":228,"depth":395,"text":229},{"id":236,"depth":395,"text":237},{"id":251,"depth":395,"text":16},{"id":329,"depth":395,"text":330,"children":880},[881,882],{"id":334,"depth":422,"text":335},{"id":368,"depth":422,"text":369},{"id":675,"depth":395,"text":676},{"id":700,"depth":395,"text":701},{"id":846,"depth":395,"text":847},"WebSocket endpoint for streaming transcription.","md",null,{},true,{"title":160,"description":886},"i5lAuUNGoOZALbx392NFjCfejBLOtLLSAbd0gfQQYjk",[894,896],{"title":158,"path":154,"stem":155,"description":895,"children":-1},"Base URL, REST\u002FWebSocket endpoints, versioning.",{"title":164,"path":165,"stem":166,"description":897,"children":-1},"All client → Lanson messages sent over WebSocket.",1787340798074]