Send SMS Template


本接口可通过指定短信运营商发送特定模板短信,模板短信中存在自定义参数可供调用者进行替换,部分短信运营商可在正文前增加短信签名,请求发送成功时,短信发送请求将被放入消息队列,用户可收到一个 eventId,后续可通过 eventId 查看实际发送结果。

请求格式

POST https://{apigw-address}/notification-center-service/v2.0/template/sms

请求参数 (URI)

名称

位置(Path/Query)

必需/可选

数据类型

描述

orgId

Query

必需

String

组织 ID。如何获取 orgId 信息>>

请求参数 (Body)

名称

必需/可选

数据类型

描述

variables

必需

Map<String, String>

短信模板所需使用的替换变量,模板所对应需要使用的变量可到 EnOS 管理控制台中选择 消息推送管理 > 消息 > 模板 页面查看。

templateCode

必需

String

模板标识符(Identifier)

phones

必需

List<Phone>

收件人的手机区号及电话号码

tunnelCode

可选,若不指定 tunnelIdentifier 则为必需。

String

短信通道代码,所有可用的通道代码均列在 常量 > SMS Tunnel Code 中。tunnelCode 和 tunnelIdentifier 至少指定其中一个,若二者同时指定且发生冲突,将以 tunnelIdentifier 为准。

tunnelIdentifier

可选,若不指定 tunnelCode 则为必需。

String

短信通道标识符,用于指定同一运营商的不同短信通道(仅限于指定 OU 和 system OU 中定义的通道)。若不指定,默认为 null。tunnelCode 和 tunnelIdentifier 至少指定其中一个,若二者同时指定且发生冲突,将以 tunnelIdentifier 为准。

signatureCode

可选

String

发送短信时需要在短信前增加短信签名的显示时使用,需要到EnOS管理控制台中选择 消息推送管理 > 短信 > 签名设置 页面查看,不同ou及供应商存在不同配置,只有在该ou能申请签名,并得到管理员审批后才能使用

priority

可选

Enum

消息发送优先度,默认P2,不需特殊配置

响应参数

名称

必需/可选

数据类型

描述

eventId

必需

String

发送邮件或短信请求时返回供用户查询结果的eventId

常量


名称

描述

SMS Tunnel code

  • 系统:NOTICE_GW

  • OU:HDB_SCS, TWILIO, NEXMO, GENERIC

短信通道代码。系统通道代码在所有 OU 中都可用。OU 通道代码是在该 OU 中已设置的通道的运营商代码。

Email sender code

NOTICE_GW

邮件发送商代码,系统默认,在所有 OU 中可用。

错误码

代码

错误信息

描述

32404

signature is not exist

短信签名不存在

32404

sms template is not exist

短信模板不存在

32400

variable not in template

模板内自定义变量错误

32400

tunnel code is not existed

短信渠道参数错误

32435

operation not allowed, the signature is not approved

短信签名未通过审批

示例

请求示例

url: https://{apigw-address}/notification-center-service/v2.0/template/sms?orgId=yourOrgId
method: POST
requestBody:
{
  "variables": {
    "aaa": "xxx"
  },
  "signatureCode": "xx",
  "phones": [
    {
      "area": "87",
      "number": "23"
    }
  ],
  "templateCode": "awyfl",
  "priority": "P2",
  "tunnelCode": ""
}

返回示例

{"code":0, "msg":"OK", "submsg":"", "requestId": null, "data":{"eventId": "evt16062008765401}}

异常示例

{"code":32403, "msg":"the quota is run out, test quota is limited", "submsg":"Permission denied: tunnel.quota.run.out", "data": null, "requestId": null}