WhatsApp Delivery Reports will be delivered to a pre-configured callback URL using the HTTP POST method. You can set up or modify this URL by visiting the following link:
https://console.geniq.io/settings/webhooks
The following parameters will be sent to the configured URL in JSON format:
PARAMETER | FORMAT | DESCRIPTION |
messageId | string | A unique ID that was previously returned by our API when sending out WhatsApp message |
channel | string | The channel type. For the case of WhatsApp, the value will always be set to “whatsapp” |
recipient | integer | The recipient’s mobile number |
status | string | The status of the message sent to the recipient. Possible values: • processed • sent • delivered • read • failed • expired • exceeded_retry |
reasonCode | integer | If the message failed to deliver, this parameter will provide additional information on the failure |
messageTimestamp | string | The creation date and time of this report on GENIQ platform in RFC3339 format (Y-m-d\TH:i:sP) |
providerTimestamp | string | The creation date and time of this report on the Meta platform in RFC3339 format (Y-m-d\TH:i:sP) |
Sample callback
{
"messageId": "0c5b63cf-b41e-449c-a077-9124de0b87dc",
"recipient": "6588880000",
"status": "delivered",
"reasonCode": "0",
"channel": "whatsapp",
"messageTimestamp": "2025-02-20T15:23:56+08:00",
"providerTimestamp": "2025-02-20T15:23:55+08:00"
}
#Note: Your platform should respond with HTTP Status Code 200 (OK). Otherwise, the same message will be delivered again.