Message status
The delivery lifecycle of a message you sent: sent, delivered, read, or failed. status.errors on a failure is Meta's array untouched; see Errors(/errors/#reading-meta-errors). One Meta POST that conta
The delivery lifecycle of a message you sent: sent, delivered, read, or failed. status.errors[] on a failure is Meta's array untouched; see Errors. One Meta POST that contains several statuses becomes one event per status, and each event carries the same raw. Order is not guaranteed; order by status.timestamp.
Event type: message.status. Fixture payloads are the WhaBuzz Demo tenant's real ids with a fictional customer number; id, tenant_id and created_at in envelopes are illustrative.
#sent
What Meta POSTs to WhaBuzz (fixtures/meta/status_sent.json):
{
"object": "whatsapp_business_account",
"entry": [
{
"id": "26059971920328384",
"changes": [
{
"value": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"statuses": [
{
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB40AA=",
"status": "sent",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"conversation": {
"id": "a1b2c3d4e5f60718293a4b5c6d7e8f90",
"expiration_timestamp": "1760677923",
"origin": {
"type": "utility"
}
},
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "utility",
"type": "regular"
}
}
]
},
"field": "messages"
}
]
}
]
}jsonWhat your endpoint receives, as the body of a signed POST. raw is abbreviated here; on the wire it is the full body above.
{
"id": "evt_01JAB3K9X2S8C4M7Q1V5R6T0YZ",
"type": "message.status",
"api_version": "2026-10-16",
"created_at": "2025-10-16T05:12:03.481Z",
"tenant_id": "a578246e-b97f-48e6-ae42-939ec3ccf917",
"waba_id": "26059971920328384",
"phone_number_id": "1013622581841046",
"display_phone_number": "14692311132",
"wamid": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB40AA=",
"wa_id": "16505551234",
"user_id": "US.13491208655302741918",
"dedupe_key": "st:wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB40AA=:sent:1760591523",
"data": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"status": {
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB40AA=",
"status": "sent",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"conversation": {
"id": "a1b2c3d4e5f60718293a4b5c6d7e8f90",
"expiration_timestamp": "1760677923",
"origin": {
"type": "utility"
}
},
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "utility",
"type": "regular"
}
}
},
"raw": {
"…": "the complete Meta POST body, byte for byte, as shown above"
},
"raw_path": "entry[0].changes[0].value.statuses[0]"
}json#delivered (with conversation and pricing)
What Meta POSTs to WhaBuzz (fixtures/meta/status_delivered.json):
{
"object": "whatsapp_business_account",
"entry": [
{
"id": "26059971920328384",
"changes": [
{
"value": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"statuses": [
{
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB41AA=",
"status": "delivered",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"conversation": {
"id": "a1b2c3d4e5f60718293a4b5c6d7e8f90",
"expiration_timestamp": "1760677923",
"origin": {
"type": "marketing"
}
},
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "marketing",
"type": "regular"
}
}
]
},
"field": "messages"
}
]
}
]
}jsonWhat your endpoint receives, as the body of a signed POST. raw is abbreviated here; on the wire it is the full body above.
{
"id": "evt_01JAB3K9X2S8C4M7Q1V5R6T0YZ",
"type": "message.status",
"api_version": "2026-10-16",
"created_at": "2025-10-16T05:12:03.481Z",
"tenant_id": "a578246e-b97f-48e6-ae42-939ec3ccf917",
"waba_id": "26059971920328384",
"phone_number_id": "1013622581841046",
"display_phone_number": "14692311132",
"wamid": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB41AA=",
"wa_id": "16505551234",
"user_id": "US.13491208655302741918",
"dedupe_key": "st:wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB41AA=:delivered:1760591523",
"data": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"status": {
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB41AA=",
"status": "delivered",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"conversation": {
"id": "a1b2c3d4e5f60718293a4b5c6d7e8f90",
"expiration_timestamp": "1760677923",
"origin": {
"type": "marketing"
}
},
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "marketing",
"type": "regular"
}
}
},
"raw": {
"…": "the complete Meta POST body, byte for byte, as shown above"
},
"raw_path": "entry[0].changes[0].value.statuses[0]"
}json#read (free service conversation)
What Meta POSTs to WhaBuzz (fixtures/meta/status_read.json):
{
"object": "whatsapp_business_account",
"entry": [
{
"id": "26059971920328384",
"changes": [
{
"value": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"statuses": [
{
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB42AA=",
"status": "read",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"pricing": {
"billable": false,
"pricing_model": "PMP",
"category": "service",
"type": "free_customer_service"
}
}
]
},
"field": "messages"
}
]
}
]
}jsonWhat your endpoint receives, as the body of a signed POST. raw is abbreviated here; on the wire it is the full body above.
{
"id": "evt_01JAB3K9X2S8C4M7Q1V5R6T0YZ",
"type": "message.status",
"api_version": "2026-10-16",
"created_at": "2025-10-16T05:12:03.481Z",
"tenant_id": "a578246e-b97f-48e6-ae42-939ec3ccf917",
"waba_id": "26059971920328384",
"phone_number_id": "1013622581841046",
"display_phone_number": "14692311132",
"wamid": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB42AA=",
"wa_id": "16505551234",
"user_id": "US.13491208655302741918",
"dedupe_key": "st:wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB42AA=:read:1760591523",
"data": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"status": {
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB42AA=",
"status": "read",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"pricing": {
"billable": false,
"pricing_model": "PMP",
"category": "service",
"type": "free_customer_service"
}
}
},
"raw": {
"…": "the complete Meta POST body, byte for byte, as shown above"
},
"raw_path": "entry[0].changes[0].value.statuses[0]"
}json#failed
What Meta POSTs to WhaBuzz (fixtures/meta/status_failed.json):
{
"object": "whatsapp_business_account",
"entry": [
{
"id": "26059971920328384",
"changes": [
{
"value": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"statuses": [
{
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB43AA=",
"status": "failed",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"errors": [
{
"code": 131049,
"title": "This message was not delivered to maintain healthy ecosystem engagement.",
"message": "This message was not delivered to maintain healthy ecosystem engagement.",
"error_data": {
"details": "In order to maintain a healthy ecosystem engagement, the message failed to be delivered."
},
"href": "https://developers.facebook.com/docs/whatsapp/cloud-api/support/error-codes/"
}
]
}
]
},
"field": "messages"
}
]
}
]
}jsonWhat your endpoint receives, as the body of a signed POST. raw is abbreviated here; on the wire it is the full body above.
{
"id": "evt_01JAB3K9X2S8C4M7Q1V5R6T0YZ",
"type": "message.status",
"api_version": "2026-10-16",
"created_at": "2025-10-16T05:12:03.481Z",
"tenant_id": "a578246e-b97f-48e6-ae42-939ec3ccf917",
"waba_id": "26059971920328384",
"phone_number_id": "1013622581841046",
"display_phone_number": "14692311132",
"wamid": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB43AA=",
"wa_id": "16505551234",
"user_id": "US.13491208655302741918",
"dedupe_key": "st:wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB43AA=:failed:1760591523",
"data": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"status": {
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB43AA=",
"status": "failed",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"errors": [
{
"code": 131049,
"title": "This message was not delivered to maintain healthy ecosystem engagement.",
"message": "This message was not delivered to maintain healthy ecosystem engagement.",
"error_data": {
"details": "In order to maintain a healthy ecosystem engagement, the message failed to be delivered."
},
"href": "https://developers.facebook.com/docs/whatsapp/cloud-api/support/error-codes/"
}
]
}
},
"raw": {
"…": "the complete Meta POST body, byte for byte, as shown above"
},
"raw_path": "entry[0].changes[0].value.statuses[0]"
}json#failed: recipient not in allowed list
What Meta POSTs to WhaBuzz (fixtures/meta/status_failed_not_allowed.json):
{
"object": "whatsapp_business_account",
"entry": [
{
"id": "26059971920328384",
"changes": [
{
"value": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"statuses": [
{
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB44AA=",
"status": "failed",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"errors": [
{
"code": 131030,
"title": "Recipient phone number not in allowed list",
"message": "Recipient phone number not in allowed list",
"error_data": {
"details": "Recipient phone number not in allowed list: Add recipient phone number to recipient list and try again."
}
}
]
}
]
},
"field": "messages"
}
]
}
]
}jsonWhat your endpoint receives, as the body of a signed POST. raw is abbreviated here; on the wire it is the full body above.
{
"id": "evt_01JAB3K9X2S8C4M7Q1V5R6T0YZ",
"type": "message.status",
"api_version": "2026-10-16",
"created_at": "2025-10-16T05:12:03.481Z",
"tenant_id": "a578246e-b97f-48e6-ae42-939ec3ccf917",
"waba_id": "26059971920328384",
"phone_number_id": "1013622581841046",
"display_phone_number": "14692311132",
"wamid": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB44AA=",
"wa_id": "16505551234",
"user_id": "US.13491208655302741918",
"dedupe_key": "st:wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB44AA=:failed:1760591523",
"data": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"status": {
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB44AA=",
"status": "failed",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"errors": [
{
"code": 131030,
"title": "Recipient phone number not in allowed list",
"message": "Recipient phone number not in allowed list",
"error_data": {
"details": "Recipient phone number not in allowed list: Add recipient phone number to recipient list and try again."
}
}
]
}
},
"raw": {
"…": "the complete Meta POST body, byte for byte, as shown above"
},
"raw_path": "entry[0].changes[0].value.statuses[0]"
}json#Three statuses in one Meta POST
What Meta POSTs to WhaBuzz (fixtures/meta/statuses_multi.json):
{
"object": "whatsapp_business_account",
"entry": [
{
"id": "26059971920328384",
"changes": [
{
"value": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"statuses": [
{
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB45AA=",
"status": "sent",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "utility",
"type": "regular"
}
},
{
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB45AA=",
"status": "delivered",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "utility",
"type": "regular"
}
},
{
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB46AA=",
"status": "read",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "marketing",
"type": "regular"
}
}
]
},
"field": "messages"
}
]
}
]
}jsonWhat your endpoint receives (event 1 of 3, entry[0].changes[0].value.statuses[0]), as the body of a signed POST. raw is abbreviated here; on the wire it is the full body above.
{
"id": "evt_01JAB3K9X2S8C4M7Q1V5R6T0YZ",
"type": "message.status",
"api_version": "2026-10-16",
"created_at": "2025-10-16T05:12:03.481Z",
"tenant_id": "a578246e-b97f-48e6-ae42-939ec3ccf917",
"waba_id": "26059971920328384",
"phone_number_id": "1013622581841046",
"display_phone_number": "14692311132",
"wamid": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB45AA=",
"wa_id": "16505551234",
"user_id": "US.13491208655302741918",
"dedupe_key": "st:wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB45AA=:sent:1760591523",
"data": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"status": {
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB45AA=",
"status": "sent",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "utility",
"type": "regular"
}
}
},
"raw": {
"…": "the complete Meta POST body, byte for byte, as shown above"
},
"raw_path": "entry[0].changes[0].value.statuses[0]"
}jsonWhat your endpoint receives (event 2 of 3, entry[0].changes[0].value.statuses[1]), as the body of a signed POST. raw is abbreviated here; on the wire it is the full body above.
{
"id": "evt_01JAB3K9X2S8C4M7Q1V5R6T0YZ",
"type": "message.status",
"api_version": "2026-10-16",
"created_at": "2025-10-16T05:12:03.481Z",
"tenant_id": "a578246e-b97f-48e6-ae42-939ec3ccf917",
"waba_id": "26059971920328384",
"phone_number_id": "1013622581841046",
"display_phone_number": "14692311132",
"wamid": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB45AA=",
"wa_id": "16505551234",
"user_id": "US.13491208655302741918",
"dedupe_key": "st:wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB45AA=:delivered:1760591523",
"data": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"status": {
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB45AA=",
"status": "delivered",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "utility",
"type": "regular"
}
}
},
"raw": {
"…": "the complete Meta POST body, byte for byte, as shown above"
},
"raw_path": "entry[0].changes[0].value.statuses[1]"
}jsonWhat your endpoint receives (event 3 of 3, entry[0].changes[0].value.statuses[2]), as the body of a signed POST. raw is abbreviated here; on the wire it is the full body above.
{
"id": "evt_01JAB3K9X2S8C4M7Q1V5R6T0YZ",
"type": "message.status",
"api_version": "2026-10-16",
"created_at": "2025-10-16T05:12:03.481Z",
"tenant_id": "a578246e-b97f-48e6-ae42-939ec3ccf917",
"waba_id": "26059971920328384",
"phone_number_id": "1013622581841046",
"display_phone_number": "14692311132",
"wamid": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB46AA=",
"wa_id": "16505551234",
"user_id": "US.13491208655302741918",
"dedupe_key": "st:wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB46AA=:read:1760591523",
"data": {
"messaging_product": "whatsapp",
"metadata": {
"display_phone_number": "14692311132",
"phone_number_id": "1013622581841046"
},
"contacts": [
{
"profile": {
"name": "Kerry Fisher"
},
"wa_id": "16505551234",
"user_id": "US.13491208655302741918"
}
],
"status": {
"id": "wamid.HBgLMTY1MDU1NTEyMzQVAgASGBQzQUY5QTdGNkU0RTFGMkI3QzFB46AA=",
"status": "read",
"timestamp": "1760591523",
"recipient_id": "16505551234",
"recipient_user_id": "US.13491208655302741918",
"pricing": {
"billable": true,
"pricing_model": "PMP",
"category": "marketing",
"type": "regular"
}
}
},
"raw": {
"…": "the complete Meta POST body, byte for byte, as shown above"
},
"raw_path": "entry[0].changes[0].value.statuses[2]"
}jsonThis page as Markdown: /events/message-status.md. All docs in one file: /llms-full.txt.