Developer Documentation
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Common Data Properties

Every event is sent across the WebSocket connection as a JSON string. We call this a message (not to be confused with text message). You can expect a few common data properties to always exist.

{
    "type": "userevent",
    "category": "voice",
    "subCategory": "incoming",
    "eventName": "answer",
    "eventTimestamp": "2022-10-22T03:54:05+00:00",
    ...
}
  • Type is userevent, signifying that this has been emitted on the user event stream.
  • Category is voice
  • Subcategory is incoming
  • Event name is answer
  • When we take the category, subcategory and event name and write it in topic format, we get voice.incoming.answer

Here is the full example of an event that shows that user 9999 just answered a phone call:

{
    "type": "userevent",
    "callType": "voicecall",
    "category": "voice",
    "destination": "9999",
    "eventName": "answer",
    "eventTimestamp": "2022-10-22T03:54:05+00:00",
    "hasVoicemail": false,
    "isCall": true,
    "isMissedCall": false,
    "subCategory": "incoming",
    "trackingId": "9d547c9e4ba4fb1b14eebd9072b1228",
    "type": "userevent",
    "uniqueId": "10.783465762.323991",
    "userData":
    {
        id: "9999",
        ...
    },
    "userId": "9999"
}