客户端到云端通信
客户端与 ESP RainMaker 云之间的所有通信均通过 HTTP REST API 进行。大多数 API 要求用户先登录。REST API 的详细信息可参考 Swagger 文档。下文介绍了 ESP RainMaker 不同用户角色(终端用户、管理员用户和超级管理员用户)可用的 API。
什么是客户端?
客户端是指手机应用、CLI、管理面板、Alexa/GVA 等不同实体。
- 手机应用和 Alexa/GVA 与终端用户相关。
- 管理面板和 CLI 与管理员/超级管理员用户相关。
注意,以下列出的所有管理员用户 API 同样适用于超级管理员用户,但超级管理员专属的 API 仅限超级管理员使用。
适用于所有用户的 API
提示
以下 API 适用于终端用户和管理员/超级管理员用户。
点击下拉菜单查看特定用户类型的使用方式。
用户管理
用户管理 API 在手机应用中适用于终端用户、管理员和超级管理员,在 CLI 和管理面板中适用于管理员和超级管理员。
- 使用电子邮件地址、密码和一次性验证码注册。
- 使用电子邮件地址和密码或第三方 ID 提供商(如谷歌、苹果或微信)登录。
- 注销会话。
- 删除用户账号。
- 获取当前用户账号的详细信息。
- 更新用户账号的姓名和电话号码。
- 更改或重置密码。
终端用户 API
节点管理
- 用户节点关联(将节点关联到用户)。
- 对节点参数执行操作(更新或获取节点状态)。
OTA 服务
- 允许终端用户上传新的固件镜像。
- 获取用户关联节点的 OTA 最近更新。
- 推送 OTA 更新到节点。
- 获取用户关联节点的 OTA 更新的最新状态。
设备分组
- 创建、更新、共享或获取设备组。
- 在用户间共享节点组。
时间序列数据/简单时间序列数据
- 获取时间序列数据。
- 获取简单时间序列数据。
自定义用户数据
- 获取或存储自定义用户数据。
用户事件过滤器
- 管理与用户集成相关的事件过滤信息。
移动平台端点(推送通知)
- 创建、获取或删除移动平台推送通知配置。
自动化触发器和操作
- 添加、更新、获取 或删除自动化触发器和操作。
指令响应通信
- 获取或添加指令响应请求。
RainMaker 中的 OAuth(适用于 OAuth-only 部署)(Beta)
- 启动 OAuth2 流程 (Beta)。
- 获取授权码。
- 获取用户的授权令牌。
外部 API 透传服务
- 获取外部 API 配置。
- 从外部 API 获取数据。
- 向外部 API 端点发送 POST 请求。
用户公开资料
- 获取用户的公开资料。
- 添加或更新公开资料。
IoT 端点(API 用于获取 IoT 端点)
- 获取 IoT 端点(MQTT 主机 URL)。
管理员用户 API
OTA 服务
- 上传新的固件镜像。
- 获取有关 OTA 镜像的详细信息。
- 删除用户的 OTA 镜像。
- 归档或取消归档 OTA 镜像。
- 获取预签名 URL 以将固件镜像或包上传到 S3。
- 确认固件镜像或包的上传状态。
- 创建新的 OTA 任务。
- 获取有关 OTA 任务的详细信息。
- 取消或归档 OTA 任务。
- 查看 OTA 任务状态。
- 查看 OTA 任务摘要。
- 获取预签名 URL 以上传固件包。
- 上传包含固件镜像的新包。
设备分组
- 创建、更新、获取或删除管理员设备组。
时间序列数据/简单时间序列数据
- 获取时间序列数据。
- 获取简单时间序列数据。
Webhook 集成
- 获取用户节点 webhook 集成信息。
- 添加、更新或删除 webhook 用户节点集成。
事件过滤器
- 获取用户节点 webhook 集成信息。
- 添加、更新或 删除 webhook 用户节点集成。
角色和策略管理器
- 添加、更新、获取或删除策略。
- 添加、更新、获取或删除角色(基于角色的分配和访问控制)。
用户角色映射
- 为用户分配或删除角色。
- 添加、更新、获取或删除角色(基于角色的分配和访问控制)。
指令响应通信
- 获取或添加指令响应请求。
API 信息
- 获取可用的 API 端点和方法。
标签管理
- 获取各种资源的标签数据。
- 查询资源上的标签名称和值。
- 附加或移除资源的标签。
安全签名
安全签名 API 使用签名密钥安全签署 OTA 镜像并获取签名请求日志。