所有错误的 JSON 结构只有一个键:
{
"error": "provide exactly one of novel or novelId"
}error 为便于诊断的英文说明,不是稳定的机器错误枚举。客户端应先按 HTTP 状态码判断。
批量参数错误可能附带 volumes[0]、chapters[1] 等零基下标。
| HTTP 状态 | 场景 |
|---|---|
| 200 | 获取、覆盖/新增单卷单章、已有小说批量续传成功。 |
| 201 | 创建平台、作者、标签、小说,或批量上传中新建小说成功。 |
| 204 | 删除成功,无响应体。 |
| 400 | 缺字段、未知字段/查询键、类型/范围错误、空标题/正文、NUL、JSON 错误、单批重复序号/数量超限、非法关联、批量模式冲突。 |
| 401 | 缺少/错误/重复的 Authorization。返回 WWW-Authenticate: Bearer。鉴权先于路由检查。 |
| 404 | 路径不存在,或获取/删除/更新的目标不存在;续传小说不存在。 |
| 405 | 路径不支持该请求方法,返回 Allow 头。 |
| 409 | 数据唯一性冲突(含标签重名),或试图删除仍包含章节的卷、仍被小说引用的标签。 |
| 413 | JSON 请求体超过 8 MiB。 |
| 415 | JSON 写入请求没有正确的 Content-Type,包括 multipart 上传。 |
| 500 | 未预期服务或数据库错误,不返回数据库内部细节。 |
| 504 | 数据库请求上下文超时。 |
引用错误与目标不存在的区别:PUT /api/v2/content 引用不存在的小说/卷是 400;
GET /api/v2/content 获取不存在的小说/章节是 404;POST /api/v2/upload 用不存在的 novelId 续传是 404。
发现文档有问题?在 GitHub 提出建议 ↗