Moorline 登录免费试用

API

门户上能做的大部分操作都有对应的 HTTP 接口,可以用 API 令牌在脚本里调用。

认证

  1. 在「团队」→「API 令牌」创建令牌,选角色(只读 / 成员 / 管理员)和有效期,只显示一次,复制保存。
  2. 请求时带上请求头:
Authorization: Bearer mlk_xxxxxxxx

令牌属于一个组织,权限等同它的角色;用它做的写操作会记进操作日志,操作者显示为 token:<令牌名>。令牌不能用于个人设置、两步验证等和「人」有关的接口;订单支付只有所有者的登录会话能做。

约定

常用接口

方法 路径 说明 最低角色
GET /api/overview 概览:实例、机器、线路数量和问题 只读
GET /api/machines 机器列表(含当前 CPU / 内存 / 磁盘) 只读
POST /api/machines 添加机器,返回接入命令 管理员
GET /api/machines/{id}/metrics?range=1h 机器监控曲线(1h / 6h / 24h / 7d) 只读
GET /api/lines 线路列表 只读
POST /api/lines 添加线路 管理员
POST /api/lines/{id}/check 触发一次出口检测 成员
GET /api/lines/{id}/history 检测历史 只读
GET /api/templates 可用模板 只读
GET /api/instances 实例列表 只读
POST /api/instances 安装实例 管理员
POST /api/instances/{id}/run 启动或停止:{"run": "running"} / {"run": "stopped"} 成员
POST /api/instances/{id}/update 更新到最新模板版本 管理员
GET /api/instances/{id}/logs?tail=200 实例日志 成员
POST /api/instances/{id}/backups 立即备份 管理员
GET /api/backups 备份和还原记录 只读
GET /api/alerts?state=open 进行中的告警 只读

示例

添加一条线路并检测:

curl -sS -X POST https://panel.example.com/api/lines \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d '{"name": "美国住宅", "kind": "socks5", "host": "proxy.example.com", "port": 1080, "user": "u", "password": "p"}'

curl -sS -X POST https://panel.example.com/api/lines/<线路id>/check \
  -H "Authorization: Bearer $TOKEN"

安装一个实例:

curl -sS -X POST https://panel.example.com/api/instances \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d '{"template_id": "<模板id>", "machine_id": "<机器id>", "line_id": "<线路id>", "name": "运营一号"}'

查询进行中的告警:

curl -sS "https://panel.example.com/api/alerts?state=open" -H "Authorization: Bearer $TOKEN"

接口会随版本增加字段,调用方请忽略不认识的字段。