反切小说
接口信息
GET / POST
api.vsaa.cn/api/book/fanqie/index.php
Method
GET / POST
分类
复始归元
Calls
7,423
KEY
KEY 必填
计费
1 积分 / 次
QPM
120/MIN
鉴权方式
Query 参数、Header(X-API-Key)、Bearer Token
作者
请求参数
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|---|---|---|---|---|
| key | string | 是 | 接口调用密钥 | |
| action | string | 是 | 操作:search/directory/content/newfull/book_detail/hot_search/rank/homepage/search_tab/bookmall_tab/new_category_front/audio_detail/audio/tones/tone_info/play/down/video_detail/shortplay/device_register | search |
| q | string | 否 | 搜索词(search/search_tab) | 烟雨楼 |
| query | string | 否 | 搜索词别名(search) | 凡人修仙 |
| offset | string | 否 | 偏移量(search/search_tab/directory) | 0 |
| limit | string | 否 | 数量(search 1-30 / hot_search / shortplay配合all用) | 10 |
| count | string | 否 | 数量(search_tab/directory) | 5 |
| book_id | string | 否 | 书籍ID(directory/content/newfull/book_detail/audio_detail/audio/tone_info) | 6883748331202284558 |
| item_id | string | 否 | 章节ID(content/newfull/audio_detail) | 6883749008234250760 |
| item_ids | string | 否 | 章节ID,多个用逗号分隔(audio) | 6883749008234250760 |
| tone_id | string | 否 | 音色ID(audio) | 96 |
| tone | string | 否 | 音色名(audio,如"邻家妹妹音") | 邻家妹妹音 |
| rank_type | string | 否 | 榜单类型(rank) | 1 |
| category_id | string | 否 | 分类ID(rank) | 0 |
| series_id | string | 否 | 短剧/漫剧剧集ID(video_detail) | 7664807332483697726 |
| video_id | string | 否 | 短剧剧集ID,15-20位数字(shortplay) | 7664807332483697726 |
| chapter_id | string | 否 | 短剧章节ID,指定集(shortplay) | 7664808905486126104 |
| all | string | 否 | 遍历全部集返回每集试看URL(shortplay) | 1 |
| url | string | 否 | 媒体URL(play/down,来自audio/content返回) | https://... |
| cek | string | 否 | 解密key(play/down) | efcf7dd24c9bbe904af478c4ccfe602f |
| filename | string | 否 | 保存文件名(down) | ch1.mp3 |
| rotate | string | 否 | 强制换新设备(device_register) | 1 |
| register | string | 否 | 0=跳过registerkey会话注册(device_register) | 0 |
| applog | string | 否 | 1=执行AppLog设备注册(device_register,通常返回device_id:0) | 1 |
[
{
"name": "key",
"type": "string",
"required": true,
"description": "接口调用密钥",
"example": ""
},
{
"name": "action",
"type": "string",
"required": true,
"description": "操作:search/directory/content/newfull/book_detail/hot_search/rank/homepage/search_tab/bookmall_tab/new_category_front/audio_detail/audio/tones/tone_info/play/down/video_detail/shortplay/device_register",
"example": "search"
},
{
"name": "q",
"type": "string",
"required": false,
"description": "搜索词(search/search_tab)",
"example": "烟雨楼"
},
{
"name": "query",
"type": "string",
"required": false,
"description": "搜索词别名(search)",
"example": "凡人修仙"
},
{
"name": "offset",
"type": "string",
"required": false,
"description": "偏移量(search/search_tab/directory)",
"example": "0"
},
{
"name": "limit",
"type": "string",
"required": false,
"description": "数量(search 1-30 / hot_search / shortplay配合all用)",
"example": "10"
},
{
"name": "count",
"type": "string",
"required": false,
"description": "数量(search_tab/directory)",
"example": "5"
},
{
"name": "book_id",
"type": "string",
"required": false,
"description": "书籍ID(directory/content/newfull/book_detail/audio_detail/audio/tone_info)",
"example": "6883748331202284558"
},
{
"name": "item_id",
"type": "string",
"required": false,
"description": "章节ID(content/newfull/audio_detail)",
"example": "6883749008234250760"
},
{
"name": "item_ids",
"type": "string",
"required": false,
"description": "章节ID,多个用逗号分隔(audio)",
"example": "6883749008234250760"
},
{
"name": "tone_id",
"type": "string",
"required": false,
"description": "音色ID(audio)",
"example": "96"
},
{
"name": "tone",
"type": "string",
"required": false,
"description": "音色名(audio,如\"邻家妹妹音\")",
"example": "邻家妹妹音"
},
{
"name": "rank_type",
"type": "string",
"required": false,
"description": "榜单类型(rank)",
"example": "1"
},
{
"name": "category_id",
"type": "string",
"required": false,
"description": "分类ID(rank)",
"example": "0"
},
{
"name": "series_id",
"type": "string",
"required": false,
"description": "短剧/漫剧剧集ID(video_detail)",
"example": "7664807332483697726"
},
{
"name": "video_id",
"type": "string",
"required": false,
"description": "短剧剧集ID,15-20位数字(shortplay)",
"example": "7664807332483697726"
},
{
"name": "chapter_id",
"type": "string",
"required": false,
"description": "短剧章节ID,指定集(shortplay)",
"example": "7664808905486126104"
},
{
"name": "all",
"type": "string",
"required": false,
"description": "遍历全部集返回每集试看URL(shortplay)",
"example": "1"
},
{
"name": "url",
"type": "string",
"required": false,
"description": "媒体URL(play/down,来自audio/content返回)",
"example": "https://..."
},
{
"name": "cek",
"type": "string",
"required": false,
"description": "解密key(play/down)",
"example": "efcf7dd24c9bbe904af478c4ccfe602f"
},
{
"name": "filename",
"type": "string",
"required": false,
"description": "保存文件名(down)",
"example": "ch1.mp3"
},
{
"name": "rotate",
"type": "string",
"required": false,
"description": "强制换新设备(device_register)",
"example": "1"
},
{
"name": "register",
"type": "string",
"required": false,
"description": "0=跳过registerkey会话注册(device_register)",
"example": "0"
},
{
"name": "applog",
"type": "string",
"required": false,
"description": "1=执行AppLog设备注册(device_register,通常返回device_id:0)",
"example": "1"
}
]
返回示例
{
"code": 0,
"data": {
"query": "烟雨楼",
"limit": 10,
"results": [
{
"book_id": "6883748331202284558",
"title": "烟雨楼",
"author": "一夕烟雨",
"category": "传统玄幻",
"chapter_count": 557,
"score": "9.6"
},
{
"book_id": "7163517349398580238",
"title": "烟雨楼",
"author": "一夕烟雨(主播:醋布,译鸣,帝繁音,Yu_荦棋)",
"category": "奇幻仙侠",
"chapter_count": 1099,
"score": "8.0"
},
{
"book_id": "7180193154753104935",
"title": "烟雨楼",
"author": "番茄漫画",
"category": "玄幻",
"chapter_count": 112,
"score": "9.5"
},
{
"book_id": "7592529628778990617",
"title": "烟雨楼",
"author": "绝隐",
"category": "玄幻言情",
"chapter_count": 54,
"score": "0"
},
{
"book_id": "6964287029689453604",
"title": "凡人修仙记",
"author": "梧桐悠悠",
"category": "传统玄幻",
"chapter_count": 74,
"score": "8.9"
},
{
"book_id": "7239549183726898213",
"title": "惊鸿",
"author": "一夕烟雨(主播:番茄畅听)",
"category": "奇幻仙侠",
"chapter_count": 1766,
"score": "8.0"
},
{
"book_id": "7471900860004434494",
"title": "烟雨楼-",
"author": "咕噜呆帝",
"category": "古代言情",
"chapter_count": 1,
"score": "0"
},
{
"book_id": "6542710247130139655",
"title": "绝世武神",
"author": "净无痕",
"category": "传统玄幻",
"chapter_count": 2500,
"score": "9.1"
}
]
}
}
详细文档
番茄小说
接口说明
番茄小说接口提供小说搜索、章节目录获取、章节内容阅读及有声音频查询能力,面向需要接入网文数据的服务与开发者。调用方通过 Query 参数传入密钥完成鉴权后,按需选择 search、directory、content、audio 操作即可获取对应数据。
调用地址
https://api2.vsaa.cn/api/book/fanqie/index.php
请求方式
支持 GET 与 POST 两种请求方式。
鉴权说明
本接口为收费接口,调用时须在请求参数中附带接口密钥。密钥参数名为 key,通过 Query 方式传递,例如:?key=YOUR_API_KEY。未提供有效密钥或密钥无效时,接口将拒绝响应。
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| key | string | 是 | 接口调用密钥 |
| action | string | 是 | 操作类型,见下表 |
| query | string | 否 | 搜索词,action=search 时必填 |
| limit | string | 否 | 返回数量,默认 10 |
| book_id | string | 否 | 书籍 ID,获取目录或内容时使用 |
| item_ids | string | 否 | 章节 ID,获取内容时使用 |
| tone | string | 否 | 音效风格,action=audio 时使用 |
action 参数取值说明
| 取值 | 说明 |
|---|---|
| search | 搜索小说 |
| directory | 获取小说目录 |
| content | 获取章节内容 |
| audio | 获取音频播放地址 |
成功响应示例
{
"code": 0,
"data": {
"query": "烟雨楼",
"limit": 10,
"results": [
{
"book_id": "6883748331202284558",
"title": "烟雨楼",
"author": "一夕烟雨",
"category": "传统玄幻",
"chapter_count": 557,
"score": "9.6"
},
{
"book_id": "7163517349398580238",
"title": "烟雨楼",
"author": "一夕烟雨(主播:醋布,译鸣,帝繁音,Yu_荦棋)",
"category": "奇幻仙侠",
"chapter_count": 1099,
"score": "8.0"
},
{
"book_id": "7180193154753104935",
"title": "烟雨楼",
"author": "番茄漫画",
"category": "玄幻",
"chapter_count": 112,
"score": "9.5"
},
{
"book_id": "7592529628778990617",
"title": "烟雨楼",
"author": "绝隐",
"category": "玄幻言情",
"chapter_count": 54,
"score": "0"
},
{
"book_id": "6964287029689453604",
"title": "凡人修仙记",
"author": "梧桐悠悠",
"category": "传统玄幻",
"chapter_count": 74,
"score": "8.9"
},
{
"book_id": "7239549183726898213",
"title": "惊鸿",
"author": "一夕烟雨(主播:番茄畅听)",
"category": "奇幻仙侠",
"chapter_count": 1766,
"score": "8.0"
},
{
"book_id": "7471900860004434494",
"title": "烟雨楼-",
"author": "咕噜呆帝",
"category": "古代言情",
"chapter_count": 1,
"score": "0"
},
{
"book_id": "6542710247130139655",
"title": "绝世武神",
"author": "净无痕",
"category": "传统玄幻",
"chapter_count": 2500,
"score": "9.1"
}
]
}
}
响应字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| code | integer | 状态码,0 表示成功 |
| data.query | string | 本次搜索关键词 |
| data.limit | integer | 本次请求返回数量 |
| data.results | array | 结果列表 |
| data.results[].book_id | string | 书籍唯一标识 |
| data.results[].title | string | 书名 |
| data.results[].author | string | 作者名,含主播信息时一并返回 |
| data.results[].category | string | 作品分类,如「传统玄幻」「奇幻仙侠」等 |
| data.results[].chapter_count | integer | 总章节数 |
| data.results[].score | string | 作品评分(0–10 分,字符串格式) |
错误响应示例
{
"code": 1,
"msg": "未提供调用密钥",
"errcode": 11001
}
业务错误码说明
| errcode | 含义 |
|---|---|
| 11001 | 未提供调用密钥 |
| 11002 | 密钥错误 |
| 11003 | 密钥已禁用 |
| 11004 | 积分余额不足 |
| 11005 | 请求过于频繁(QPM 限制) |
| 11006 | 接口维护中 |
| 11007 | 接口已禁用 |
| 11008 | 接口不可用 |
| 11009 | 密钥校验暂不可用 |
| 11010 | 积分系统暂不可用 |
| 11011 | 收费接口须提供有效密钥 |
| 11012 | 鉴权方式错误 |
| 11013 | 接口不存在 |
| 11014 | ***地址无效 |
| 11015 | ***地址不允许 |
| 11016 | ***请求失败 |
| 11017 | 服务暂不可用 |
| 11018 | 请求方式不允许 |
调用示例
终端 curl(bash)
curl -X GET "https://api2.vsaa.cn/api/book/fanqie/index.php?key=YOUR_KEY&action=search&query=烟雨楼&limit=10"
PHP
// PHP
$url = 'https://api2.vsaa.cn/api/book/fanqie/index.php';
$query = http_build_query([
'key' => 'YOUR_KEY',
'action' => 'search',
'query' => '烟雨楼',
'limit' => '10'
]);
$response = file_get_contents($url . '?' . $query);
echo $response;
注意事项
- 密钥通过 Query 参数传递,请妥善保管,切勿直接暴露在前端代码或公开页面中。
- 接口调用地址为
https://api2.vsaa.cn/api/book/fanqie/index.php,建议使用 HTTPS 协议以确保传输安全。 action参数取值仅限search、directory、content、audio四种,传入非法值将导致请求失败。- 搜索操作(
action=search)时需提供query参数;章节列表(directory)、正文获取(content)和音频获取(audio)需分别传入正确的book_id或item_ids。 - 音频接口(
action=audio)支持tone参数指定音效,如「邻家妹妹音」,不传则使用默认音色。 - 接口频率限制为每分钟约 120 次,超出限制将返回错误码,请合理控制调用节奏。
- 本接口为收费服务,请确保账户余额充足后再进行调用。
limit参数用于控制返回数量,建议根据实际需求设置合理范围,避免返回数据过大影响性能。
快速上手
curl "https://api2.vsaa.cn/api/book/fanqie/index.php?key=YOUR_API_KEY&action=search&query=烟雨楼&limit=10"
在线测试
请求地址
api.vsaa.cn/api/book/fanqie/index.php
Method
参数
Response
等待中
// 结果将在此处显示