客户端到云端通信
客户端与 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 镜像并获取签名请求日志。
- 安全签署 OTA 镜像(固件)和引导加载程序文件。
- 获取安全签名请求的状态。
- 获取使用指定密钥签署的镜像。
- 获取用于签署指定镜像的密钥。
密钥管理
- 创建新密钥。
- 获取密钥的详细信息和摘要。
管理员用户的用户特定数据管理(仅限客户部署)
- 获取或存储自定义用户数据。
独立 Claiming 服务(用于 CLI)
Claiming 服务
- 启动设备的 Claiming 过程。
- 验证设备的 Claiming 请求。
基于云到云的管理员用户管理
云到云
- 在用户电子邮件移动用户池中创建新用户。
- 从电子邮件移动用户池中删除用户。
- 更新用户电子邮件移动用户池中的密码。
超级管理员用户 API
部署详情
- 获取部署详情。
Cognito 应用客户端
- 更新 Cognito 应用客户端的配置。
- 获取所有配置的 Cognito 应用客户端的详细信息。
Cognito 域
- 创建、获取或删除 Cognito 域。
第三方身份提供商
- 配置、更新或获取身份提供商。
消息模板
- 更新或获取消息 模板。
- 获取 SES 验证的电子邮件 ID 列表。
管理面板
- 更新管理面板到最新版本。
- 检查管理面板的可用更新。
客户许可证
- 上传客户许可证。
- 获取上传的客户许可证文件的详细信息。
- 获取当前可用的许可证配额。
节点注册
此功能由 ESP RainMaker 客户用于生成节点的批量凭证。
- 获取 MQTT 主机名/IoT 域名。
- 获取自定义 MQTT 主机名/IoT 域名。
- 为用户生成所需数量的节点 ID。
- 获取生成的节点 ID 请求的状态。
- 获取正在进行证书注册的请求。
- 获取节点证书注册请求的预签名 URL 或状态。
- 触发节点证书的注册。
超级管理员用户管理
- 更新 RainMaker 部署的超级管理员。
发件人电子邮件更新
- 更新 RainMaker 部署的发件人电子 邮件。
通用自定义数据
- 添加或更新通用自定义数据。
- 获取通用自定义数据。
部署设置
- 获取服务的存储配置详情。
- 备份、恢复或配置服务配置。
IoT 设备速率限制配置
- 配置或获取 IoT 设备指标限制。
API 请求速率限制配置
- 更新 API 请求速率限制。
- 获取配置的 API 请求速率限制。
自定义移动平台消息模板
- 创建自定义移动平台消息模板。
- 获取或更新配置的自定义移动消息模板。
移动平台应用
- 创建或更新新的平台应用。
- 获取配置的平台应用列表。
- 删除配置的平台应用。
发布消息
- 向用户设备发布消息。
外部 API 透传服务
ESP RainMaker 客户可使用外部 API 透传服务调用外部 API。
- 获取、保存或更新外部 API 配置。
管理员用户管理
- 在用户电子邮件移动用户池中创建或更新用户。
- 获取用户的详细信息。
- 删除用户账号。
节点证书 CA
- 上传节点证书 CA。
- 获取所有节点证书 CA。
Webhook 集成
- 为指定的集成添加新的 webhook。
- 更新现有的 webhook 配置。
- 获取 webhook 信息。
- 删除为集成配置的 webhook。
- 获取 webhook 事件映射信息。
- 添加 webhook 事件映射。
- 删除 webhook 事件映射。
统 计服务
- 获取统计信息。
- 初始化统计服务的数据。
邮件发送失败日志
- 获取邮件发送失败的日志。
API 网关阶段
- 升级 RainMaker API。
条款政策
- 更新使用条款和隐私政策 HTML 文件。
- 获取使用条款和隐私政策文件内容及 URL。
- 删除使用条款和隐私政策文件。
CloudWatch 日志 IAM 用户
- 添加或删除具有 CloudWatch 日志读取权限的 IAM 用户。
日志级别
- 更改日志级别。
RainMaker 部署功能
- 添加或获取 RainMaker 功能。
API 统计
- 获取 API 统计信息。
MQTT 统计
- 获取 MQTT 统计信息。
节点参数操作
允许管理员控制设备的状态。
- 更新或获取节点参数。