
# 接收上行短信
#### 功能介绍
该接口用于用户接收短信平台主动发送的上行短信通知，接收该通知的上行短信接收地址在[创建短信应用](https://support.huaweicloud.com/usermanual-msgsms/sms_03_0001.html)时配置。
#### 前提条件
- 已在[创建短信应用](https://support.huaweicloud.com/usermanual-msgsms/sms_03_0001.html)时填写上行短信接收地址。
- 用户服务器若有IP白名单配置，请联系运营经理获取短信平台IP地址并加入白名单。
 
#### 调试
您可以参考[接收上行短信代码样例](https://support.huaweicloud.com/devg-msgsms/sms_04_0018.html#ZH-CN_TOPIC_0000001606982993__section078033019102)，进行快速上手调试。
#### 接口类型
表1接口类型说明 
|   请求方法    |     POST     |
|---|---|
| **访问URI** | 用户接收上行短信的地址。 |
| **通信协议**  | HTTPS/HTTP   |
   
![](https://support.huaweicloud.com/api-msgsms/public_sys-resources/note_3.0-zh-cn.png)
回调接口使用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中的一种或多种。
#### 请求参数
表2请求Headers参数 
| 参数名称          | 是否必选 | 参数类型   | 默认值 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|:---|
| 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=***经过签名算法计算得到的值*** 具体计算方式请参考[添加签名信息到请求头](https://support.huaweicloud.com/devg-apisign/api-sign-algorithm-001.html)。 AKSK说明请参考[认证鉴权](https://support.huaweicloud.com/api-msgsms/sms_05_0046.html#section0)，验证方法请参考[推送AKSK验证](https://support.huaweicloud.com/api-msgsms/sms_05_0064.html)。 |
   
表3请求Body参数说明 
| 参数名称       | 是否必选 | 参数类型          | 默认值 | 说明                                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|:---|:---|:---|
| smsMsgId   | 是    | String(1-50)  | 无   | 上行短信的唯一标识。                                                                                                                                                                                                                                                                                                                                               |
| from       | 是    | String(1-21)  | 无   | 上行短信发送方的号码。                                                                                                                                                                                                                                                                                                                                              |
| to         | 是    | String(1-21)  | 无   | 上行短信接收方的号码。                                                                                                                                                                                                                                                                                                                                              |
| body       | 是    | String(1-160) | 无   | 上行短信发送的内容。                                                                                                                                                                                                                                                                                                                                               |
| createTime | 否    | String(1-20)  | 无   | 上行短信创建时间，即短信平台接收到用户发送的上行短信的时间（采用标准UTC格式，例如：2018-02-12T15:30:20Z。不同编程语言中的时间格式转换方式不同，部分语言可参考[表 不同编程语言的时间格式](https://support.huaweicloud.com/api-msgsms/sms_05_0001.html#ZH-CN_TOPIC_0000001430073285__table153940417281)）。 在控制台创建应用时，配置需要"接收上行短信回复时间"后（缓存原因，配置后需等待5分钟左右生效），平台才会在Body中附带此字段，该字段只对http协议的短信生效。 |
   
#### 响应参数
用户可以返回任意响应消息给短信平台，短信平台不会对响应消息处理。
当鉴权失败，返回错误码401 Unauthorized。
#### 请求示例
```
POST /smsRecive HTTP/1.1
Host: 205.145.111.168:9330
Content-Type: application/x-www-form-urlencoded
Authorization: SDK-HMAC-SHA256 Access=exampleAk,SignedHeaders=connection;content-length;content-type;host;x-sdk-date,Signature=765a365f3851fd1c96011a82b893266fb7b3e79b3002526c43199c97e61bb88b
Connection: close
Pooltype: approxy
Ompsid: 56514cc1880e40638f16c7c674265658
TerminalIP: 205.141.112.17
TrcModule: AP
UserTrace: application
TraceHandle: DMZ_818405
from=%2B86155****5172&to=201804131431201234&body=********&smsMsgId=9692b5be-c427-4525-8e73-cf4a6ac5b3f7
```
#### 响应示例
```
HTTP/1.1 200 OK
Date: Fri, 13 Apr 2018 06:31:48 GMT
Content-Type: application/JSON; charset=UTF-8
Content-Length: 43
{"returnCode":0,"returnCodeDesc":"Success"}
```
