API Documentation

更新日志、授权和后台管理接口文档

公开接口负责更新日志、授权查询和设备激活;后台接口负责项目、版本、任务、授权以及代理商权限管理。

更新日志

公开返回最新已发布版本和变更内容。

授权查询

返回状态、席位、到期时间和剩余天数。

设备激活

记录设备机器码并控制可激活数量。

后台管理

支持管理员和代理商两类账号,权限按项目范围控制。

GET

获取更新日志

客户端按项目和渠道获取最新已发布版本以及更新内容。

/api/public/changelog?project=adnify&channel=stable
请求参数
  • project: 项目标识
  • channel: stable / beta / hotfix / alpha
响应示例
{
  "project": "adnify",
  "channel": "stable",
  "latestVersion": "1.8.0",
  "publishedAt": "2026-04-22T08:00:00.000Z",
  "entries": [
    { "type": "feature", "title": "新增任务看板" }
  ]
}
GET

查询授权状态

客户端按授权码检查状态、席位、到期时间和剩余天数。

/api/public/license/query?code=ADNIFY-SUB-2026-0001
请求参数
  • code: 授权码
响应示例
{
  "code": "ADNIFY-SUB-2026-0001",
  "status": "active",
  "type": "subscription",
  "seats": 20,
  "activationCount": 3,
  "remainingDays": 356,
  "expiresAt": "2027-04-22T00:00:00.000Z"
}
POST

激活授权

客户端提交授权码和设备信息,服务端记录设备并返回剩余天数。

/api/public/license/activate
请求参数
  • code
  • machineCode
  • deviceName
  • osName
  • ipAddress
响应示例
{
  "success": true,
  "activationId": "act_001",
  "remainingDays": 356,
  "message": "license activated"
}

后台接口

POST/api/auth/login

登录后台并写入会话 Cookie。

GET/api/auth/session

查询当前登录状态。

POST/api/auth/logout

退出登录并清理会话。

POST/api/admin/projects

创建项目,仅超级管理员可用。

PATCH/api/admin/projects/:id

更新项目资料或授权开关,仅超级管理员可用。

POST/api/admin/releases

创建版本,仅超级管理员可用。

POST/api/admin/changelog-entries

创建更新日志条目,仅超级管理员可用。

POST/api/admin/tasks

创建待办任务,仅超级管理员可用。

PATCH/api/admin/tasks/:id

更新任务状态、进度和优先级,仅超级管理员可用。

DELETE/api/admin/tasks/:id

删除任务,仅超级管理员可用。

POST/api/admin/licenses

生成授权码。管理员可操作全部项目,代理商仅可操作被授权项目。

GET/api/admin/licenses/:id

查看授权详情,受项目权限限制。

PATCH/api/admin/licenses/:id

更新授权状态、席位、有效期和备注。

DELETE/api/admin/licenses/:id

删除授权。

DELETE/api/admin/licenses/:id/devices/:activationId

移除设备激活记录。

GET/api/admin/users

获取后台用户列表,仅超级管理员可用。

POST/api/admin/users

创建管理员或代理商账号,仅超级管理员可用。

GET/api/admin/users/:id/permissions

查看指定用户的项目权限。

POST/api/admin/users/:id/permissions

为指定用户分配项目权限。

错误码

400
参数缺失或格式错误
401
未登录或会话已失效
403
当前账号没有操作该资源的权限
404
资源不存在
409
业务冲突,例如席位不足