-
Notifications
You must be signed in to change notification settings - Fork 6
Super Message API mt
momi00 edited this page Nov 14, 2023
·
1 revision
通过API发起多渠道的消息发送服务(目前支持渠道:SMS,VIBER)
- URL:
https://api.nxcloud.com/v1/message/mt
- Method:
POST
- Content-Type:
application/json
- 需要鉴权:
是
鉴权规则请参考地址:API接口调用约定
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
accessKey | String | 是 | fme2na3kdi3ki | 用户身份标识 |
ts | String | 是 | 1655710885431 | 当前请求的时间戳(单位是毫秒),牛信服务端允许用户端请求最大时间误差为60秒 |
bizType | String | 是 | 8 | Super API业务类型,取固定值“8” |
action | String | 是 | mt | Super API业务操作,取固定值“mt” |
sign | String | 是 | 6e9506557d1f289501d333ee2c365826 | API入参参数签名,签名算法 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
appkey | String | 是 | pem28kje | 应用appkey |
phones | Array | 是 | ['86158xxxx1795','86158xxxx1796'] | 消息接收方的号码,需要带国码。如86158xxxx1795(目前最多支持批量发送2000个手机号) |
message | JsonObject | 是 | 参照请求示例 | 消息类型,目前支持以下类型发送: 1. Text 文本消息2. Media 媒体消息3. Choice 按钮选择消息4. Card 卡片消息 |
webhook | String | 否 | https://xxxx.com | 客户回调地址 |
priority | Array | 否 | ['SMS','VIBER'] | 渠道优先级,没有指定的话,默认推送所有开通的渠道。如果指定的话,按照指定的渠道逐个发送,直至发送成功。 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
message | JsonObject | 是 | 消息对象,包含Text,Media,Choice,Card类型,必须选择其中一个 |
- message object参数:
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
textMessage | JsonObject | 否 | 参照Text请求示例 | 文本消息,包含文本内容 |
mediaMessage | JsonObject | 否 |
参照Media请求示例-发送图片 参照Media请求示例-发送视频 参照Media请求示例-发送文件 |
媒体消息 |
choiceMessage | JsonObject | 否 | 参照Choice请求示例 | 按钮选择消息 |
cardMessage | JsonObject | 否 |
参照Card请求示例-标题.图片.按钮 参照Card请求示例-标题.图片 参照Card请求示例-标题.按钮 |
卡片消息 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
text | String | 是 | Greetings from Super API. | 文本消息内容 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
image | JsonObject | 否 | - | 图片对象 |
video | JsonObject | 否 | - | 视频对象 |
file | JsonObject | 否 | - | 文件对象 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
url | String | 是 | - | 图片链接 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
url | String | 是 | - | 视频链接 |
thumbnailUrl | String | 是 | - | 缩略图链接 |
videoSize | String | 是 | - | 视频文件大小(单位:字节,不能超过200MB) |
duration | String | 是 | - | 视频时间(单位:秒,不能超过600s) |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
fileName | String | 是 | - | 文件名称 |
url | String | 是 | - | 文件链接 |
fileType | String | 是 | - | 文件类型 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
textMessage | JsonObject | 是 | - | 文本对象,标题名称 |
choices | JsonObject | 是 | - | Choice对象,包含按钮名称和按钮链接 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
textMessage | JsonObject | 是 | - | 按钮文本对象 |
urlMessage | JsonObject | 是 | - | 按钮链接对象 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
url | String | 是 | - | 按钮链接 |
参数名 | 类型 | 必选 | 示例值 | 说明 |
---|---|---|---|---|
title | String | 是 | - | 卡片标题 |
mediaMessage | JsonObject | 否 | - | 图片对象 |
choices | JsonObject | 否 | - | Choice对象,包含按钮名称和按钮链接 |
body(application/json) 参数:
{
"appkey": "bFzEXXAx",
"phones": [
"8529XXX7630",
"8529XXX7631"
],
"message": {
"textMessage": {
"text": "Greetings from Super API."
}
}
}
body(application/json) 参数:
{
"appkey": "SUhYXXR1",
"phones": [
"7916XXXX730"
],
"message": {
"mediaMessage": {
"image": {
"url": "https://***.jpeg"
}
}
}
}
body(application/json) 参数:
{
"appkey": "SUXXX9R1",
"phones": [
"79162xxx730"
],
"message": {
"mediaMessage": {
"video": {
"url": "https://xxxx.com/Happy%20Cow.mp4",
"thumbnailUrl": "https://xxxx.jpg",
"videoSize": "10",
"duration": "10"
}
}
}
}
body(application/json) 参数:
{
"appkey": "SUXXX9R1",
"phones": [
"7916xxx9730"
],
"message": {
"mediaMessage": {
"file": {
"fileName": "文件名称",
"url": "https://xxxx.pdf",
"fileType": "pdf"
}
}
},
"priority": [
"VIBER",
"SMS"
]
}
body(application/json) 参数:
{
"appkey": "SUXXX9R1",
"phones": [
"791XXX9730"
],
"message": {
"choiceMessage": {
"textMessage": {
"text": "按钮Title"
},
"choices": [
{
"textMessage": {
"text": "按钮名称"
},
"urlMessage": {
"url": "http://xxxx.com"
}
}
]
}
},
"priority": [
"VIBER",
"SMS"
]
}
body(application/json) 参数:
{
"appkey": "SUXXX9R1",
"phones": [
"7916XXX9730"
],
"message": {
"cardMessage": {
"title": "卡片",
"mediaMessage": {
"image": {
"url": "https://XXXX.jpg"
}
},
"choices": [
{
"textMessage": {
"text": "按钮"
},
"urlMessage": {
"url": "https://xxxx.com"
}
}
]
}
},
"priority": [
"VIBER",
"SMS"
]
}
body(application/json) 参数:
{
"appkey": "SUhXXXR1",
"phones": [
"7916XXX9730"
],
"message": {
"cardMessage": {
"title": "卡片",
"mediaMessage": {
"image": {
"url": "https://XXXX.jpg"
}
}
}
},
"priority": [
"VIBER",
"SMS"
]
}
body(application/json) 参数:
{
"appkey": "SUhXXX9R1",
"phones": [
"79162XXX730"
],
"message": {
"cardMessage": {
"title": "卡片",
"choices": [
{
"textMessage": {
"text": "按钮"
},
"urlMessage": {
"url": "https://xxxx.jpg"
}
}
]
}
},
"priority": [
"VIBER",
"SMS"
]
}
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | 结果编码 |
data | JsonObject | 请求结果 |
message | String | 请求结果说明 |
traceId | String | 链路追踪ID |
- data object参数:
参数名 | 类型 | 说明 |
---|---|---|
requestId | String | 消息ID |
channelStatus | JsonObject | 渠道状态 |
- channelStatus object参数:
参数名 | 类型 | 说明 |
---|---|---|
sms | JsonObject | 短信对象 |
viber | JsonObject | Viber对象 |
- sms object参数:
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | SMS响应码 |
message | String | SMS响应信息 |
- viber object参数:
参数名 | 类型 | 说明 |
---|---|---|
code | Integer | VIBER响应码 |
message | String | VIBER响应信息 |
{
"code": 0,
"message": "Success",
"data": {
"requestId": "ec6fceb05c1843bd9e4c3bc81e69ed74",
"channelStatus": {
"sms": {
"code": 0,
"message": "Success"
},
"viber": {
"code": 0,
"message": "Success"
}
}
}
}
{
"code": -1,
"message": "Failure"
}
code | message | 解决办法 |
---|---|---|
0 | Success | |
-1 | Failure | 请联系技术人员排除问题 |
1000~100X | Authentication failed | 详情查看API鉴权部分 |
1100 | Customer does not exist / Status is unavailable | 账号状态异常,联系业务人员处理账号问题 |
1102 | Insufficient balance | 账号余额不足,请联系业务人员充值 |
9000 | Request parameter error | 参数缺失,请检查必须的参数 |
9002 | Phone number error | 非法号码,请检查号码正确性 |
9003 | Customer APP does not exist / Status is unavailable | 应用状态异常,联系业务人员处理云平台应用创建/禁用问题 |
9010 | Rate limit exceeded | 每秒超过请求限制 |
9999 | Unknown error | 请联系技术人员排除问题 |
14001 | channel is not opened | 渠道未开通 |
14002 | Message is not supported | 消息类型不支持 |
14003 | Send error | 发送失败 |
File Type | File Formats | Max File Size |
---|---|---|
Documents | .doc, .docx, .rtf, .dot, .dotx, .odt ,odf, .fodt, .txt, .info | 200MB |
.pdf, .xps, .pdax, .eps | 200MB | |
Spreadsheet | .xls, .xlsx, .ods, .fods, .csv, .xlsm, .xltx | 200MB |
说明:例如.doc格式,fileType填写doc;.xls格式,fileType填写xls
渠道 | Text | Media | Choice | Card |
---|---|---|---|---|
SMS | √ | |||
Viber | √ | √ | √ | √ |
简介
短信
语音
- 上传语音录音文件
- 上传语音录音文件_v1
- 已上传录音文件查询
- 发送语音群呼
- 发送语音通知
- 发送语音验证码
- 语音验证码回填上报
- 语音回执回调
- 语音记录查询
- 上传语音录音文件-旧版本已废弃
- 发送语音群呼‐旧版已废弃
- 发送语音通知‐旧版已废弃
- 发送语音验证码‐旧版已废弃
- 语音回执回调‐旧版已废弃
云呼叫中心(NXLink)
- Web SDK
- Iframe集成
- 手动拨号通话记录查询
- 通过orderId查询
- 手动拨号记录回调
- 坐席信息查询
- 坐席状态查询
- 坐席组查询
- 坐席可用主叫查询
- 坐席组成员查询
- 坐席组更新成员
- 坐席效率统计
- 创建AICC外呼任务
- Webhook-手动外呼
云呼叫中心(AI自动外呼)
- Callbot API概述
- Callbot API鉴权
- Callbot 接口探活
- 创建自动拨号任务
- 批量添加拨打名单
- 创建自动拨号任务并添加拨打名单
- 任务控制(启动/暂停)
- 更新任务
- 获取通话列表
- 获取任务列表
- 获取拨打订单列表
- 停止订单拨打
- 查询订单维度拨打详情
- 通话维度回调
- 订单维度拨打回调
- 任务状态回调
- 批次-导出最新批次数据
- 批次-导入最新批次数据
Flash Call
短链
邮件验证码
DID号码
- DID号码进行短信下行V2
- DID短信结果回调(加签)
- DID短信结果回调(无加签)
- DID号码短信记录查询(新接口,未启用)
- DID号码通话记录查询
- DID呼出并转接到Amazon坐席
- DID呼出前与Connect号码绑定
通用
号码检测
- 发送消息
- webhook
- 标记入站消息已读
- 上传媒体文件
- 获取媒体文件
- 删除媒体文件
- 查询号码信息
- 查询消息模板
- 创建消息模板
- 编辑消息模板
- 删除消息模板
- 上传模板示例文件
- 嵌入式页面登录
- 创建客户应用
- 客户应用的号码列表
- 获取验证码
- 核验验证码
- flows-创建流
- flows-更新流
- flows-根据流ID查询流信息
- flows-根据whatsapp号码查询流列表
- flows-根据流ID查询流预览地址
- flows-查询流JSON
- flows-发布流
- flows-删除流草稿
- flows-废弃已发布的流
- flows-更新流JSON
- flows-上传业务公钥
- ads-根据公共主页ID查询绑定的数据集列表
- ads-根据数据集ID上报CAPI广告数据
Viber
Zalo ZNS
Super Message API
隐私号(旧)
PNS
坐席(旧版)
- NXphone PC 使用说明
- NXphone Android 使用说明
- NXphone Android SDK 接入文档
- 呼叫挂断原因解释
- 话单CDR查询接口
- 话单CDR回调接口说明(V1.0)
- 坐席API调用接口说明(V1.0)
- 根据orderid查询话单CDR接口
- 坐席系统sip链接调用方式(推荐)
- 号码脱敏处理
- 修改话机密码接口
- 查询审批单
- 查询话机
- WebRTC SDK使用说明
AI Agent(对外api)