quiz
正常
NEW
知识题库查询服务,内置 80,908 道四选一题,覆盖中文成语释义、歇后语、唐诗/宋词填空与 19 类英文通用知识。支持分类/语言/难度筛选、分页列表、关键词搜索、随机出题、答题校验、批量查询。无第三方框架依赖,PDO 直连 MySQL。
协议: HTTP
格式: JSON
版本: v1.0.0日调用量: 1268次
接口文档
产品说明
费用计算
错误码说明
更新日志
API 分支接口
健康检查
健康检查
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET
http://www.shujuyu.cn/v1/api/quiz/ping
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
您的API密钥,可在个人中心获取
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.version
string
-
data.time
string
-
data.types
array
-
data.difficulties
array
-
data.langs
array
-
data.page_size_max
int
-
data.random_max
int
-
data.batch_max
int
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"pong","code":0,"data":{"time":"2026-10-31 19:55:32","langs":["zh","en"],"types":["单选题","多选题","判断题"],"version":"1.0","batch_max":20,"random_max":20,"difficulties":["easy","medium","hard"],"page_size_max":20}}
数据统计
数据统计
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET
http://www.shujuyu.cn/v1/api/quiz/stats
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
您的API密钥,可在个人中心获取
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.total
int
-
data.categories
int
-
data.updated_at
string
-
data.by_lang
object
-
data.by_type
object
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"total":80908,"by_lang":{"en":35357,"zh":45551},"by_type":{"单选题":80908},"categories":23,"updated_at":"2026-11-01"}}
分类列表
返回全部分类及题量(按固定顺序),客户端使用 slug 定位分类。
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET
http://www.shujuyu.cn/v1/api/quiz/categories
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
您的API密钥,可在个人中心获取
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.total
int
-
data.list
array
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"list":[{"lang":"zh","name":"成语释义","slug":"chengyu","total":26926,"name_en":"","description":"根据成语选择正确释义"}],"total":23}}
字段列表
返回可返回字段及中文标签、是否属于 brief 模式。
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET
http://www.shujuyu.cn/v1/api/quiz/fields
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
您的API密钥,可在个人中心获取
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.list
array
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"list":[{"brief":true,"field":"id","label":"ID"},{"brief":true,"field":"category","label":"分类标识"},{"brief":true,"field":"category_name","label":"分类名称"},{"brief":true,"field":"type","label":"题型"},{"brief":true,"field":"question","label":"题目内容"},{"brief":false,"field":"options","label":"选项"},{"brief":false,"field":"answer","label":"答案","requires":"with_answer"},{"brief":false,"field":"analysis","label":"解析","requires":"with_answer"},{"brief":false,"field":"difficulty","label":"难度"},{"brief":false,"field":"lang","label":"语言"}]}}
分页列表
分页列表
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET
http://www.shujuyu.cn/v1/api/quiz/list
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
您的API密钥,可在个人中心获取
page
int
否
页码
page_size
int
否
每页条数,最大 20
category
string
否
分类标识
type
string
否
题型
difficulty
string
否
难度
lang
string
否
语言
brief
bool
否
简洁模式
with_answer
bool
否
是否返回答案与解析
fields
string
否
返回字段
after_id
int
否
游标分页:只返回 id > after_id 的记录;传此参数时忽略 page
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.page
int
-
data.page_size
int
-
data.total
int
-
data.pages
int
-
data.next_after_id
int
-
data.list
array
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"list":[{"id":35358,"lang":"zh","type":"单选题","options":{"A":"指相互勾结,相互偏袒,结党营私。","B":"辄即;咎过失,罪责。动不动就受到指摘或责难。","C":"眼睛象蜂,声音象豺。形容坏人的面貌声音。","D":"替老虎加上翅膀。比喻帮助坏人,增加恶人的势力。"},"category":"chengyu","question":"成语「阿党比周」的正确释义是?","difficulty":"medium","category_name":"成语释义"}],"page":1,"pages":13454,"total":26926,"page_size":2,"next_after_id":35359}}
题目详情
题目详情
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET
http://www.shujuyu.cn/v1/api/quiz/detail
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
您的API密钥,可在个人中心获取
id
int
是
题目 ID
brief
bool
否
简洁模式
with_answer
bool
否
是否返回答案与解析,默认 false
fields
string
否
返回字段
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.id
int
-
data.category
string
-
data.category_name
string
-
data.type
string
-
data.question
string
-
data.options
object
-
data.difficulty
string
-
data.lang
string
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"id":1,"lang":"en","type":"单选题","options":{"A":"Snake","B":"Frog","C":"Sloth","D":"Mouse"},"category":"animals","question":"Three of these animals hibernate. Which one does not?","difficulty":"medium","category_name":"动物世界"}}
关键词搜索
英文关键词走 LIKE 子串匹配,避免 ngram 把 Einstein 误匹配到 Frankenstein。
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET
http://www.shujuyu.cn/v1/api/quiz/search
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
您的API密钥,可在个人中心获取
keyword
string
是
关键词,最大 128 字符
limit
int
否
返回条数,默认 20,最大 20
offset
int
否
偏移量,默认 0
category/lang/type/difficulty
-
否
过滤条件
brief/fields
-
否
字段控制
with_answer
bool
否
是否返回答案与解析,默认 false
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.mode
string
-
data.total
int
-
data.limit
int
-
data.offset
int
-
data.list
array
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"list":[{"id":2428,"question":"Professor Sir Alec John Jeffreys, who was awarded the Albert Einstein World Award of Science in 1996..."}],"mode":"like","limit":3,"total":22,"offset":0}}
随机出题
实现方式为 ID 区间抽样,避免 ORDER BY RAND() 全表扫描;命中不足时自动回退随机排序。
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
GET
http://www.shujuyu.cn/v1/api/quiz/random
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
您的API密钥,可在个人中心获取
count
int
否
题量,最大 20
category/lang/type/difficulty
-
否
过滤条件
with_answer
bool
否
是否返回答案与解析;默认只返回题干和选项。兼容旧参数 answer
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.count
int
-
data.list
array
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"list":[{"id":3118,"lang":"en","type":"单选题","options":{"A":"Palm Sunday","B":"Clean Monday","C":"Good Friday","D":"Lazarus Saturday"},"category":"general","question":"What day marks the start of Easter fasting in Eastern Christianity?","difficulty":"medium","category_name":"通用常识"}],"count":3}}
答题校验
答题校验
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/quiz/check
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
您的API密钥,可在个人中心获取
id
int
是
题目 ID
answer
string
是
选项字母(多选用 AB 形式,顺序无关)或选项原文
reveal
bool
否
是否返回正确答案与解析,默认 false
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.id
int
-
data.correct
bool
-
data.your_answer
string
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"id":100,"correct":true,"your_answer":"A"}}
批量查询
批量查询
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/quiz/batch
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
items
array
是
题目 ID 数组,最多 20 个
key
string
否
仅支持 id
brief/fields
-
否
字段控制
with_answer
bool
否
是否返回答案与解析,默认 false
返回参数说明
参数名 类型 说明
code
int
-
msg
string
-
data
object
-
data.requested
int
-
data.found
int
-
data.not_found
int
-
data.list
array
-
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"list":[{"id":1,"options":{"A":"..."},"question":"..."},{"id":2,"options":{"A":"..."},"question":"..."},{"id":999999,"error":"not_found"}],"found":2,"not_found":1,"requested":3}}
数据导入
仅限配置了 QUIZ_ADMIN_KEY 且请求携带正确管理密钥时可用;未配置时返回 4031,密钥错误返回 4032。
调用方式: 在接口地址后拼接 ?key=您的API密钥 即可直接调用;也可改用 Authorization: Bearer 或 X-App-Key 请求头传递,避免密钥出现在访问日志中。
POST
http://www.shujuyu.cn/v1/api/quiz/import
复制
JSON
在线调试
请求参数
参数名 类型 必填 说明
key
string
是
管理密钥 (也可用 X-Admin-Key 请求头)
questions
array
是
题目对象数组, 最多 20 条
dry_run
bool
否
仅校验不写入, 默认 false
返回参数说明
参数名 类型 说明
received
int
接收到的题目条数
valid
int
校验通过的条数
inserted
int
实际写入条数 (dry_run=true 时恒为 0)
duplicated
int
重复跳过的条数
invalid
int
校验失败的条数
errors
array
校验错误列表 (最多 20 条)
请求示例
请启用 JavaScript 以查看代码示例,或参考接口文档手动构造请求。
cURL
JavaScript
Python
PHP
Java
Go
C#
MCP
返回示例
复制代码
{"msg":"success","code":0,"data":{"valid":1,"errors":[],"invalid":0,"inserted":0,"received":1,"duplicated":0}}
产品说明
产品概述
知识题库查询服务,内置 80,908 道四选一题,覆盖中文成语释义、歇后语、唐诗/宋词填空与 19 类英文通用知识。支持分类/语言/难度筛选、分页列表、关键词搜索、随机出题、答题校验、批量查询。无第三方框架依赖,PDO 直连 MySQL。
使用场景
数据查询:快速集成 quiz 到您的应用中
业务系统:将 quiz 数据嵌入业务流程
开发工具:通过 API 接口获取 教育学习 数据
数据分析:基于 quiz 数据进行分析和决策
费用计算
按次计费单价
¥0.002
/ 次
每次调用接口从账户余额中扣除相应费用,VIP 用户可享折扣
扣费优先级
计费方式详解
· 接口每日免费额度已关闭
· VIP 用户月度免费额度:
· 个人版:每月 5000 次,本接口月上限 5000 次
· 专业版:每月 30000 次,本接口月上限 30000 次
· 企业版:每月 200000 次,本接口月上限 200000 次
· 账户如有注册/活动赠送的免费次数,会优先于接口免费额度扣减
· VIP 月度免费额度仅适用于单次售价不高于 ¥0.0800/次 的接口;接口每日免费额度按接口配置执行
VIP 月度免费额度每月重置,未使用部分不累计至下月。
预付费购买固定调用次数,折算单价与按次付费相同,用完为止。
次数包为独立计费,不与 VIP 折扣叠加。
请在有效期内使用,过期后未使用的次数不可再用。
按次从账户余额扣除费用;所有用户可享量折扣,VIP 用户额外享 VIP 折扣。
扣费公式:实际扣费 = 接口单价 × (1 - VIP 折扣比例 - 量折扣比例),并受总折扣上限和最低利润率保护约束
VIP 折扣:
个人版9折
专业版8折
企业版7折
量折扣:
月付费调用 ≥1000 次享 2%、
月付费调用 ≥10000 次享 5%、
月付费调用 ≥20000 次享 10%
· 量折扣按账号当月全部接口的付费调用次数统计,达到更高档位时按更高档位计算
总折扣上限:VIP 折扣 + 量折扣合计不超过 50%
最低利润率保护:折后价不得低于成本价 × (1 + 15%);若接口售价本身低于该保护价,则取消折扣并按售价计费
余额不足时调用将失败,请及时充值。
VIP 权益对比
等级 每月免费次数 本接口月免费上限 折扣 VIP 折后单价
免费版
按接口配置
—
-
¥0.002/次
个人版
5000 次
5000 次
10%
¥0.0018/次
专业版
30000 次
30000 次
20%
¥0.0016/次
企业版推荐
200000 次
200000 次
30%
¥0.0014/次
* VIP 月度免费额度每月重置。每月免费次数为账号级 VIP 月额度,本接口月免费上限为其中对本接口的限制(接口可单独设置上限或关闭)。VIP 折扣仅适用于余额扣费方式,VIP 折后单价不含量折扣。
本接口已关闭接口级月度免费额度(不影响 VIP 月度免费额度)。接口每日免费额度已关闭。
费用计算示例
* 以下示例未包含量折扣,量折扣按账号当月全部接口的付费调用量另行计算。
示例1:普通用户按次付费
调用 1000 次,费用 = 0.002 × 1000 = ¥2.00
示例2:个人版用户按次付费(仅 VIP 折扣,已考虑最低利润率保护)
调用 1000 次,折扣约 10%,费用 = 0.002 × (1 - 10%) × 1000 ≈ ¥1.80
错误码说明
本接口未定义专属错误码,调用时请参考通用错误码体系。
查看通用错误码参考
错误码 说明 解决方案
200 请求成功 -
400000 请求参数错误 检查参数名、格式与取值
401000 认证失败 检查 Authorization: Bearer 密钥是否正确、是否过期
401002 缺少 API 认证参数 请求未携带 key,请通过 URL 参数 key 或请求头 Authorization 传递密钥
402000 账户余额不足 充值后重试
403000 无访问权限 确认密钥权限、接口范围与 IP 白名单是否满足要求
404001 接口或端点不存在 检查 API 与端点的请求路径
409000 请求冲突 请稍后重试
422000 参数校验失败 检查参数格式与取值
429001 请求频率超限(QPS) 降低请求频率,或升级套餐提升额度
429002 分钟级调用频率超限 降低调用频率,或升级套餐提升额度
429003 小时级调用额度已用完 升级套餐提升额度,或整点后重试
429004 今日调用额度已用完 升级套餐提升额度,或次日重试
500000 服务器内部错误 携带响应中的 request_id 联系技术支持
502000 服务暂时不可用 稍后重试
503000 服务暂时不可用 稍后重试
504000 请求超时 稍后重试