Status Report Receiving API
Function
This API is used to receive SMS status reports from the Message & SMS platform. You can set the SMS status report callback address by specifying the statusCallback field in the SMS Sending API and Batch SMS Sending API.

- If the statusCallback field is set, the system uses its value as the SMS status report callback address.
- If the statusCallback field is not set, a user cannot receive status reports sent by the Message & SMS platform.
Instructions
Type
Method |
POST |
---|---|
URI |
Callback address specified in the SMS Sending API and Batch SMS Sending API |
Communications Protocol |
HTTPS |

When the callback API uses the HTTPS protocol, the server must support TLS 1.2, and one or more of the following cipher suites must be supported: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, and TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384.
Request Parameters
Parameter |
Mandatory |
Type |
Default Value |
Description |
---|---|---|---|---|
Content-Type |
Yes |
String |
None |
The fixed value is application/x-www-form-urlencoded. |
Parameter |
Mandatory |
Type |
Default Value |
Description |
---|---|---|---|---|
smsMsgId |
Yes |
String(1-50) |
None |
Unique SMS identifier returned after an SMS is successfully sent. |
total |
No |
String(1-2) |
None |
Number of SMSs that are split from a long SMS. If the SMS is not split, set this parameter to 1. |
sequence |
No |
String(1-2) |
None |
Sequence number after a long SMS is split. This parameter is valid only when the value of total is greater than 1. If the SMS is not split, set this parameter to 1. |
status |
Yes |
String(1-7) |
None |
Enumerated values of an SMS status report. For details about the values, see Table 4. For details about how to rectify the faults, see SMS Status Error Codes. |
source |
No |
String (enumeration) |
None |
Source of the SMS status report.
|
updateTime |
No |
String(1-20) |
None |
SMS resource update time, which is generally the time when the Message & SMS platform receives the SMS status report. The value is in the format of yyyy-MM-dd'T'HH:mm:ss'Z'. The time is converted to %3a using urlencode. When the Message & SMS platform does not receive the SMS status report from the SMSC, the platform constructs a status report that does not contain the updateTime parameter. |
orgCode |
No |
String(1-7) |
None |
Status codes of southbound NEs are transparently transmitted. This parameter is contained only in European SMS status reports. When the status code is not returned, the parameter is not used. |
extend |
No |
String(1-128) |
None |
Extended field in the request sent by a user. If the SMS sent by a user does not carry the extend parameter, the status report does not contain the extend parameter. |
to |
No |
String(1-21) |
None |
Recipient number of the SMS corresponding to the status report. This parameter is carried only when the status report contains the extend parameter. |
Value |
Description |
---|---|
DELIVRD |
The user has received the SMS. |
EXPIRED |
The SMS times out. |
DELETED |
The SMS has been deleted. |
UNDELIV |
The SMS fails to be delivered. |
ACCEPTD |
The SMS has been received. |
UNKNOWN |
The SMS status is unknown. |
REJECTD |
The SMS has been rejected. |
E200027 |
Failed to match the SMSGW. |
E200032 |
An SMS template is required. |
E200034 |
The SMS retransmission times out. |
E200035 |
Failed to replace the SMS protocol field. |
E200036 |
The southbound rate control configuration is 0. |
E200038 |
Long SMS receiving times out. |
MILIMIT |
Reached the maximum number of SMSs sent to a recipient number per minute. |
LIMIT |
Reached the maximum number of SMSs sent to a recipient number. |
BEYONDN |
|
KEYWORD |
The SMS keyword was intercepted. |
BLACK |
The number is blocked. |
MBBLACK |
|
DJ:0255 |
The carrier intercepted the SMS because the content is not allowed. |
1 |
The phone number is suspended or does not exist, or the phone is powered off. |
24 |
|
MK:xxxx |
|
MN:xxxx |
|
LT:0001 |
|
MA:xxxx |
The SMSC does not return a response. |
MB:xxxx |
The SMSC returns an error response. |
MC:xxxx |
No status report is received from the SMSC. |
CA:xxxx |
The SCP does not return a response. |
CB:xxxx |
The SCP returns an error response. |
DA:xxxx |
The DSMP does not return a response. |
DB:xxxx |
The DSMP returns an error response. |
SA:xxxx |
The SP does not return a response. |
SB:xxxx |
The SP returns an error response. |
IA:xxxx |
The ISMG does not return a response. |
IB:xxxx |
The ISMG returns an error response. |
IC:xxxx |
No status report is received from the ISMG. |
SC:0001 |
The SMS is intercepted due to manual review. |
SC:0002 |
The SMS is intercepted due to the manual review alarm. |
SC:0003 |
The SMS is intercepted due to the blacklist. |
SC:0004 |
The SMS is intercepted due to the redlist. |
SC:0005 |
The SMS is intercepted due to the complaint blacklist. |
SC:0006 |
The SMS is intercepted due to forbidden keywords. |
SC:0007 |
The SMS is intercepted due to feature keywords. |
SC:0008 |
The SMS is intercepted due to control keywords. |
SC:0009 |
The SMS is intercepted due to lack of mandatory keywords. |
SC:0010 |
The SMS is intercepted due to the very frequent SMS function. |
SC:0011 |
The SMS is intercepted due to period control. |
SC:0012 |
Manual review times out. |
SC:0013 |
The SMS is intercepted due to the signature blacklist. |
SC:0014 |
The SMS matches with the approval-free template. |
SC:0015 |
The SMS matches with the interception template. |
SC:0016 |
The SMS is intercepted due to the unsubscription blacklist. |
SC:0017 |
The SMS is intercepted due to the non-registration template. |
SC:0018 |
The SMS is intercepted due to the non-registration signature. |
Response Parameters
A user can send any response to the Message & SMS platform, where the response is not processed.
API Example
- Request example
POST /report HTTP/1.1 Host: 205.145.111.168:9330 Content-Type: application/x-www-form-urlencoded Connection: close Pooltype: approxy Ompsid: 7f540777fe4b40dfb3c21d10f48781e3 TerminalIP: 205.141.112.18 TrcModule: AP UserTrace: application TraceHandle: DMZ_818405 sequence=1&total=1&orgCode=000&updateTime=2018-04-13T06%3A31%3A46Z&source=2&smsMsgId=b9d9b4fe-ad0e-4a2a-a2c7-445505b674ac_6&status=DELIVRD
- Response example
HTTP/1.1 200 OK Date: Fri, 13 Apr 2018 06:31:45 GMT Content-Type: application/JSON; charset=UTF-8 Content-Length: 43 {"returnCode":0,"returnCodeDesc":"Success"}
Demos
Download the following demos to quickly develop applications.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.