GEThttps://wabapi.com/api/v1/messages/{id}
Returns the current state of a message you sent. States move SENT → DELIVERED → READ, or to FAILED. A FAILED message has already had its credits refunded; error_code carries the reason WhatsApp gave.
curl https://wabapi.com/api/v1/messages/msg_3f9c2b1e7a4d4c0e9b2a1f6d \
-H "Authorization: Bearer wab_live_0123456789abcdef0123456789abcdef"{
"id": "msg_3f9c2b1e7a4d4c0e9b2a1f6d",
"status": "DELIVERED",
"to": "917021948630",
"template_name": "ticket_confirmation",
"credits": 1,
"sent_at": "2026-09-01T10:00:00.000Z",
"delivered_at": "2026-09-01T10:00:04.000Z",
"read_at": null,
"error_code": null
}Delivery is usually reported within seconds, but a phone that is off or out of coverage can take hours, and a number that has blocked you never reports at all — SENT is not a promise. Poll no more than once a minute per message; push callbacks to your own server are coming and will replace polling.
Errors
| HTTP | code | Meaning |
|---|---|---|
| 401 | invalid_api_key | The Authorization header is missing, malformed, unknown or revoked. |
| 404 | message_not_found | No message with that id exists on this account. |