> ## Documentation Index
> Fetch the complete documentation index at: https://www.kitemc.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 后端 API

<Warning>
  VerifyMC 已停止维护。本页保留供已有用户查阅历史配置与使用方法，不表示当前仍在维护或已验证新版本兼容性。
</Warning>

<span id="后端-api" />

<h2 id="api-参考文档">
  API 参考文档
</h2>

所有 API 端点使用 JSON 格式的请求和响应体。管理员端点需要在请求头中携带 `Authorization: Bearer <token>`。

<h2 id="配置">
  配置
</h2>

<h3 id="获取配置">
  获取配置
</h3>

* **接口**：`GET /api/config`
* **用途**：获取前端主题、公告、验证方式等公共配置信息。
* **权限**：所有用户

<h2 id="图形验证码">
  图形验证码
</h2>

<h3 id="生成验证码">
  生成验证码
</h3>

* **接口**：`GET /api/captcha/generate`
* **用途**：生成新的图形验证码图片。
* **权限**：所有用户

<h2 id="邮箱验证">
  邮箱验证
</h2>

<h3 id="发送验证码">
  发送验证码
</h3>

* **接口**：`POST /api/verify/send`
* **用途**：向指定邮箱发送注册验证码。
* **权限**：所有用户
* **请求头**：`Content-Type: application/json`
* **请求参数**：
  | 字段 | 类型 | 必填 | 说明 | 示例 |
  | - | - | - | - | - |
  | email | string | 是 | 用户邮箱 | [user@example.com](mailto:user@example.com) |
  | language | string | 否 | 语言（zh/en） | zh |
* **注意事项**：
  * 邮箱每日/每分钟发送次数有限制，防止滥用。
  * 邮箱格式需符合 RFC 标准。

<h2 id="问卷">
  问卷
</h2>

<h3 id="获取问卷配置">
  获取问卷配置
</h3>

* **接口**：`GET /api/questionnaire/config`
* **用途**：获取问卷题目和配置。
* **权限**：所有用户

<h3 id="提交问卷">
  提交问卷
</h3>

* **接口**：`POST /api/questionnaire/submit`
* **用途**：提交问卷答案进行评分。
* **权限**：所有用户

<h2 id="注册">
  注册
</h2>

<h3 id="用户注册">
  用户注册
</h3>

* **接口**：`POST /api/register`
* **用途**：用户提交验证码和信息进行注册。
* **权限**：所有用户
* **请求头**：`Content-Type: application/json`
* **请求参数**：
  | 字段 | 类型 | 必填 | 说明 |
  | - | - | - | - |
  | email | string | 是 | 用户邮箱 |
  | code | string | 是 | 验证码 |
  | username | string | 是 | 玩家名 |
  | language | string | 否 | 语言 |
* **注意事项**：
  * 验证码有效期一般为 5 分钟。
  * 用户名、邮箱唯一。
  * 注册后可能需要管理员审核。

<h3 id="查询审核状态">
  查询审核状态
</h3>

* **接口**：`GET /api/review/status`
* **用途**：查询注册的审核状态。
* **权限**：所有用户

<h2 id="用户">
  用户
</h2>

<h3 id="获取用户状态">
  获取用户状态
</h3>

* **接口**：`GET /api/user/status`
* **用途**：查询用户当前状态。
* **权限**：所有用户

<h2 id="认证">
  认证
</h2>

<h3 id="用户登录">
  用户登录
</h3>

* **接口**：`POST /api/login`
* **用途**：普通用户登录。
* **权限**：所有用户

<h3 id="管理员登录">
  管理员登录
</h3>

* **接口**：`POST /api/admin/login`
* **用途**：管理员登录后台管理面板。
* **权限**：所有用户
* **请求头**：`Content-Type: application/json`
* **请求参数**：
  | 字段 | 类型 | 必填 | 说明 |
  | - | - | - | - |
  | username | string | 是 | 玩家用户名 |
  | password | string | 是 | 玩家密码 |
  | language | string | 否 | 语言 |
* **注意事项**：
  * 管理员登录基于已注册玩家凭据验证，仅服务器 OP 可访问管理面板。
  * 后续所有管理员接口需在请求头加 `Authorization: Bearer <token>`。

<h2 id="管理员端点">
  管理员端点
</h2>

<h3 id="验证管理员令牌">
  验证管理员令牌
</h3>

* **接口**：`GET /api/admin/verify`
* **用途**：验证管理员令牌是否有效。
* **权限**：管理员（需带 token）

<h3 id="获取用户列表">
  获取用户列表
</h3>

* **接口**：`GET /api/admin/users`
* **用途**：获取用户列表，支持分页、搜索和状态筛选。
* **权限**：管理员（需带 token）
* **查询参数**：`page`、`size`、`search`、`status`

<h3 id="通过用户">
  通过用户
</h3>

* **接口**：`POST /api/admin/user/approve`
* **用途**：通过待审核用户的注册申请。
* **权限**：管理员（需带 token）

<h3 id="拒绝用户">
  拒绝用户
</h3>

* **接口**：`POST /api/admin/user/reject`
* **用途**：拒绝待审核用户的注册申请。
* **权限**：管理员（需带 token）

<h3 id="删除用户">
  删除用户
</h3>

* **接口**：`POST /api/admin/user/delete`
* **用途**：从系统中删除用户。
* **权限**：管理员（需带 token）

<h3 id="封禁用户">
  封禁用户
</h3>

* **接口**：`POST /api/admin/user/ban`
* **用途**：封禁用户（将状态改为 banned）。
* **权限**：管理员（需带 token）

<h3 id="解封用户">
  解封用户
</h3>

* **接口**：`POST /api/admin/user/unban`
* **用途**：解封用户（将状态从 banned 改为 approved）。
* **权限**：管理员（需带 token）

<h3 id="修改用户密码">
  修改用户密码
</h3>

* **接口**：`POST /api/admin/user/password`
* **用途**：修改用户密码。
* **权限**：管理员（需带 token）

<h3 id="获取审核日志">
  获取审核日志
</h3>

* **接口**：`GET /api/admin/audits`
* **用途**：获取审核日志记录。
* **权限**：管理员（需带 token）

<h3 id="同步-authme-数据">
  同步 AuthMe 数据
</h3>

* **接口**：`POST /api/admin/sync`
* **用途**：触发 AuthMe 数据同步。
* **权限**：管理员（需带 token）

<h2 id="discord-集成">
  Discord 集成
</h2>

<h3 id="discord-授权">
  Discord 授权
</h3>

* **接口**：`GET /api/discord/auth`
* **用途**：发起 Discord OAuth2 授权流程。
* **权限**：所有用户

<h3 id="discord-回调">
  Discord 回调
</h3>

* **接口**：`GET /api/discord/callback`
* **用途**：处理 Discord OAuth2 回调。
* **权限**：所有用户

<h3 id="discord-状态">
  Discord 状态
</h3>

* **接口**：`GET /api/discord/status`
* **用途**：检查用户的 Discord 绑定状态。
* **权限**：所有用户

<h3 id="discord-解绑">
  Discord 解绑
</h3>

* **接口**：`POST /api/discord/unlink`
* **用途**：解绑用户的 Discord 账户。
* **权限**：所有用户

<h2 id="版本">
  版本
</h2>

<h3 id="获取版本">
  获取版本
</h3>

* **接口**：`GET /api/version`
* **用途**：获取插件版本并检查更新。
* **权限**：所有用户

***

> 更多接口和参数详见源码或前端 `src/services/api.ts`。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.