CatQuest 数据 API 参考
CatQuest 界面读取 giip 问题列表 API(giipIssues),并将每个问题绘制为猫咪卡片。本文档说明如何 通过 API 直接查询 该数据来源,以及界面的状态→猫咪映射。
- 主机:
https://giipfaw.azurewebsites.net - 认证: 请求头
x-api-key携带登录用户的 AK(或项目范围的 SK)。查询范围限定为该密钥的csn(项目)。 - 结果代码(RstVal) 约定请参阅 API 结果代码。
查询问题列表 — giipIssues GET
这是 CatQuest 在页面加载时调用的读取 API。
curl "https://giipfaw.azurewebsites.net/api/giipIssues?csn=47" \
-H "x-api-key: <YOUR_AK>"
请求参数
| 名称 | 位置 | 必填 | 说明 |
|---|---|---|---|
csn | query | ✅ | 要查询的项目编号。CatQuest 会自动填入当前所选项目的 csn。 |
响应示例
{
"issues": [
{
"isn": 735,
"title": "创建 admin/catquest 用户指南",
"status": "READY",
"regdate": "2026-07-24T08:54:00Z",
"summary": "启用指南按钮",
"last_comment_date": "2026-07-24T09:00:00Z",
"blocked_by_isn": null,
"blocked_by_title": null
}
]
}
响应字段(CatQuest 使用的字段)
| 字段 | 类型 | 界面用途 |
|---|---|---|
isn | number | 问题编号(#isn 徽章)。分配哪只猫咪也由 isn 决定。 |
title | string | 卡片顶部气泡标题 |
status | string | 决定猫咪行为(动画)— 参见下方映射 |
regdate | string | 注册时间(🐣) |
summary | string | 卡片底部摘要(存在时) |
last_comment_date | string | null | 最后评论时间(💬),为空时显示“无评论” |
blocked_by_isn | number | null | 等待(blocked-by)徽章 — 阻塞此问题的占用问题编号 |
blocked_by_title | string | null | 等待徽章的提示(占用问题标题) |
状态 → 猫咪行为 映射
CatQuest 前端按以下规则将 status 值映射到动画(这是显示规则,而非服务器值)。
| status | 猫咪状态 | 图片文件模式 |
|---|---|---|
| PENDING | playing | /images/catquest/<cat>_playing.png |
| READY | ready | /images/catquest/<cat>_ready.png |
| IN_PROGRESS | hunting | /images/catquest/<cat>_hunting.png |
| REVIEW | delivering | /images/catquest/<cat>_delivering.png |
| DONE | playing | /images/catquest/<cat>_playing.png |
<cat>通过isn % 8从 8 种(mochi、sherlock、nimbus、pixel、cocoa、midnight、luna、leo)中确定性地分配一种。
相关 API
- 创建 / 更新 / 变更问题状态: 若要以编程方式创建或流转问题,请参阅 问题与任务 API。
- 查询 / 添加评论: 问题详情界面使用
giipIssueCommentsAPI。
故障排除
| 现象 | 原因 | 解决 |
|---|---|---|
401 Unauthorized | 缺少或过期的 x-api-key | 使用有效的 AK 重新调用,或重新登录。 |
空的 issues: [] | 该 csn 没有问题 | 检查 csn 值或注册一个问题。 |
未带 csn 调用 | 缺少必填参数 | 务必包含 ?csn=<编号>。 |
版本: 1.0
最后更新: 2026-07-24
源文件: giipv3/public/help/api-catquest.zh-CN.md