IM Message Status Event

IM Message Status Event

With the IM Message Status webhook, you always know the exact moment a message is sent, delivered, or read. This helps you track message journeys from end to end, measure customer engagement, and trigger actions in real time.

What is the IM Message Status Event?

The IM Message Status Event is triggered whenever the status of an individual message changes. It tells you:
  • When a message moves from sent to delivered
  • When a customer reads your message
  • The previous status and the new status of the message
  • The exact timestamp when the status changed
Note
Event Type: IM_Message_Status

Sample Payload

Every time an IM message status changes, you will receive a payload like this at your webhook endpoint:
[{ "payload": { "messageOldStatus": "SENT", "messageNewStatus": { "updatedTime": "2025-10-09T07:27:19.394Z", "status": "DELIVERED" }, "messageId": 50007000000006017, "sessionId": 50007000000004136, "channelId": 50007000000004080 }, "eventTime": "1751022087019", "eventType": "IM_Message_Status", "orgId": "106553778" }]

Payload Fields Reference

Each webhook event provides the full context of the message status change.
Field Description
messageOldStatus The previous status of the message
messageNewStatus.status The updated status of the message
messageNewStatus.updatedTime The exact time when the status changed
messageId The unique identifier of the message
sessionId Conversation or session ID the message belongs to
channelId ID of the channel where the message was sent
eventTime Unix epoch (milliseconds) of when the webhook event fired
eventType Type of webhook event
orgId Your Zoho Desk organization ID

Message Status Values

Below are all possible message statuses and what they indicate.
Status Description
SENT Message is successfully sent to the end user
DELIVERED Message is delivered to the end user
READ Message is read by the end user

How to Set It Up

Follow these steps to configure the IM Message Status webhook in your portal:
Setup
1. Navigate to Setup > Automation > Webhooks.
2. Click Create Webhook.
3. Select the IM Message Status event.
4. Enter your Webhook URL.
5. Click Save and test the webhook.

Practical Use Cases

Stay fully informed about how your messages perform. With this webhook, you can:

Delivery monitoring

Get notified when messages are stuck in the SENT state for too long. Use messageOldStatus and messageNewStatus.updatedTime to calculate how long a message has been undelivered and trigger an alert or retry.

Customer engagement tracking

Log every READ event to measure customer interest. By recording the time between DELIVERED and READ, you can build engagement benchmarks per channel or per agent.

Smart follow-ups

Trigger follow-up tasks when messages are delivered but not read after a defined period. Use messageNewStatus.status to detect the DELIVERED state and start a timer, then trigger the follow-up if no READ event arrives within your threshold.

Channel performance analytics

Report delivery and read ratios across WhatsApp, Instagram, Facebook, and live chat. Group events by channelId to compare how messages perform across different platforms and identify which channels have the lowest delivery success rates.

Troubleshooting and FAQ

Q: Why am I not receiving events for message status changes?
A: First, check that the webhook is enabled and your endpoint is reachable. Also confirm that the IM channel you are testing supports message status callbacks. Not all channels provide delivery and read receipt data; if the channel does not emit status updates, no event will be fired regardless of the webhook configuration.
Q: Why is the event data incomplete?
A: Some fields such as messageNewStatus.updatedTime are only populated when the channel integration provides that data. Ensure message status callbacks are fully supported for the integration you are testing and that your channel account is in good standing.
Q: Does this work with WhatsApp, Facebook, or Instagram?
A: Yes. Message status updates are supported for channels that provide delivery and read receipts, including WhatsApp, Facebook Messenger, and Instagram. The availability of READ events specifically depends on the channel's privacy settings and whether the end user has read receipts enabled.
Q: Can I use the same webhook URL for this and other IM events?
A: Yes. A single callback URL can receive multiple event types. Differentiate them at your endpoint using the eventType field in each payload, which will be IM_Message_Status for this event.
Related Articles