Developer ResourcesSupport
Support Realtime
Support request realtime room contracts and sync flow.
Support Realtime
Scope (v1)
Realtime is an additive delta + notification layer over REST for:
- support request message updates
Room Names
- Support request messages room:
support:request:{supportRequestId}:messages
Socket Client Events
support:join_request_messages- payload:
{ "supportRequestId": number }
- payload:
support:leave_request_messages- payload:
{ "supportRequestId": number }
- payload:
support:sync_request_messages- payload:
{ "supportRequestId": number, "sinceEventId"?: string, "limit"?: number }
- payload:
Join/Leave Authorization
- JWT is required for all support websocket events.
- Admins can join any support request room.
- Customers can only join rooms for their own support requests.
Error codes from join/sync handlers:
UNAUTHORIZEDFORBIDDENNOT_FOUNDVALIDATION_ERROR
Server Event Names
support.request_message.created
Event Envelope
Every support event payload follows:
{
"eventId": "019d....",
"eventType": "support.request_message.created",
"occurredAt": "2026-03-19T06:49:23.790Z",
"data": {}
}Payload rules:
- delta only (no speculative fields)
- includes message id + support request id + timestamps + actor
- use REST for initial/full state
Reconnect & Replay Flow
- Connect/reconnect websocket.
- Rejoin required support rooms.
- Call sync event with last processed
sinceEventId. - Client dedupes by
eventIdand applies in order. - If replay fails or gap is detected, fallback to REST refetch.