AssemblyAI · AsyncAPI Specification
AssemblyAI Universal Streaming Speech-to-Text API
Version 3.0.0
AsyncAPI specification for the AssemblyAI Universal Streaming Speech-to-Text WebSocket API (v3). Clients open a WebSocket to `wss://streaming.assemblyai.com/v3/ws`, send raw binary PCM audio frames, and receive JSON events such as `Begin`, `Turn`, `SpeechStarted`, and `Termination`. Connection-time parameters (sample rate, encoding, speech model, formatting, key terms, PII redaction, LLM gateway, speaker labels) are passed via query string. Session parameters can be updated mid-stream with `UpdateConfiguration`, and endpointing can be forced with `ForceEndpoint`. The client closes the session by sending `Terminate`.
View Spec
View on GitHub
AIArtificial IntelligenceAudioSpeechTranscriptionSpeech to TextAsyncAPIWebhooksEvents
Channels
/v3/ws
Single full-duplex WebSocket channel for a Universal Streaming session. The client publishes binary PCM audio chunks and JSON control messages, and subscribes to JSON event messages emitted by the server.
Messages
AudioFrame
Audio Frame
A raw binary chunk of PCM audio.
UpdateConfiguration
Update Configuration
Update session parameters mid-stream.
ForceEndpoint
Force Endpoint
Force the current turn to end immediately.
Terminate
Terminate Session
Politely terminate the streaming session.
Begin
Session Begin
First event sent by the server after the session is established.
Turn
Turn
A streaming transcription turn with word-level timings.
SpeechStarted
Speech Started
Voice activity detected the start of speech.
SpeakerRevision
Speaker Revision
Offline correction to a previously-emitted Turn's speaker labels.
LLMGatewayResponse
LLM Gateway Response
Response from the optional in-band LLM gateway.
Warning
Warning
Non-fatal server warning.
Error
Error
Server error event (see `StreamingErrorCodes` for the catalog).
Termination
Termination
Final event acknowledging session shutdown.
Servers
wss
production
streaming.assemblyai.com
AssemblyAI hosted Universal Streaming endpoint.
ws
selfHosted
localhost:8080
Self-hosted streaming stack (see `AssemblyAI/streaming-self-hosting-stack`). Replace with the host/port your deployment exposes.