Open the WSS media socket (WebSocket)
**This is a WebSocket (WSS) upgrade, not a normal GET.** It carries live call audio between your client and the WUTS Voice engine. Authorize it with a single-use `ct` token from POST /calls/media-token (the bearer is NOT used here). Once open: - **Send** binary frames of raw PCM, signed 16-bit little-endian, mono, 16 kHz (your microphone). ~20 ms / 320-sample frames are ideal. - **Receive** binary frames in the same PCM format (the other party's audio). - **Send** the text frame `{"type":"hangup"}` to end the call. The server pings every 15 s to keep the socket warm across proxies.
This is a WebSocket (WSS) upgrade, not a normal GET. It carries live call audio between your client and the WUTS Voice engine. Authorize it with a single-use ct token from POST /calls/media-token (the bearer is NOT used here). Once open:
- Send binary frames of raw PCM, signed 16-bit little-endian, mono, 16 kHz (your microphone). ~20 ms / 320-sample frames are ideal.
- Receive binary frames in the same PCM format (the other party's audio).
- Send the text frame
{"type":"hangup"}to end the call.
The server pings every 15 s to keep the socket warm across proxies.
Query Parameters
Single-use media token from POST /calls/media-token.
Response Body
application/json
curl -X GET "https://example.com/calls/media?ct=string"{ "success": false, "error": "validation failed", "error_code": "VALIDATION_ERROR", "timestamp": "2026-06-15T12:00:00Z"}Mint a media socket token POST
Mints a **single-use, 90-second** token for opening the WSS media socket of a specific call. This exists because a browser cannot set the Authorization header on a WebSocket handshake and the company bearer must never appear in a URL. Open `ws_url` immediately after minting.
Reject an incoming call POST
Attempts a best-effort rejection of an incoming WhatsApp call for the authenticated WUTS device. Because WhatsApp does not reliably honour call rejection from a linked/companion device, the user-facing behaviour is typically the configured auto-reply message; the endpoint is kept so hang-up starts working automatically if the platform begins honouring it.