接收状态报告
功能介绍
该接口用于用户接收短信平台主动发送的短信状态报告,状态报告中的回调地址在“发送短信”与“发送分批短信”接口中的“statusCallback”字段中设置。
前提条件
- 用户对短信平台推送的状态报告免鉴权。
- 用户服务器若有IP白名单配置,请联系运营经理获取短信平台IP地址并加入白名单。
注意事项
短信发送成功后,平台收到状态报告,会实时推送状态报告给用户,最迟不超过72小时。

- 若“statusCallback”字段已设置,则使用该字段的取值作为短信状态报告的回调地址。
- 若“statusCallback”字段未设置,则用户无法接收短信平台主动发送的状态报告。
调试
您可以参考接收状态报告代码样例,进行快速上手调试。
接口类型
请求方法 | POST |
|---|---|
访问URI | “发送短信”、“发送分批短信”接口中指定的用户回调地址。 |
通信协议 | HTTPS/HTTP |

回调接口使用HTTPS协议时,服务端需支持TLS1.2,加密套件需支持TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384中的一种或多种。
请求参数
参数名称 | 是否必选 | 参数类型 | 默认值 | 说明 |
|---|---|---|---|---|
Content-Type | 是 | String | 无 | 固定填application/x-www-form-urlencoded。 |
X-Sdk-Date | 否 | String | 无 | 签名时间戳,开启推送AKSK鉴权后携带。 格式为:yyyyMMdd'T'HHmmss'Z' |
Authorization | 否 | String | 无 | 用于消息鉴权的哈希码,开启推送AKSK鉴权后携带。 格式为:SDK-HMAC-SHA256 Access=app_key的值, SignedHeaders=参与签名的头域(小写), Signature=经过签名算法计算得到的值 具体计算方式请参考添加签名信息到请求头。 |
参数名称 | 是否必选 | 参数类型 | 默认值 | 说明 |
|---|---|---|---|---|
smsMsgId | 是 | String(1-50) | 无 | 发送短信成功时返回的短信唯一标识。 |
total | 否 | String(1-2) | 无 | 长短信拆分后的短信条数。 当短信未拆分时该参数取值为1。 |
sequence | 否 | String(1-2) | 无 | 长短信拆分后的短信序号,当total参数取值大于1时,该参数才有效。 当短信未拆分时该参数取值为1。 |
status | 是 | String(1-7) | 无 | 短信状态报告枚举值,常见取值请参考表 Status常见取值,处理方法请参考状态报告错误码。 |
statusDesc | 否 | String(1-500) | 无 | 错误码描述,常见取值请参考表 Status常见取值。 |
source | 否 | String(枚举) | 无 | 短信状态报告来源:
|
updateTime | 否 | String(1-20) | 无 | 短信资源的更新时间,通常为短信平台接收短信状态报告的时间,为UTC时间,格式为:yyyy-MM-dd'T'HH:mm:ss'Z',该时间会通过urlencode转义为%3a。 当短信平台未收到短信中心上报的状态报告时,会自行构造状态报告,该状态报告中不携带“updateTime”参数。 |
extend | 否 | String(1-128) | 无 | 扩展字段,由用户在发送短信的请求中携带。若用户发送短信时未携带extend参数,则状态报告中也不会携带extend参数。 |
to | 否 | String(1-21) | 无 | 本条状态报告对应的短信的接收方号码,仅当状态报告中携带了extend参数时才会同时携带该参数。 |
取值 | 含义 |
|---|---|
DELIVRD | 用户已成功收到短信。 |
EXPIRED | 短信已超时。 |
DELETED | 短信已删除。 |
UNDELIV | 短信递送失败。 |
ACCEPTD | 短信已接收。 |
UNKNOWN | 短信状态未知。 |
REJECTD | 短信被拒绝。 |
E200018 | 国内短信发送方通道校验失败。 |
E200019 | 国内短信发送方匹配通道失败。 |
E200020 | 国内短信签名通道校验失败。 |
E200021 | 国内短信签名匹配通道失败。 |
E200022 | 国内短信接收方通道校验失败。 |
E200023 | 国内短信接收方匹配通道失败。 |
E200025 | 国际短信接收方通道校验失败。 |
E200026 | 国际短信接收方匹配通道失败。 |
E200027 | 匹配网关失败。 |
E200032 | 短信需要模板。 |
E200034 | 短信重传超时。 |
E200035 | 短信协议字段替换失败。 |
E200036 | 南向速率管控配置为0。 |
E200038 | 接收长短信超时。 |
MILIMIT | 号码达到分钟下发限制。 |
LIMIT | 号码达到下发限制。 |
BEYONDN | |
KEYWORD | 短信关键字拦截。 |
BLACK | 号码黑名单。 |
MBBLACK | |
DJ:0255 | 运营商拦截,一般是因为短信内容不允许发送。 |
1 | 此类错误码多为手机号码问题,如手机为空号,关机,停机等。 |
24 | |
MK:xxxx | |
MN:xxxx | |
LT:0001 | |
MA:xxxx | SMSC未返回响应消息。 |
MB:xxxx | SMSC返回错误响应消息。 |
MC:xxxx | 未从SMSC处接收到状态报告。 |
CA:xxxx | SCP未返回响应消息。 |
CB:xxxx | SCP返回错误响应消息。 |
DA:xxxx | DSMP未返回响应消息。 |
DB:xxxx | DSMP返回错误响应消息。 |
SA:xxxx | SP未返回响应消息。 |
SB:xxxx | SP返回错误响应消息。 |
IA:xxxx | 下一级ISMG未返回响应消息。 |
IB:xxxx | 下一级ISMG返回错误响应消息。 |
IC:xxxx | 没有从下一级ISMG处接收到状态报告。 |
SC:0001 | 人工审核拦截 |
SC:0002 | 人工审核告警拦截 |
SC:0003 | 黑名单拦截 |
SC:0004 | 红名单拦截 |
SC:0005 | 投诉黑名单 |
SC:0006 | 禁用关键字拦截 |
SC:0007 | 特征关键字拦截 |
SC:0008 | 管控关键字拦截 |
SC:0009 | 缺失必备关键字 |
SC:0010 | 短信超频拦截 |
SC:0011 | 时段管控拦截 |
SC:0012 | 人工审核超时处理 |
SC:0013 | 签名黑名单拦截 |
SC:0014 | 免审核模板匹配 |
SC:0015 | 拦截模板匹配 |
SC:0016 | 退订黑名单拦截 |
SC:0017 | 非报备模板拦截 |
SC:0018 | 非报备签名拦截 |
响应参数
用户可以返回任意响应消息给短信平台,短信平台不会对响应消息处理。
当鉴权失败,返回错误码401 Unauthorized。
请求示例
POST /report HTTP/1.1 Host: 205.145.111.168:9330 Content-Type: application/x-www-form-urlencoded X-Sdk-Date: 20241212T070653Z Authorization: SDK-HMAC-SHA256 Access=exampleAk,SignedHeaders=connection;content-length;content-type;host;x-sdk-date,Signature=765a365f3851fd1c96011a82b893266fb7b3e79b3002526c43199c97e61bb88b Connection: close Pooltype: approxy Ompsid: 7f540777fe4b40dfb3c21d10f48781e3 TerminalIP: ****** 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
响应示例
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"} 
