TaskNeo API 是一个返回 JSON 的 REST API。你可以用它以程序化方式管理班级、任务、提交和通知。
基础 URL
https://api.yourdomain.com
你部署环境的基础 URL 由管理员提供。请将 api.yourdomain.com 替换为你实例配置的主机名。
除 /auth/register、/auth/login 和 /schools 外,所有接口都需要 JWT Bearer 令牌。先通过 POST /auth/login 获取令牌,然后在每次请求中携带:
Authorization: Bearer <token>
令牌有效期为 7 天。完整说明请参见 认证。
错误格式
所有错误响应都使用一致的 JSON 结构:
{
"error": "人类可读的错误描述",
"code": "机器可读代码"
}
常见错误代码:
| 代码 | 含义 |
|---|
UNAUTHORIZED | 缺少令牌或令牌无效 |
FORBIDDEN | 令牌有效,但权限不足 |
NOT_FOUND | 资源不存在 |
CONFLICT | 数据重复或冲突 |
VALIDATION_ERROR | 请求体或参数验证失败 |
时间格式
请求和响应中的所有时间戳都采用 ISO 8601 UTC 格式,例如:
在客户端应使用用户资料中的 timezone 字段(IANA 标识,例如 America/New_York)将时间转换为用户本地时区。
注册和密码重置邮件会被限制为 每个地址 24 小时最多 5 封。超出限制会返回 429 Too Many Requests。
快速开始
登录并获取令牌
curl -X POST https://api.yourdomain.com/auth/login \
-H "Content-Type: application/json" \
-d '{"email": "you@example.com", "password": "yourpassword"}'
响应:{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"user": {
"id": "a1b2c3d4-...",
"email": "you@example.com",
"nickname": "Alex",
"timezone": "America/New_York",
"isActive": true,
"createdAt": "2025-01-01T00:00:00.000Z"
}
}
在后续请求中使用令牌
curl https://api.yourdomain.com/users/me \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."