所有班级接口都需要有效的
Authorization: Bearer <token> 头。GET /classes
返回认证用户所属的所有班级,包括个人班级和所有共享班级。 Response — 200 OK 班级摘要对象数组。班级 UUID。
班级名称。
可选描述。
十六进制颜色值,例如
#6366f1。用户个人班级时为
true。班级 Owner 的 UUID。
关联学校 UUID,或
null。邀请码。仅 OWNER 和 ADMIN 可见。
你在该班级中的角色:
OWNER、ADMIN 或 MEMBER。成员总数。
ISO 8601 UTC 时间戳。
POST /classes
创建一个新的共享班级。认证用户会自动成为 OWNER,并生成邀请码。 Request bodyClass name.
Optional description.
Hex color for the class badge (e.g.
#f59e0b).Associate the class with a specific school. When set, only users from that school can join via invite code.
GET /classes 的条目相同)。
GET /classes/:classId
获取单个班级的详情。你必须是该班级成员。 Path parameters班级 UUID。
| 状态 | 何时发生 |
|---|---|
403 Forbidden | 你不是该班级成员。 |
404 Not Found | 班级不存在。 |
PATCH /classes/:classId
更新班级名称、描述或颜色。需要 OWNER 或 ADMIN 角色。 Path parameters班级 UUID。
新的班级名称。
新的描述。传入
null 可清空。新的十六进制颜色值。
| 状态 | 何时发生 |
|---|---|
403 Forbidden | 权限不足(必须是 OWNER 或 ADMIN)。 |
DELETE /classes/:classId
删除班级及其所有任务。只有 OWNER 可以删除班级。个人班级不能删除。 Path parameters班级 UUID。
| 状态 | 何时发生 |
|---|---|
403 Forbidden | 权限不足,或正在尝试删除个人班级。 |
POST /classes/join
使用邀请码加入班级。 Request body班级 Owner 或 Admin 分享的邀请码。
| 状态 | 何时发生 |
|---|---|
403 Forbidden | 该班级限制为特定学校加入,而你的学校不匹配。 |
404 Not Found | Invite code is invalid or has been refreshed. |
409 Conflict | You are already a member of this class. |
GET /classes/:classId/members
列出班级中的所有成员。你必须是该班级成员。 Path parameters班级 UUID。
成员用户 UUID。
显示名称,或
null。用于 Gravatar 查找的用户邮箱 SHA-256 十六进制哈希。
成员角色:
OWNER、ADMIN 或 MEMBER。用户加入时的 ISO 8601 UTC 时间戳。
| 状态 | 何时发生 |
|---|---|
403 Forbidden | 你不是该班级成员。 |
PATCH /classes/:classId/members/:userId
更改成员角色。只有 OWNER 可以将成员提升为 ADMIN,或将 ADMIN 降为 MEMBER。 Path parameters班级 UUID。
要更新的成员 UUID。
新角色:
ADMIN 或 MEMBER。不能直接设为 OWNER - 请改用所有权转移接口。| 状态 | 何时发生 |
|---|---|
403 Forbidden | 权限不足。只有 OWNER 可以更改角色。 |
DELETE /classes/:classId/members/:userId
从班级中移除成员。规则如下:- OWNER 和 ADMIN 可以移除 MEMBER。
- OWNER 可以移除 ADMIN。
- 不能移除 OWNER(请先转移所有权)。
- 任何成员都可以用此接口移除自己(离开班级)。
班级 UUID。
要移除的成员 UUID。
| 状态 | 何时发生 |
|---|---|
403 Forbidden | 权限不足,或尝试移除 OWNER。 |
POST /classes/:classId/transfer
将班级所有权转移给其他成员。只有当前 OWNER 可以执行此操作。新 Owner 会被提升为 OWNER,原 Owner 会被降为 ADMIN。该操作是原子的。 Path parameters班级 UUID。
要转移所有权给的成员 UUID。该成员必须已经是班级成员。
| 状态 | 何时发生 |
|---|---|
400 Bad Request | 目标用户不是该班级成员。 |
403 Forbidden | 你不是 OWNER。 |
POST /classes/:classId/invite-code
为班级生成新的邀请码。旧邀请码会立即失效。需要 OWNER 或 ADMIN 角色。 Path parameters班级 UUID。
新的邀请码。
| 状态 | 何时发生 |
|---|---|
403 Forbidden | 权限不足(必须是 OWNER 或 ADMIN)。 |