message.status
Sent with your delivery and read receipts: each time an outgoing message is delivered, read or fails. Use it to show ticks in your own tools, or to retry a send that failed. The sent status comes as message.sent. A late or repeated status from WhatsApp sends nothing.
Called Message status changed in the app. Part of the plan feature webhooks.messages. To subscribe over the API, the key needs messages:read.
How a message’s status moves
Section titled “How a message’s status moves”- pendingAnswer to Send a message
- sentmessage.sent
- delivered
message.status - read
message.status
failedmessage.statusCan replace any status, once. After that the message stays failed, and error says why.
What’s in data. Every event wraps it in the same envelope.
message_id string · uuid
contact_id string · uuid
number_id string · uuid · nullable
broadcast_id string · uuid · nullable
The broadcast the message belongs to, or null.
status string
The status the message moved to. The sent status comes as message.sent. More values may be added.
One of sent delivered read failed.
at string · date-time
When WhatsApp reported the status. Order events by this, not by when they arrive.
error object · nullable
Why the message failed.
Show 2 child attributesHide child attributes
error.code integer
WhatsApp’s error code, or 0 when it isn’t known.
error.message string
Handling it
Section titled “Handling it”- Answer with any
2xxwithin 10 seconds. Do the work after. - Check the signature first. Verify webhooks has the code.
- Subscribe with
POST /v1/webhooks,events: ["message.status"].