Short video:
You can find your SMS reports in the 'Reports' tab under Admin
There are 4 types of Reports that are available in the report type dropdown.
- SMS Detailed Report
- SMS Summary Report
- DLT Error Report ( Applicable for Indian accounts only)
- URL Shortening Report
Reports are provided the facility to filter report queries on the basis of SMS type and SMS status.
SMS types include:
All
Promotional
Transactional
Transactional opt-in
SMS status’ include:
All
Sent
Failed
Failed DND
** SMS Type and Filter is not applicable for DLT Error report
- SMS Detailed report format
Field | Values | Comments |
Id | Unique alphanumeric identifier of the SMS | |
Direction | incoming / outbound-API | |
Type | transactional / promotional | 'Transactional' if the message matches a transactional template in your account |
From | SMS Sender ID | LM-XXXXXX for outbound SMS and the sending number for inbound SMS |
To | Number to which SMS was sent | |
Body | Body of the message | |
Status | sent / failed / failed-dnd / submitted | sent - All is well failed - Message was not sent failed-dnd - This happens when a promotional SMS is sent to a number in NCPR (DND list) submitted - This means that the SMS you have sent has been submitted from our system to SMS Gateway |
Time | DD/MM/YY HH:MM: SS | |
Price | In rupees | 1 SMS unit = 160 characters. |
DetailedStatusCode | The code of the Detailed SMS status | Refer to the table below for the possible values. |
DetailedStatus | The name of the Detailed SMS status | Refer to the table below for the possible values. |
Date Sent | Sent time stamp DD/MM/YY HH:MM: SS | |
CustomField | ||
NumberOfUnits | 1 unit= 160 characters | |
EncodingType | Message type of SMS, can be of plain or unicode | Plain ( for English) or Unicode (other languages) |
DltEntityId | The numeric identifier for the DLT platform in India is configured on the Exotel dashboard or passed in the API request. | NOTE: This column would only be populated if your Exotel account is domestic (India specific) If this is empty or incorrect, the DLT platform will fail your SMSes. You can configure this via Exotel Dashboard Settings (link) |
DltTemplateId | The numeric identifier for DLT Template in India as configured on Exotel dashboard or passed in the API request. A single quote (') would be added at the end to allow this to be readable in Excel. | NOTE: This column would only be populated if your Exotel account is domestic (India specific) If this is empty or incorrect, the DLT platform will fail your SMSes. Refer to this knowledge base to learn more on Template scrubbing compliance. |
List of possible DetailedStatus and DetailedStatusCode-
DetailedStatusCode | Nature of Detailed Status Code | Status | DetailedStatus | What it means |
21010 | Intermediate, may change in future | queued | PENDING_TO_OPERATOR | The message is being processed by Exotel. |
21015 | Intermediate, may change in future | sending | SENDING_TO_OPERATOR | The message has been processed by Exotel and is en route to the operator. |
21020 | Intermediate, may change in future | submitted | PENDING_ON_OPERATOR | The message has been successfully submitted to the operator and is pending delivery. In India, Promotional SMS may be in this state if submitted outside the permitted time (10 AM to 9 PM IST). |
20005 | Final | sent | DELIVERED_TO_HANDSET | We know with confidence that the message has been delivered to the recipient's handset. |
20006 | Final | sent | DELIVERED_TO_OPERATOR | The message has been delivered to the operator. In some regions and routes, handset delivery status (DELIVERED_TO_HANDSET) is not available and hence this is the best we can ever report about the delivery status. |
23005 | Final | failed_dnd | FAILED_REJECTED_DND | The message has been rejected as the end-user is a subscriber of DND (Do Not Disturb) services. |
23010 | Final | failed | FAILED_INVALID_DESTINATION_NUMBER | The destination number is incorrect, not SMS-enabled, or is a PSTN landline. |
23015 | Final | failed | FAILED_SPAM_DETECTED | One of the most common reasons for SMS delivery failure is carrier-level spam filters. Carriers have added systems and algorithms that detect spam content and then block these messages. Unfortunately, these filters are hidden, subject to carrier preferences, vary from carrier to carrier, and can be changed without notice. |
23020 | Final | failed | FAILED_REJECTED_BLACKLIST | You tried to send a message to a blacklisted phone number. That is, the user has already sent a STOP/DND opt-out message and no longer wishes to receive messages from you. |
24990 | Final | failed | FAILED_UNKNOWN_ERROR | Delivering your message failed for reasons that are unknown to us and to our carriers. If you notice too many of these cases, please reach out to us. |
23030 | Final | failed | FAILED_UNAVAILABLE_ROUTE | The carrier and fallback carriers were not able to deliver the SMS message because no route was available. |
23035 | Final | failed | FAILED_SUBSCRIBER_UNAVAILABLE | This message was not delivered because the subscriber was temporarily unavailable. For example, the receiving handset was out of coverage or switched off. This is a temporary failure, but a message sent to the same subscriber at a later point in time may get delivered. |
23040 | Final | failed | FAILED_SUBSCRIBER_UNKNOWN | Subscriber is unknown to the operators or no longer active. |
23050 | Final | failed | FAILED_EXPIRED | The message was sent to the operator and may have been retried several times within the default network SMS expiration duration. The message request has now expired. |
23060 | Final | failed | FAILED_REJECTED | For a number of reasons, the message was rejected by Exotel or the operator. |
24105 | Final | failed | FAILED_HANDSET_ERROR | The message was not delivered to the subscriber due to handset failure |
24110 | Final | failed | FAILED_OPERATOR_ERROR | The message failed due to an issue at the operator's end |
23070 | Final | failed | FAILED_INVALID_MESSAGE | The message was rejected by the operator as Invalid. While Exotel will automatically split messages longer than 160 GSM 7-bit characters, or 70 Unicode 16-bit characters into multipart SMS, Messages exceeding the allowed character limit of 2000 characters may also end in this state. Any request error related to the message, say unidentified character, may also fall under this bucket. |
23072 | Final | failed | FAILED_INVALID_SENDER_ID
| The message failed due to an invalid or unregistered Sender ID. In the case of India, if your Sender ID (header) is not registered with the operator DLT platform, you may receive this error. |
24010 | Final | failed | FAILED_SYSTEM_ERROR | SMS failed while processing within the Exotel system. |
24120 | Final | failed | FAILED_SUBSCRIBER_ERROR | All subscriber or recipient issues that are unrelated to the handset (For eg - The receiver does not have enough mobile balance to receive the SMS) may fall under this bucket. |
23080 | Final | failed | SENDER_BLOCKED_BY_DLT | Applicable only for SMSes sent to Indian destination numbers via domestic lines. Sender ID (Header) is blocked or failed at DLT due to mismatch, non-registration, etc. |
23081 | Final | failed | ENTITY_BLOCKED_BY_DLT | Applicable only for SMSes sent to Indian destination numbers via domestic lines. Entity (DLT Entity ID) is blocked or failed at DLT due to not being set, mismatch, etc. |
23082 | Final | failed | TEMPLATE_BLOCKED_BY_DLT | Applicable only for SMSes sent to Indian destination numbers via domestic lines. Template (Template ID) is blocked or failed at DLT due to not being set, mismatch, non-registration, etc. |
23083 | Final | failed | FAILED_DLT_SCRUBBING_ERROR | Applicable only for SMSes sent to Indian destination numbers via domestic lines. SMS is blocked or failed at DLT even after the registration due to explicit blocking of the Sender ID due to spam, issues with consent, or any other technical issues with the DLT platform. |
23084-24000 | Final | failed | RESERVED FOR FUTURE | These statuses will not be populated right now but are reserved for the future for any other detailed status scenario related to SMS. |
2. SMS Summary report format
SMS Summary report provides a high-level summary of the SMSs. It captures the number of units with delivery status and the total price of those units.
Field | Values | Comments |
Date | timestamp (yyyy-mm-dd) | |
Status | SMS delivery status It could be Submitted, Sent, Failed and Failed DND | |
SMSType |
| |
ExoStatus | Detailed Status | |
NumUnits | Number of SMS units | 1 SMS Unit = 160 Characters |
Price | Cumulative price of those smses | Price is calculated at the sms unit level |
Count | Count of SMS | |
Percentage | Count/(Total Count) |
3. DLT Error format
DLT error report provides the details of DLT errors along with the TemplateID. You can check how many SMSs were delivered or Failed for a particular Template.
Errors will be shown only if Detailed Status / Total SMS with Template ID > 1%
Field | Values | Comments |
Account SID | Account sid | |
SMS Type |
| |
DLT Template ID | Content Template Id against the SMS body registered with DLT | |
Template on Exotel | Template body | |
Total SMS with Template ID | totalCount of SMS with the Template ID | |
Total Delivered with Template ID | Total count of SMS Delivered with the Template ID | Delivered= DELIVERED_TO_HANDSET OR DELIVERED_TO_OPERATOR |
DLT Error Type (Detailed Status) | Detailed Status | |
SMS Count with DetailedStatus | Total count of undelivered SMS with the Template ID | Status = Failed or Failed DND Detailed Status will be one of the following-'SENDER_BLOCKED_BY_DLT','ENTITY_BLOCKED_BY_DLT','TEMPLATE_BLOCKED_BY_DLT', 'FAILED_DLT_SCRUBBING_ERROR','FAILED_DLT_CONSENT_ERROR','DLT_TEMPLATE_ID_INVALID', 'DLT_TEMPLATE_NOT_FOUND','DLT_TEMPLATE_ID_INACTIVE','DLT_TEMPLATE_ID_BLACKLISTED', 'DLT_TEMPLATE_DOES_NOT_MATCH','DLT_LENGTH_EXCEEDED', 'DLT_ENTITY_NOT_FOUND','FAILED_INVALID_MESSAGE','FAILED_INVALID_SENDER_ID' |
4. URL shortening Report
Only applicable if you have used URL shortening service.
Field | Values | Comments |
Id | Unique alphanumeric identifier of the SMS | |
Direction | incoming / outbound-API | |
Type | transactional / promotional | 'Transactional' if the message matches a transactional template in your account |
From | SMS Sender ID | LM-XXXXXX for outbound SMS and the sending number for inbound SMS |
To | Number to which SMS was sent | |
Body | Body of the message | |
Status | sent / failed / failed-dnd / submitted | sent - All is well failed - Message was not sent failed-dnd - This happens when a promotional SMS is sent to a number in NCPR (DND list) submitted - This means that the SMS you have sent has been submitted from our system to SMS Gateway |
Time | DD/MM/YY HH:MM: SS | |
Price | In rupees | |
DetailedStatusCode | The code of the Detailed SMS status | |
DetailedStatus | The name of the Detailed SMS status | |
DateSent | Sent time stamp DD/MM/YY HH:MM: SS | |
DltEntityID | The numeric identifier for the DLT platform in India is configured on the Exotel dashboard or passed in the API request. | |
DltTemplateID | The numeric identifier for DLT Template in India as configured on Exotel dashboard or passed in the API request. A single quote (') would be added at the end to allow this to be readable in Excel. | |
URL shortenend | Yes | The report is applicable only if URL is shortened |
URL clicked | Yes | The report is applicable only if URL is Clicked |
CustomField | ||
NumberOfUnits | unit of SMS | 1 SMS unit = 160 characters |
EncodingType | Message type of SMS, can be of plain or unicode | Plain ( for English) or Unicode (other languages) |
URL SID | unique id for shortened url | |
Short URL | Shortened URL | |
Short Code | Shortcode for URL | |
Long URL | Original URL | |
Tracking | True | |
Expires At | Shortened url expiry time | |
Created Time | Created time of shortened URL | |
Last Viewed at | Last viewed time of the short URL | |
Total Clicks | Total number of clicks on the short URL | |
Country Code | Country code where the URL is clicked | |
City | City name from where the URL is clicked | |
Country | Name of the country | |
IP Address | IP address of the device from where the URL is clicked | |
Postal Code | Postal code of the area from where URL is clicked | |
Region | State or province of the city | |
Accuracy Radius | Accuracy radius in meters | |
OS Version | OS version of the device from which the link is clicked | |
OS Name | Name of the OS | |
Device Name | Name of the device |
If you have any questions or concerns, please connect with us using the chat widget on your Exotel Dashboard or Whatsapp us on 08088919888