Skip to main content
wss://api.typelessapi.com/v1/transcribe/stream WebSocket endpoint for streaming PCM audio; authentication and all options are passed as query parameters at handshake time.

Query parameters

token
string
required
Your API key. See Authentication.
model
string
required
Model tier. One of typeless-1.0-lite, typeless-1.0-pro, typeless-1.0-max. See Models & Pricing.
sample_rate
integer
default:"16000"
PCM sample rate in Hz. Allowed range: 8000–48000.
channels
integer
default:"1"
Number of audio channels. 1 or 2.
encoding
string
default:"pcm16"
Audio encoding. Only pcm16 (16-bit little-endian PCM) is supported.
language
string
Optional ISO 639-1 language hint. When omitted — or when an unsupported/unrecognized code is supplied — the language is detected automatically.

Client → server messages

Binary frames: send raw little-endian pcm16 audio bytes as WebSocket binary frames; the server buffers and processes them in the order received. keep_alive — resets the 60-second idle timer; does not extend the 10-second first-frame deadline.
close_stream — signals no more audio; the server finalizes and returns the result.

Server → client messages

result — sent once after finalization; the server closes the connection immediately after.
error — sent when a fatal error occurs; after an error message the server closes the connection.

Timeouts

Connection close semantics

  • Normal: server sends result, then closes.
  • Error: server sends error, then closes.
  • Client disconnect: if transcription has already started, you are billed for the audio sent (15-second minimum).

Endpoint-specific errors

See the full table in Errors.

Concurrency

Each account allows 10 concurrent connections by default; exceeding it fails the handshake with CONCURRENT_LIMIT_EXCEEDED — see Rate limits.