Knowledge Center
Explore our library of informations about our products and services
Delivery report statuses
When sending an SMS, the SMS API and Web Platform offer multiple statuses that let you know if the SMS was successful or not.
Some of the statuses are intermediate, such as "ACCEPTED," which indicates that the provider has accepted the message for delivery but has not yet supplied a final delivery status. Some of the statuses are final, which means they don't change anymore.
The following statuses are available:
Status | Status Code | Type | Description |
---|---|---|---|
ACCEPTED | 0 | Intermediate | The initial status of an SMS. It means that your request was received and the SMS is about to be sent |
SENT | 3 | Intermediate | The message was sent to the recipient but no final status is available yet |
DELIVERED | 1 | Final | Message was delivered to the mobile phone |
FAILED | 2 | Final | Message was not delivered |
NO COVERAGE | 5 | Final | Message was not accepted for delivery because there is no coverage to specified destination. You will not be billed for messages with this status |
REJECTED | 4 | Final | Message was not accepted for delivery (the recipient is in blacklist/optout list). You will not be billed for rejected messages |
SCHEDULED | 9 | Intermediate | Message was scheduled for processing at the specified date and time |
Note 1: Statuses of type Intermediate will not trigger a request to your callback URL (webhook).
Note 2: You are billed for any message delivery attempt, whether it was successful or not. Find out more here.
Troubleshooting for failed SMS messages
When SMS messages don't get delivered, we can find out why by looking at the error code provided in the delivery report. If the "errorCode" parameter has a value of "null," the SMS message was successfully delivered.
Example delivery report of failed SMS
{
"event": "dlr_update",
"data": [
{
"campaignId": "14b09fcc-3beb-46ae-b7dc-22b52ffd0bfd",
"msgId": "d8ca3153-cb30-402b-b97e-ccc4df49fe00",
"trackData": "",
"statusCode": 2,
"status": "FAILED",
"errorCode": 5,
"datetime": "2022-05-13 13:35:24"
}
]
}
Below is a list of all the error codes and what they mean:
errorCode | Type | Description |
---|---|---|
null | No error | No error in the handling of the message |
1 | Unknown | Message was not delivered, and no reason could be provided |
2 | Unknown Number | The destination number is unknown or no longer exists |
3 | Roaming | The destination number is in roaming and cannot accept the message |
4 | Number Blocked | The destination number is blocked by the network operator to receive the message |
5 | Carrier Rejection | The message was blocked by the operator's anti-spam filter. Check the content of your message |
50 | Regulation Error | Unknown country specific regulation error |
60 | General Error | There was an error in the routing of the message |