whatsapp.message.sent
WhatsApp sent a message to the recipient's phone.
When it fires
WhatsApp sent the message to the recipient's phone. It fires once per message, when the message reaches sent. If WhatsApp reports delivered or read first, this event doesn't fire for that message.
Event fields
data.idstringWhatsApp message ID, starting with
msg_. The same ID the send returned.data.senderstringPhone number the message was sent from, in E.164 format.
data.recipientstringRecipient phone number, in E.164 format.
data.templateobject or nullThe template sent:
id,name, andlanguage.data.occurred_atstringISO 8601 time WhatsApp reported for this status.
The payload never includes message content or variable values. Retrieve the message with data.id for its content, cost, and all its timestamps.
Handle this event
Mark the message as sent. Sent is not delivered: the recipient's phone may be off or out of coverage. Wait for whatsapp.message.delivered or whatsapp.message.failed.
Verify the signature before reading the payload. Deduplicate by the envelope id, not the message ID: one message has several events. Events can arrive out of order; compare data.occurred_at, or retrieve the message, before moving a status backwards.