You can receive incoming messages on your webhook, enabling real-time integration with your systems.

Note: this is not for message delivery status — the webhook is triggered only for incoming messages.

🛠️ How to Create a Webhook

To set up a webhook in Zixflow:

  1. Navigate to the Zixflow application.
  2. Go to the Settings section.
  3. Open the Developer section.
  4. Click on Webhook.
  5. Click on the ➕ Add button.
Below is a list of available events, including their structure and example payloads.

1. incoming.rcs.message

Triggered when a new RCS message is received.

{
  "event": "incoming.rcs.message",                       // Event Type
  "eventId": "3472dff5-7c06-40e6-be06-a28a335ac263",     // UUID v4 - Event id to uniquilly identify event
  "timestamp": 1744346001738,                            // Message At 13 digit timestamp
  "botId": "xxxxxxxxxxxxxx79",                           // RCS Bot ID
  "messageId": "MxUMzTyF6kRBe7q5cPpwDufg",               // RCS messsage id
  "sender": {
    "number": "919999999999"                             // End user phone number with country code
  },
  "message": {
    // When Text Messages Receives
    "type": "text"
    "text": "Hi"

    // When user click on quick reply buttons
    "type": "reply"
    "reply": "More"

    // When Image Message Receives
    "type": "image",
    "image":{
      "mimeType": "image/xxxx",                         // Image Mime type
      "fileSizeBytes": 86267,                           // Image Size in Bytes
      "fileName": "",                                   // Image File Name
      "fileUri": "",                                    // Image File URL
    }

    // When Video Message Receives
    "type": "video",
    "video":{
      "mimeType": "video/xxxx",                         // Video Mime type
      "fileSizeBytes": 86267,                           // Video Size in Bytes
      "fileName": "",                                   // Video File Name
      "fileUri": "",                                    // Video File URL
    }

    // When Audio Message Receives
    "type": "audio",
    "audio":{
      "mimeType": "audio/xxxx",                         // Audio Mime type
      "fileSizeBytes": 86267,                           // Audio Size in Bytes
      "fileName": "",                                   // Audio File Name
      "fileUri": "",                                    // Audio File URL
    }

    // When File Message Receives
    "type": "file",
    "file":{
      "mimeType": "xxxx/xxxx",                          // File Mime type
      "fileSizeBytes": 86267,                           // File Size in Bytes
      "fileName": "",                                   // File File Name
      "fileUri": "",                                    // File File URL
    }

    // When Location Message Receives
    "type": "location",
    "location": {
      "latitude": 19.2232384
      "longitude": 73.0798646
    }
  },
 "metaData": {
    "accountId": "xxxxxxxxxxxxxb8de24d95b59",             // Zixflow Account Id
    "orgMsgId": "xxxxxxxxxxxx67f3cbd6b9d1"                // Zixflow Org Message Id
  }
}