WhatsApp Delivery Report API
WhatsApp Reports for SMSGatewayCenter APIs
WhatsApp Delivery Report (DLR) API
Use the WhatsApp Reports API to fetch delivery status and message details for WhatsApp Business messages sent through SMSGatewayCenter. Retrieve records by date range, WABA number, and optional mobile number filter. Results are paginated using pageLimit and startCursor. This endpoint supports only POST requests over HTTP with multipart/form-data or form fields.
Ideal for tracking delivered, read, failed, or pending WhatsApp messages, reconciling billing, and syncing delivery status into your CRM or application.
API Endpoint
https://unify.smsgateway.center/WAApi/report
| Parameter | Required | Description | Example/Value |
|---|---|---|---|
| Authentication (Required) | |||
| userid | Yes | Your SMSGatewayCenter username for authentication. | YourUsername |
| password | Yes | Your SMSGatewayCenter password for authentication (masked in the example). | ********** |
| Required Parameters | |||
| wabaNumber | Yes | Your approved WhatsApp Business Account (WABA) number from which messages were sent. Use the number in international format without the plus sign. | 9170396xxxxx |
| fromDate | Yes | Start date and time for the report range. Format: YYYY-MM-DD HH:MM:SS. | 2026-06-09 00:00:00 |
| toDate | Yes | End date and time for the report range. Format: YYYY-MM-DD HH:MM:SS. | 2026-06-09 23:59:59 |
| pageLimit | Yes | Number of records to return per API call. Use a reasonable limit (e.g. 20 to 100) and paginate with startCursor for larger result sets. | 20 |
| output | Yes | Response format. Use json for structured output. | json |
| Optional Parameters | |||
| mobileNo | Optional | Filter delivery reports for a specific recipient mobile number. Use international format without the plus sign. | 911111111111 |
| startCursor | Optional | Cursor value for pagination. Use 1 for the first page. For the next page, pass the next cursor value from the previous response data.cursors object. | 1 |
Note: fromDate and toDate in the sample request use the current date dynamically. Adjust the range as needed for your report window. Use startCursor with the next value from the response to fetch additional pages when data.pages.current is less than data.pages.last.
curl --location --request POST 'https://unify.smsgateway.center/WAApi/report' \
--form 'userid="YourUsername"' \
--form 'password="xxxxx"' \
--form 'wabaNumber="9170396xxxxx"' \
--form 'mobileNo="911111111111"' \
--form 'fromDate="2026-06-09 00:00:00"' \
--form 'toDate="2026-06-09 23:59:59"' \
--form 'pageLimit="20"' \
--form 'startCursor="1"' \
--form 'output="json"'
{
"apiName": "report",
"action": "waReport",
"status": "success",
"msg": "success",
"code": 200,
"data": {
"cursors": {
"next": 19382015,
"start": 18366779
},
"pages": {
"current": 1,
"last": 1
},
"records": [
{
"msgType": "text",
"deliveryTime": 1691165382000,
"billingModel": "SIC",
"msgId": "tnNwDCgP1WhfLwn",
"cause": "Read By User",
"readTime": 1691165389000,
"mobileNo": 919xxxxxxxxx,
"uuId": 3917313917152021246,
"wabaNumber": 9170396xxxxx,
"globalErrorCode": "8006",
"cursorId": 18366779,
"submitTime": "1691165380316",
"status": "DELIVERED"
}
],
"counts": {
"total": 8,
"current": 6
}
}
}
Response Fields
| Field | Description |
|---|---|
status | API call status (e.g. success or error). |
data.records[].status | Message delivery status (e.g. DELIVERED, READ, FAILED). |
data.records[].msgId | WhatsApp message ID returned by the provider. |
data.records[].uuId | SMSGatewayCenter transaction UUID for the message. |
data.records[].mobileNo | Recipient mobile number. |
data.records[].submitTime | Message submit timestamp (epoch milliseconds as string). |
data.records[].deliveryTime | Delivery timestamp (epoch milliseconds). |
data.records[].readTime | Read receipt timestamp when the user read the message (epoch milliseconds). |
data.cursors.next | Cursor for the next page. Pass as startCursor in the following request. |
data.counts.total | Total matching records in the date range. |
data.counts.current | Number of records returned in the current response. |
Testimonials
Why do Great Businesses Trust SMS Gateway Center?

