fire message.deleted for WhatsApp app-side deletes (both directions), with the original message id

Currently, when a message is deleted ("delete for everyone") in a WhatsApp conversation, we can't tell which message was deleted:

  • Business-side delete (from the WA Business app): arrives as a new message.sent event with text: "[revoke]", a fresh message.id, and a fresh platformMessageId. No reference to the deleted message.

  • Customer-side delete: arrives as a new message.received event with text: null, attachments: [] — again a fresh message.id / platformMessageId, no reference to the original.

We are subscribed to message.deleted, but it never fires for either case (confirmed in the webhook logs — only the message.sent / message.received events above appear). The docs say WhatsApp support for message.deleted is limited to deletes issued via the Cloud API, and incoming unsend is Instagram-only.

Ask: emit message.deleted for WhatsApp deletes in both directions (app-side business deletes and customer unsends), carrying the original message's id / platformMessageId — same shape as the Instagram unsend payload. Without a pointer to the original message, inbox UIs can't render a "this message was deleted" state and the [revoke] / null placeholder events are effectively noise.

Example (business-side delete we received — note the ids don't match any prior message):

{
  "event": "message.sent",
  "message": {
    "id": "6a599cbb3d50078defbca0af",
    "platformMessageId": "wamid.HBgKNjU4MjgzMjYwOBUCABEYFDJBNTdDMUI3M0ZBM0U4ODAyNEI3AA==",
    "direction": "outgoing",
    "text": "[revoke]"
  }
}

Please authenticate to join the conversation.

Upvoters
Status

In Review

Board
💡

Feature Request

Date

3 days ago

Author

rae tan

Subscribe to post

Get notified by email when there are changes.