Kami 接口调用说明 单入口管理端

这份说明用于快速接入当前部署版本。客户端授权接口保持独立;管理端接口统一走 POST /api/v1/admin,通过 action 分发。

1. 基础信息

2. 管理端 action 列表

分类 action 说明
认证auth.login账号密码登录
认证auth.logout退出登录
认证auth.me获取当前登录用户
认证auth.change-password修改密码
软件products.list/create/update软件管理
软件products.delete删除软件(仅无卡密记录可删)
代理agents.list/create/update代理管理
范围scopes.list/assign代理软件范围
卡密licenses.list/create/disable卡密列表/生成/禁用
卡密licenses.delete删除单条卡密
卡密licenses.delete-batch批量删除卡密
升级releases.get/upsert每软件独立升级策略
通知notices.list/create/update-status/delete通知管理
日志logs.list审计日志列表
统计stats.get仪表盘统计

3. 调用示例(curl)

3.1 登录

curl -X POST "__BASE_URL__/api/v1/admin" \
  -H "Content-Type: application/json" \
  -d '{"action":"auth.login","username":"admin","password":"你的密码"}'

3.2 获取会话用户(登录后)

curl -X POST "__BASE_URL__/api/v1/admin" \
  -H "Content-Type: application/json" \
  -d '{"action":"auth.me"}'

3.3 创建软件(超管)

curl -X POST "__BASE_URL__/api/v1/admin" \
  -H "Content-Type: application/json" \
  -d '{"action":"products.create","code":"DEMO_APP","name":"Demo App","enabled":true}'

3.4 生成卡密(超管/代理受权限限制)

curl -X POST "__BASE_URL__/api/v1/admin" \
  -H "Content-Type: application/json" \
  -d '{"action":"licenses.create","productId":"软件ID","planCode":"trial","cardType":"test","prefix":"T","quantity":1}'

4. 客户端调用示例

激活:

POST /api/v1/activate
{
  "licenseKey": "T-XXXXX-XXXXX-XXXXX",
  "productCode": "DEMO_APP",
  "deviceFingerprint": "device-001",
  "clientVersion": "1.0.0"
}

校验:

POST /api/v1/verify
{
  "token": "登录后返回的token",
  "deviceFingerprint": "device-001"
}

启动拉取升级策略和通知:

curl -X POST "__BASE_URL__/api/v1/runtime" \
  -H "Content-Type: application/json" \
  -d '{"action":"bootstrap","productCode":"DEMO_APP","clientVersion":"1.2.10","deviceFingerprint":"device-001"}'

通知已读回执:

curl -X POST "__BASE_URL__/api/v1/runtime" \
  -H "Content-Type: application/json" \
  -d '{"action":"notice.ack","productCode":"DEMO_APP","noticeId":"通知ID","deviceFingerprint":"device-001"}'

5. 排错建议