Skip to content

Stream Transcription

GET/v1/audio/transcriptions/stream

Overview

Reviewed streaming contracts are funded before connecting to the provider.

Routing and provider details

Direct streaming supports the catalogued Deepgram, Cartesia, ElevenLabs, Mistral, AssemblyAI, Speechmatics, Smallest, Gladia, Google Cloud, Alibaba, Sarvam, Reson8, OpenAI, Soniox, Azure, xAI and Amazon Transcribe models. Sessions are limited to five minutes of mono PCM16 input. Complete native termination settles the frozen streaming tariff; interrupted or ambiguous outcomes retain the reservation. Authenticate the HTTP upgrade with Authorization: Bearer <api-key>. Native browser WebSocket cannot set that header; use a trusted server or a WebSocket client that supports custom upgrade headers. Never put an API key in the URL. The first client text frame is session.start, followed by raw mono PCM16 audio frames and session.finish. session.start accepts provider.data_region, as a request does.

Authorization

Authorizationstring · headerRequired

AudioLab API key sent as Bearer <token>. Authentication guide

Responses

101WebSocket protocol upgrade accepted.
401Authentication is missing or invalid.
application/json
errorobjectRequired
Show nested fields
codestringRequired
messagestringRequired
paramstring | null
request_idstring | null
metadataobject

Typed detail for some refusals. budget_exceeded (402): limit (key_budget or workspace_budget) and budget with scope, period, limit, usage and resets_at. key_limit_exceeded (402): limit key_spend_limit. access_denied (403): policy (workspace or key), rule (models, providers or products), product, provider and model.

403Authenticated principal lacks permission.
application/json
errorobjectRequired
Show nested fields
codestringRequired
messagestringRequired
paramstring | null
request_idstring | null
metadataobject

Typed detail for some refusals. budget_exceeded (402): limit (key_budget or workspace_budget) and budget with scope, period, limit, usage and resets_at. key_limit_exceeded (402): limit key_spend_limit. access_denied (403): policy (workspace or key), rule (models, providers or products), product, provider and model.

429Rate limit exceeded.
application/json
errorobjectRequired
Show nested fields
codestringRequired
messagestringRequired
paramstring | null
request_idstring | null
metadataobject

Typed detail for some refusals. budget_exceeded (402): limit (key_budget or workspace_budget) and budget with scope, period, limit, usage and resets_at. key_limit_exceeded (402): limit key_spend_limit. access_denied (403): policy (workspace or key), rule (models, providers or products), product, provider and model.

500Internal server error.
application/json
errorobjectRequired
Show nested fields
codestringRequired
messagestringRequired
paramstring | null
request_idstring | null
metadataobject

Typed detail for some refusals. budget_exceeded (402): limit (key_budget or workspace_budget) and budget with scope, period, limit, usage and resets_at. key_limit_exceeded (402): limit key_spend_limit. access_denied (403): policy (workspace or key), rule (models, providers or products), product, provider and model.