文档
API 概览与调用约定
RustMinerSystem 后台接口的调用地址、鉴权请求头、响应结构、开放状态与安全约定。
API 概览与调用约定
本分类根据新版 RustMinerSystem 前端的实际请求代码整理,覆盖矿池代理管理、观察者、群控、WebSocket 和内置 PoolNode 管理接口。
当前开放状态
对外 API 的设计方式是“无需登录、每次请求携带自定义鉴权请求头”。自定义请求头功能尚未完成,因此:
- 外部 API 客户端不需要调用后台登录接口,也不需要获取后台登录 TOKEN。
- 文档只把登录接口作为新版前端内部调用记录,不把登录流程作为 API 前置条件。
- 自定义请求头完成后,需要补充密钥生成、权限范围、吊销、过期、来源限制和调用频率。
- 接口字段和响应结构应以正在运行的后端版本为准。
调用地址
接口基址是 RustMinerSystem 后台访问地址,并且必须包含安全访问路径。
https://主机:Web端口/{安全路径}/api/...
例如后台地址为 https://miner.example.com/rms-admin/,端口列表接口为:
https://miner.example.com/rms-admin/api/ports
未配置安全路径时,接口位于网站根路径。反向代理必须原样转发安全路径和自定义 API 请求头。
API 鉴权请求头
API 调用无需登录。自定义请求头完成后,每个请求直接发送:
<自定义请求头名称>: <API 凭据>
Content-Type: application/json
正式请求头名称和凭据格式将在后端功能完成后补充。第三方程序不应使用管理后台的 Authorization: Bearer <登录 TOKEN> 代替 API 凭据。
观察者只读接口使用独立请求头:
X-OB-TOKEN: <观察者 TOKEN>
注意:新版后台前端拦截器中还会写入名为 ContentType 的非标准字段。这是后台内部实现,第三方调用应使用标准的 Content-Type。
响应和错误
矿池代理接口通常直接在 HTTP 响应体中返回对象、数组、字符串或数字。部分 PoolNode 管理接口会返回包装结构:
{
"status": 0,
"error": null,
"data": {}
}
前端重点处理以下状态:
| 状态 | 含义 |
|---|---|
200 |
请求成功,仍需检查业务数据或 PoolNode 的 status。 |
401 / 403 |
API 凭据缺失、无效或权限不足;最终含义待自定义请求头功能确认。 |
423 |
当前后台内部操作需要二步验证;外部 API 行为待确认。 |
PoolNode status: 4 |
PoolNode 项目尚未激活。 |
错误响应可能使用 message、error 或业务 status 表示原因。调用端不应只根据 HTTP 200 判断所有业务操作都已成功。
接口范围
新版前端共定义 146 个接口标识,其中 140 个有实际引用。文档按以下模块整理:
- API 请求头、权限和后台内部会话接口边界。
- 仪表盘、版本和系统配置。
- 代理端口与抽水钱包。
- 矿工、钱包统计、图表和日志。
- 安全、证书、防火墙和运行日志。
- 观察者只读查询。
- 群控转发。
- PoolNode 项目、网站、收益和子账号管理。
- WebSocket 实时数据与错误处理。
安全建议
- API 只应通过 HTTPS 暴露。
- 不要把 API 凭据、观察者 TOKEN 或群控 API 写入 URL、日志和截图。
- 修改端口、钱包、白名单、证书和安全路径前先备份配置。
- 自动化程序应设置连接、读取和总请求超时,并限制重试频率。
- 自定义 API 请求头完成前,不建议把这些内部管理接口直接开放到公网。
