WPP Marketing
Language and currency
Log in
Case studies Plans
Search the site
Language and currency
Status webhooks

Receive WhatsApp message statuses in your system.

Set up a URL to receive standardized events for creation, delivery, read receipts and errors, and check delivery history via the API regardless of the chosen connection.

Flow

WPP Marketing notifies your system when the status changes.

Status webhooks are useful for auditing, reconciliation, internal dashboards, support, and rules in your own system.

The webhook reports the result of a message; it is not a send request. Use the Messaging API to send messages and the Events API to trigger automations with supported commercial events.

01 You provide the URL

Register an HTTPS endpoint from your system in the dashboard to receive callbacks.

02 Choose events

Enable only the statuses your system needs to consume to avoid operational noise.

03 Status changes

Creation, delivery, reading, or error are normalized the same way regardless of the connection selected.

04 Receive and track

Your endpoint processes the payload and the delivery history becomes available in the dashboard and via GET /webhooks.

Available events and delivery lookup.

All four events use the same contract on any connection, and the API allows querying the result of each delivery attempt.

POST MESSAGE_CREATED

Message was created in the flow and received an identifier for tracking.

Criação
POST MESSAGE_DELIVERED

Message was delivered to the recipient when the channel returns confirmation.

Entrega
POST MESSAGE_READ

Message was read when read receipt is available.

Leitura
POST MESSAGE_ERROR

Message encountered an error during sending, validation, or processing.

Erro
GET /webhooks

View delivery history with status, attempts, HTTP response, and pagination. Requires the webhooks:read scope.

Logs
Best practices

Prepare your endpoint to receive repeated and out-of-order events.

Webhooks are deliveries between systems. Your backend should respond quickly, log requests, and process idempotently.

HTTPS

Register a public HTTPS URL and enable events in the dashboard. The current contract does not send an HMAC signature; configure appropriate protection and validation for the receiver without assuming a signature that does not exist.

Quick reply

Respond with an HTTP 2xx within 15 seconds and process long-running tasks in an internal queue. Redirects are not followed.

Idempotency

Use the event id, also sent in Webhook-Id, to avoid duplicate processing and accept out-of-order events. Webhook-Attempt indicates the attempt number. Only enabled events are logged and sent.

Logs

View HTTP attempts and responses on GET /webhooks with webhooks:read. Completed, delivered, or permanently failed records are retained for 30 days. Protect personal data and message content in your own logs.

New attempts

Connection failures, timeouts and 408, 425, 429 or 5xx responses may trigger up to seven total attempts, with intervals of 1, 5 and 15 minutes, and 1, 6 and 24 hours. Retry-After is honored up to 24 hours. Other 4xx errors stop delivery.

Separation

Status webhooks are responses from WPP Marketing. To send store commercial events, use the Events API.

Want to track deliveries and errors in your system?

Set up a URL in the dashboard, choose the statuses, and track deliveries in the webhooks report.

Set up webhooks