SAAS Viber API send - nxtele/http-api-document GitHub Wiki

发送消息

通过API发起Viber号码消息发送服务

  • URL:https://api.nxcloud.com/saas/viber/send
  • Method:POST
  • Content-Type:application/json
  • 需要鉴权:

鉴权机制

鉴权规则请参考地址:API接口调用约定

请求参数

header参数:

参数名 类型 必选 示例值 说明
accessKey String fme2na3kdi3ki 用户身份标识
ts String 1655710885431 当前请求的时间戳(单位是毫秒),牛信服务端允许用户端请求最大时间误差为60秒
bizType String 7 Viber业务类型,取固定值“7”
action String mt Viber业务操作,取固定值“mt”
sign String 6e9506557d1f289501d333ee2c361111 API入参参数签名,公共约定

body参数:

参数名 类型 必选 示例值 说明
tenant_id Long 1 租户ID
appkey String pem28kje 应用appkey
to String 86158xxxx1795 消息接收方的WhatsApp号码,需要带国码。如86158xxxx1795
type String 1 支持以下消息类型的发送:
文本
图片
文本+图片
文本+按钮
文本+图片+按钮
filename String - 仅消息包含图片时为必须
fileUrl String - 媒体文件 url,仅消息包含图片时为必须
content String - 仅消息包含文本时为必须
viber_video_button_info Object - 仅消息包含按钮时为必须

消息类型

  • 1: 文本
  • 3: 图片
  • 10: 文本+图片
  • 12: 文本+按钮
  • 11: 文本+图片+按钮

viber_video_button_info参数:

参数名 类型 必选 示例值 说明
button_text String - 按钮文本,type=11/12必填
button_link String - 按钮跳转地址,type=11/12必填

请求示例

文本

{
    "tenant_id": 123,
    "appkey": "Exxx",
    "to": "86137xxxx",
    "type": 1,
    "content": "普通文本"
}

图片

{
    "tenant_id": 123,
    "appkey": "Exxx",
    "to": "86137xxxx",
    "type": 3,
    "filename": "7PSg8pGsIuWfHJZ.jpg",
    "fileUrl": "https://nxtele-hk.oss-cn-hongkong.aliyuncs.com/6.5M.jpeg?Expires=1706089776&OSSAccessKeyId=TMP.3KhCyAyQVWhZt6N1prT69KjWMhXRDFQ5Ad5bj4BNkAx8TC3RuvXofqDdgunV9gQtDJk91X8n7kuypNJRBTJPhtqTcViaa5&Signature=%2FHvdJziTm2eaeqvTW7Y5VVxA5ZA%3D"
}

文本+图片

{
    "tenant_id": 123,
    "appkey": "Exxx",
    "to": "86137xxxx",
    "type": 10,
    "filename": "7PSg8pGsIuWfHJZ.jpg",
    "fileUrl": "https://s2.loli.net/2024/01/24/7PSg8pGsIuWfHJZ.jpg",
    "content": "文本+图片的文本"
}

文本+按钮

{
    "tenant_id": 123,
    "appkey": "Exxx",
    "to": "86137xxxx",
    "type": 12,
    "content": "文本+按钮的文本",
    "viber_video_button_info": {
        "button_text": "按钮文本",
        "button_link": "https://www.baidu.com"
    }
}

文本+图片+按钮

{
    "tenant_id": 123,
    "appkey": "Exxx",
    "to": "86137xxxx",
    "type": 11,
    "filename": "7PSg8pGsIuWfHJZ.jpg",
    "fileUrl": "https://s2.loli.net/2024/01/24/7PSg8pGsIuWfHJZ.jpg",
    "content": "文本+图片+按钮的文本",
    "viber_video_button_info": {
        "button_text": "按钮文本 1",
        "button_link": "https://www.baidu.com"
    }
}

响应参数

参数名 类型 说明
code Integer 结果编码
data JsonObject 请求结果
message String 请求结果说明
traceId String 链路追踪ID
  • data object参数:
参数名 类型 说明
message_id String 消息ID

响应示例

成功示例

{
	"code": 0,
	"message": "",
	"data": {
		"message_id": "gBGGhSNXV1dfAglVQ0RRuE3YWhc"
	},
	"traceId": "56bf81643292cd6a89ecde64ae00db13"
}

失败示例

{
    "code": -1,
    "message": "Failure",
    "traceId": "77f8709b545f4fee93fd7f098be9df04"
}

响应码说明

Code Message Solution
0 Success -
-1 Failure 请联系技术人员排除问题
1000~100X Authentication failed 详情查看API鉴权部分
1100 Customer does not exist / Status is unavailable 账号状态异常,联系业务人员处理账号问题
1102 Insufficient balance 账号余额不足,请联系业务人员充值
9000 Request parameter error 参数缺失,请检查必须的参数
9001 System business error 系统业务错误,请联系技术人员排除问题
9002 Phone number error 非法号码,请检查号码正确性
9003 Customer APP does not exist / Status is unavailable 应用状态异常,联系业务人员处理云平台应用创建/禁用问题
9004 Customer APP does not have quotation 应用报价缺失,联系业务人员处理应用报价问题
9005 Missing customer APP routes 应用路由缺失,请联系技术人员排查路由
9011 Customer APP quotation currency error 报价币种错误,请联系技术人员排查
9999 Unknown error 请联系技术人员排除问题
⚠️ **GitHub.com Fallback** ⚠️