REST API 概述
最新更新:2022-12-30
基本约束
- API 被设计为符合 HTTP、 REST 规范。例如:查询请求使用 Get 方法,提交请求使用 POST 方法。如果一个请求不是相应的 HTTP 方法,将返回错误。
- 如无特殊说明,调用参数值应转码为:UTF-8, URL 编码。
API 资源列表
名称 | Base URL | 描述 |
---|---|---|
创建推送 API | https://push.api.engagelab.cc/v4/push | 推送消息 API |
统计 API | https://push.api.engagelab.cc/v4 | 获取统计数据 |
定时任务 API | https://push.api.engagelab.cc/v4/schedules | 管理定时推送任务 |
鉴权方式
Engagelab REST API 采用 HTTP 基本认证 的验证方式。 基本做法为,HTTP Header(头)里加 Authorization:
Authorization: Basic base64_auth_string
Authorization: Basic base64_auth_string
此代码块在浮窗中显示
其中 base64_auth_String 的生成算法为:base64(appKey:masterSecret)
即,对 appKey 加上冒号,加上 masterSecret 拼装起来的字符串,再做 base64 转换。
进入【应用设置】-【应用信息】页面获取 appKey 和 masterSecret 参数。
鉴权举例
你的 appKey 是 "c96f42e0d2e662e45d035ab1", masterSecret 是 "df4d59e84eac2f9d53b36f12",则调用 Push API v4 时,使用 curl 命令调用如下:
curl --insecure -X POST -v https://push.api.engagelab.cc/v4/push -H "Content-Type: application/json"
-u "c96f42e0d2e662e45d035ab1:df4d59e84eac2f9d53b36f12"
-d '{
"from": "push",
"to": "all",
"body": {
"platform": "all",
"notification": {
"android": {
"alert": "Hi, Push!",
"title": "Send to Android",
"builder_id": 1,
"extras": {
"newsid": 321
}
},
"ios": {
"alert": "Hi, MTPush!",
"sound": "default",
"badge": "+1",
"extras": {
"newsid": 321
}
}
},
"message": {
"msg_content": "Hi,MTPush",
"content_type": "text",
"title": "msg",
"extras": {
"key": "value"
}
},
"options": {
"time_to_live": 60,
"apns_production": false
}
},
"request_id": "12345678",
"custom_args": "business info"
}'
curl --insecure -X POST -v https://push.api.engagelab.cc/v4/push -H "Content-Type: application/json"
-u "c96f42e0d2e662e45d035ab1:df4d59e84eac2f9d53b36f12"
-d '{
"from": "push",
"to": "all",
"body": {
"platform": "all",
"notification": {
"android": {
"alert": "Hi, Push!",
"title": "Send to Android",
"builder_id": 1,
"extras": {
"newsid": 321
}
},
"ios": {
"alert": "Hi, MTPush!",
"sound": "default",
"badge": "+1",
"extras": {
"newsid": 321
}
}
},
"message": {
"msg_content": "Hi,MTPush",
"content_type": "text",
"title": "msg",
"extras": {
"key": "value"
}
},
"options": {
"time_to_live": 60,
"apns_production": false
}
},
"request_id": "12345678",
"custom_args": "business info"
}'
此代码块在浮窗中显示
HTTP 请求发出的请求是:
> POST /v4/push HTTP/1.1
> Authorization: Basic Yzk2ZjQyZTBkMmU2NjJlNDVkMDM1YWIxOmRmNGQ1OWU4NGVhYzJmOWQ1M2IzNmYxMg==
> POST /v4/push HTTP/1.1
> Authorization: Basic Yzk2ZjQyZTBkMmU2NjJlNDVkMDM1YWIxOmRmNGQ1OWU4NGVhYzJmOWQ1M2IzNmYxMg==
此代码块在浮窗中显示