BlyntBlynt API

Real-time API

Stream audio over a WebSocket and receive transcripts as the user speaks.

The Real-time API transcribes audio as it arrives, over a single WebSocket connection that can carry many turns. It suits live audio: voice agents, call handling, or any interface that shows the transcript while the user is still speaking.

This API is served by deployments provisioned for real-time streaming. A deployment answers on one API only, so if yours was provisioned for synchronous transcription its id will not accept a WebSocket connection here — use the Sync API instead. Ask the Blynt team if you are unsure which one you have.

The current production API runs in manual turn-taking mode: the client explicitly brackets each turn with start_turn and end_turn. If you are new here, read the Session flow first for the end-to-end walkthrough, then use this reference for the exact schemas. The Stream a local audio file quickstart is a practical Python integration you can run right away.

The Real-time API accepts fr, en, pt, de, es, it.

Messages

Client → Server (JSON text frames, plus binary audio frames):

MessageTypePurposeDocumented in
start_sessionJSONFirst message; sets language, turn-taking mode, and optional session-level biasing (sessionContext).Client Session API
audio bytesrawBinary frames of 16 kHz mono int16 PCM audio for the active turn.Client Session API
start_turnJSONMarks the start of a turn; optionally carries turn-level biasing (turnContext).Client Turn Control API
end_turnJSONMarks the end of the current turn.Client Turn Control API

Server → Client (JSON text frames):

MessageTypePurposeDocumented in
session_startedJSONAcknowledges the session and returns its id.Server API
turn_startedJSONA turn has started.Server API
turn_partialJSONIncremental transcript decoded so far.Server API
turn_endedJSONThe turn ended; contains the final transcript.Server API
errorJSONAn error occurred; the connection is closed afterwards.Errors

Reference pages

On this page