# Notification API
通知api支持外部推送接口,该http接口需要满足以下规范
# Interface
- PUT /Notification @return Response
- POST /Notification @return Response
说明
- put和post都支持,url建议为/Notification,但不是必须的,通知api上可以配置任意url
- 返回值是Response数据类型(见下方定义)json序列化的字串
# Parameter
参数在body里,是以下格式的json字串,从body里取出后需要解析一下使用
{
"id":{guid}, // 通知的guid,可以忽略
"name":{string}, // 标题
"content":{string}, // 正文,纯文本格式
"body":{string}, // 正文,富文本格式
"html":{string}, // 正文,html格式
"contentAbstract": {string}, // 正文摘要。可选,如给出,优先应用于sms渠道(小于2048个字符)。
"channels":[{string}], // 通知推送渠道数组,内置渠道为email和sms,其他渠道需通过ChannelAPI定制
"emails":[{string}], // 收信人邮件列表,对应于email渠道
"phones":[{string}], // 收信人手机列表,对应于sms渠道
"users":[{ // 收信人列表,对应于其他渠道,比如外部ChannelAPI
"id":{guid}, // 无意义的唯一id
"name":{string}, // 实名
"account":{string}, // 账号
"email":{string}, // 邮箱
"phone":{string}, // 手机号
"enterprise": {enterprise} // 用户所属租户信息
}]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
说明
- 目前通知的内容仅存在于content字段,其余几个字段body,html,abstract预留备用。
- users是用户账号数组,可以用于一条消息发送给多个用户,目前基本是一个消息发送给一个用户,但不排除将来扩展。
- user的数据格式,和InfoPlusAPI的Profile结构兼容
- channels是推送方式数组,例如“channels”:["weixin","weibo","qq"] 。
# Data struct
Response<T>
{
"errno": {int}, // 成功返回0,失败返回错误号
"error": {string}, // 如果有错,返回错误信息,如果成功返回空字符串
"entities": [{T}], // 总是空数组
"total": {int} // entities总数量,总是0
}
1
2
3
4
5
6
2
3
4
5
6
一个典型的成功返回的信息为{ “errno”:0, “error”:””, “total”:0, “entities”:[]} json序列化后的字串