自定义消息API
自定义API
消息开放接口,白标对接说明
适用场景
对于MultiMarket不支持的发送通道(邮件、短信),白标可以自己对接发送通道,并提供对外接口,与MultiMarket进行对接,MultiMarket平台将会按照此文档规范调用此接口;
MultiMarket提供一套接口对接API,白标需要按此规范提供接口,api规范详见下文。
然后在白标管理后台页面(短信账号、邮箱账号页面),新增时选择“自定义”,并配置接口url、公钥(鉴权用)。
公私钥规则
非对称加密算法RSA算法,密钥长度1024。
示例:
API规范
我方的调用方式为http post
参数使用json格式。
需要对参数进行鉴权
以下具体说明短信、邮件的参数,以及鉴权方式。
邮件参数
参数说明
pushType
String
非必填
信息推送渠道类型
pushId
String
非必填
信息推送账号ID
toUser
String
必填
邮件接收人
trace
String
必填
全局链路唯一标志
sign
String
必填
签名
title
String
必填
标题
content
String
必填
内容
timestamp
long
必填
请求发送时间,时间戳,毫秒
短信参数
参数说明
pushType
String
非必填
信息推送渠道类型
pushId
String
非必填
信息推送账号ID
toUser
String
必填
短信接收人
trace
String
必填
全局链路唯一标志
sign
String
必填
签名
content
String
必填
内容
timestamp
long
必填
请求发送时间,时间戳,毫秒
鉴权
对请求参数sign解密,得到结果记为signContent: 1)从请求参数中获取sign字段的值,记为data; 2)使用自己的私钥,记为privateKey; 3) 对data、privateKey进行base64解码:Base64.decodeBase64(data)、Base64.decodeBase64(privateKey); 4)使用上步base64解码后的两个数据,进行RSA解密,得到字节数组,转为String,记为signContent;
根据请求参数,获取加密原文,记为signContentSource 1)邮件的加密原文:signContentSource=toUser@timestamp@trace; 1)短信的加密原文:signContentSource=toUser@timestamp@trace;
将加密原文(signContentSource)、解密结果(signContent)进行比较:相等则鉴权通过。
成功响应数据
Last updated