Skip to content

review — 评价审核(5 action) ​

前缀:/api/v1/admin/review/ 权限:REVIEW_READ(list/detail)· REVIEW_APPROVE(approve/reject/handle-appeal)— 仅 super + operator,it 一律 403 代码:src/app/admin/interface/api/review_mgmt.py + application/usecase/review_mgmt.py ⚠️ 与 content 的 moderate-comment(CONTENT_REVIEW — 评论区)区分:本模块审的是评价(rating + body)

3.7.1 list —— 评价列表 ​

GET /api/v1/admin/review/list · 权限 REVIEW_READ

Query 参数:

字段类型必填默认说明
pageint⬜1≥1
page_sizeint⬜201~100
statusstring⬜—pending | approved | rejected | appealed
ratingint⬜—1~5 星级过滤
keywordstring⬜—内容子串

响应 data:{ total, page, page_size, items: [ReviewSummary] }

ReviewSummary 字段:

字段类型说明
id / user_id / target_content_idstring评价 / 用户 / 目标内容
ratingint1~5
bodystring评价正文
statusstring状态
reject_reasonstring | null拒绝原因
created_at / updated_atstringISO

错误码:40201001 page/page_size < 1 / rating 越界。

3.7.2 detail —— 评价详情 ​

GET /api/v1/admin/review/detail/{review_id} · 权限 REVIEW_READ

响应 data:

字段类型说明
reviewobject全字段(+ appeal_requested_at / appeal_decided_at)
target_contentobject{content_id, title, type, status}
repliesarray回复/追评

错误码:40201501(404)评价不存在(与 LOGIN_FAILED 同码 Enum 别名 — 本路径下语义为 NOT_FOUND)。

3.7.3 approve —— 通过 ​

POST /api/v1/admin/review/approve · 权限 REVIEW_APPROVE

请求 body:{ review_id✅, note? }

响应 data:{ "success": true }

错误码:40201501(404)· 40201502 已审核(重复操作)。

3.7.4 reject —— 拒绝 ​

POST /api/v1/admin/review/reject · 权限 REVIEW_APPROVE

请求 body:{ review_id✅, reason✅, note? }

响应 data:{ "success": true }

错误码:40201501(404)· 40201502 已审核 · 40201001 reason 缺失。

3.7.5 handle-appeal —— 处理申诉 ​

POST /api/v1/admin/review/handle-appeal · 权限 REVIEW_APPROVE

请求 body:

字段类型必填说明
review_idstring✅目标评价(已被 reject 且用户申诉)
decisionstring✅申诉裁定(如 uphold 维持 / overturn 推翻)
reasonstring✅裁定说明

响应 data:{ "success": true }

错误码:

code场景
40201501评价不存在(404)
40201503申诉已处理(重复)
40201504申诉处理超时(需重新提交)
40201001decision 非法

本域错误码汇总:40201501-40201504(§6.7)。通用失败见 admin 总览。