- 基础路径:
/api - 认证方式: Bearer Token (JWT)
- 响应格式: JSON
{
"code": 0,
"message": "success",
"data": {}
}| 错误码 | 说明 |
|---|---|
| 0 | 成功 |
| 400 | 参数错误 |
| 401 | 未授权 |
| 403 | 禁止访问 |
| 404 | 资源不存在 |
| 500 | 服务器错误 |
| 1001 | 用户名已存在 |
| 1002 | 邮箱已被使用 |
| 1003 | 用户名或密码错误 |
| 1004 | 原密码错误 |
| 2001 | 已达到端口数量上限 |
| 2002 | 余额不足 |
| 2003 | 无可用端口 |
| 3001 | 设备不在线 |
| 3002 | 发送命令失败 |
POST /api/auth/register
请求体:
{
"username": "string",
"password": "string",
"email": "string"
}响应:
{
"code": 0,
"message": "success",
"data": {
"token": "jwt-token",
"user": {
"id": 1,
"username": "test",
"email": "test@example.com",
"balance": 0,
"role": "user"
}
}
}POST /api/auth/login
请求体:
{
"username": "string",
"password": "string"
}GET /api/ports
Authorization: Bearer <token>
POST /api/ports
Authorization: Bearer <token>
请求体:
{
"protocol": "autojs",
"name": "端口名称",
"days": 30
}POST /api/ports/:id/renew
Authorization: Bearer <token>
请求体:
{
"days": 30
}POST /api/ports/:id/change
Authorization: Bearer <token>
POST /api/ports/:id/regenerate-token
Authorization: Bearer <token>
GET /api/devices
Authorization: Bearer <token>
GET /api/devices/:id/logs?limit=100
Authorization: Bearer <token>
POST /api/devices/:id/exec
Authorization: Bearer <token>
请求体:
{
"code": "toast('Hello!');"
}GET /api/admin/stats
Authorization: Bearer <admin-token>
POST /api/admin/users/:id/recharge
Authorization: Bearer <admin-token>
请求体:
{
"amount": 100,
"description": "管理员充值"
}ws://host:port/
{
"type": "register",
"token": "端口连接密钥",
"device": {
"id": "设备ID",
"name": "设备名称",
"brand": "品牌",
"model": "型号",
"os": "系统版本",
"version": "应用版本"
}
}发送:
{"type": "ping"}响应:
{"type": "pong"}{
"type": "log",
"level": "info",
"message": "日志内容"
}{
"type": "exec",
"code": "要执行的代码"
}