Form Filling Audio Streaming
WebSocket endpoint for streaming visit audio during Form filling sessions
GET /ws/stream) for Form filling sessions. For more information on how to handle the handshake, wire format, message order, and error handling,
and poll for structured data when the session is complete, refer to the Aaudio streaming guide.
ambient_session_id from Create Form Filling session while streaming audio.
Do not use the ambient_session_id from an Create Ambient session, even though both fields use the name ambient_session_id.Prerequisites
Complete these steps before you open the WebSocket.- Authenticate and obtain
sdp_suki_token - Create a Form filling session with POST
/api/v1/form-filling/session/create. Save theambient_session_idfrom the 201 Created response - Seed session context (recommended) with POST
/api/v1/form-filling/session/{ambient_session_id}/context. Includeform_template_idvalues when you send context - Open the WebSocket at
wss://sdp.suki-stage.com/ws/stream(staging) orwss://sdp.suki.ai/ws/stream(production). Use your Form fillingambient_session_idin the handshake
Browser clients
SendSec-WebSocket-Protocol during the handshake as one comma-separated string, in this order:
- Subprotocol name
- Form filling session ID (
ambient_session_id) sdp_suki_token
Non-browser clients
For mobile apps, backend services, or testing tools, pass headers on the WebSocket upgrade request. Do not useSec-WebSocket-Protocol.
sdp_suki_token- Session token from loginsdp_provider_id- Provider identifier. Optional for standard partners; required for Single Auth Token authenticationambient_session_id- Form filling session ID from Create Form Filling session
Code examples
- Python
- TypeScript
Authorizations
Suki access token for the authenticated provider. Obtain this by calling Login or Register with a valid partner_token. Pass the suki_token value from the JSON response as the sdp_suki_token header on REST requests and non-browser WebSocket upgrades. Browser WebSocket clients pass the token in Sec-WebSocket-Protocol instead. Tokens expire after one hour; call Login again to refresh.
Headers
Required FOR BROWSER CLIENTS ONLY. Sent during WebSocket handshake. Format: 'SukiAmbientAuth,<ambient_session_id>,<sdp_suki_token>' (comma-separated, no spaces required between parts).
Required for non-browser clients only. Session UUID from Create Ambient Session or Create Form Filling Session.
Optional - Stable identifier for the active provider. Omit for standard partners whose partner_token identifies the user. Required for Bearer partners and Single Auth Token authentication where multiple providers share one partner_token. Use the same provider_id you sent on Login or Register.
"provider-123"
Response
Switching Protocols - Indicates successful WebSocket handshake.
The response is of type string.