# 通用 API
# 获取全量书籍 ID 列表
简要描述: 该 API 用于获取合作方所有书籍的 ID 列表,分页返回。(建议每页 100 条,每日定时请求 1 次。)
请求方式:GET(HTTPS)
请求地址:
https://cpapi-i.yuewen.com/api/v1/book/list
请求参数:(查看通用请求参数)
请求参数 | 是否必须 | 类型 | 说明 |
---|---|---|---|
pageNo | 否 | int | 当前页 不传默认为1 |
pageSize | 否 | int | 当前页 不传默认为100,最大为200 |
返回字段:(查看通用返回字段)
字段名称 | 字段类型 | 说明 | 业务说明 |
---|---|---|---|
cbids | string[] | cbid列表 | 书籍 ID 列表 |
totalCount | int | 总数 | 授权书总数 |
page | int | 当前页 | 当前页 |
maxPage | int | 总页数 | 总页数 |
请求示例:
https://cpapi-i.yuewen.com/api/v1/book/list?appflag=xxx×tamp=xxx&sign&pageNo=xxx&pageSize=xxx
返回示例:
{
"code": 0,
"message": "Success",
"data": {
"cbids": [
"14712051400167204",
"22281178000299202"
],
"totalCount": 41470,
"page": 1,
"maxPage": 208
}
}
# 获取书籍基本信息
简要描述 :该API用于获取书籍信息。书籍的付费/免费,可参考(书籍付费/免费规则)。
epub书含义,参考epub书规则。
请求方式:GET(HTTPS)
请求地址:
https://cpapi-i.yuewen.com/api/v1/book/info
请求参数:(查看通用请求参数)
请求参数 | 是否必须 | 类型 | 说明 |
---|---|---|---|
cbid | 是 | string | 书籍ID |
返回字段:(查看通用返回字段)
字段名称 | 字段类型 | 说明 | 业务说明 |
---|---|---|---|
cbid | string | 书籍ID | 作品唯一标识 |
title | string | 书名 | 书籍名称 |
intro | string | 书籍简介 | 作者添加的书籍简介 |
keyword | string | 书籍关键字 | 一级分类, 1:男频 2:女频 3:出版 |
freeType | int | 一级分类 | 作品所属的大类 例:玄幻/奇幻阅文分类ID和名称 |
categoryId | int | 二级分类 | 作品所属的大类 例:玄幻/奇幻阅文分类ID和名称 |
subCategoryId | int | 三级分类 | 作品所属大类下的小分类 例:东方玄幻/西方奇幻阅文分类ID和名称 |
allWords | int | 总字数 | 作品当前全部正文章节的字数 |
allChapter | int | 总章节数 | 作品当前全部章节数 |
freeChapters | int | 免费章节数 | 作品当前免费章节数 |
authorName | string | 作者笔名 | 作者对用户展示的写作笔名 |
coverUrl | string | 封面图 | 获取封面图片的URL地址 |
status | int | 连载状态 | 50:已完结,其它都为“连载” |
vipStatus | int | Vip标志 -1: 公众 1:VIP | 一本作品是否已经开始销售的标识,可能存在是VIP作品但未添加VIP章节的情况 |
vipTime | string | VIP时间 | 被设置成为收费作品的时间 |
tag | string | 标签 | 标签可以体现一本书的特征或流派等信息 格式为: 标签id1:标签名1,标签id2:标签名2 |
chargeType | int | 计费方式 1:按章 2:按本 | 按章则每章价格为:unitPrice*originalWords/1000; 按本则整本价格为:totalPrice |
totalPrice | int | 按本计费价格 | totalprice与 unitprice不能共存 |
unitPrice | int | 千字价格,单位:分 | |
updateTime | string | 最新更新时间 | 书籍的最近更新时间 |
site | int | 1:创世 2:云起 3:起点女生 5: 起点男生 6:阅文集团 9:起点文学网 22:潇湘 23: 红袖添香 24:言情小说吧 37:昆仑男生 38: 昆仑女生 | 作品在阅文的首发站点,可以体现授权来源 |
cpId | long | 1:创世 2:云起 3:起点女生 5: 起点男生 9:起点文学网 23: 红袖添香 24:言情小说吧 56029:小说阅读网 47626:潇湘书院 | 作品结算方,在后台出账对账过程中会用到 |
form | int | -1:原创 1:出版 | 原创书,出版书标识 |
fileFormat | int | 按位标识本书全部文件格式 | 1: 仅支持txt 2/4/6: 仅支持epub 3/5/7: txt和epub都支持 |
monthlyAllowed | int | 是否允许包月 | -1:否 1:是 |
monthlyTime | string | 允许包月时间 | 允许包月时间 |
cancelMonthlyTime | string | 取消包月时间 | 取消包月时间 |
publisher | string | 出版社 | 出版社 |
isbn | string | Isbn编号 | Isbn编号 |
publishPrice | int | 出版价格 | 出版价格 |
printTime | string | 出版时间 | 出版时间 |
checkLevel | int | 审核等级 | 15:上架 10:可阅读购买搜索,不可人工或自动运营 9:可阅读购买,不可搜索 、人工或自动运营 8:不可搜索 、购买、 人工或自动运营,只可阅读已购买 其他值,下架 |
smartTagIds | int[] | 智能标签 | 书籍智能标签列表 。并非所有书都有智能标签 |
payStatus | int | 书籍付免状态 | 1:支持包月 2:支持免费模式 3:支持包月+免费 4:支持付费模式 5:支持付费+包月 6:支持免费+付费 7:支持付费+免费+包月 |
newChapterId | string | 最新发布章节id | 最新章节id |
newChapterTime | string | 最新章节发布时间 | 最新章节发布时间 |
newChapterName | string | 最新发布章节名称 | 最新章节名称 |
请求示例:
https://cpapi-i.yuewen.com/api/v1/book/info?cbid=1&appflag=xxx×tamp=xxx&sign=XXX
返回示例:
{
"code": 0,
"message": "Success",
"data": {
"cbid": "22281178000299202",
"authorName": "我吃西红柿",
"categoryId": 20005,
"freeType": 1,
"newChapterId": "66996418300149432",
"newChapterTime": "2022-11-28 16:33:51",
"newChapterName": "28的测试312313123",
"status": 50,
"subCategoryId": 20006,
"tag": "21114:热血,21950:孤儿,21196:练功流,21084:龙",
"vipStatus": 1,
"allWords": 3529285,
"updateTime": "2023-11-20 16:52:53",
"vipTime": "2008-07-01 00:03:10",
"keyword": "盘龙,林雷",
"checkLevel": 15,
"allChapter": 927,
"freeChapters": 102,
"monthlyAllowed": 1,
"unitPrice": 5,
"publisher": "",
"isbn": "",
"form": -1,
"totalPrice": -1,
"monthlyTime": "2019-08-30 00:00:00",
"publishPrice": 0,
"printTime": "",
"cancelMonthlyTime": "2019-07-14 00:00:00",
"fileFormat": 1,
"smartTagIds": [
51000030,
51000020,
51000029,
51000038,
51000100,
53000032
],
"coverUrl": "https://bookcover.yuewen.com/qdbimg/349573/c_22281178000299202/180?h=1wvr9cuxce7k3",
"intro": "简介",
"title": "盘龙",
"cpId": 5,
"site": 5,
"chargeType": 1,
"payStatus": 5
}
}
# 获取书籍的卷列表
简要描述:该 API 用于获取指定书籍的卷列表(参考目录结构说明)
请求方式:GET(HTTPS)
请求地址:
https://cpapi-i.yuewen.com/api/v1/volume/list
请求参数:(查看通用请求参数)
请求参数 | 是否必须 | 类型 | 说明 |
---|---|---|---|
cbid | 是 | string | 书籍id |
返回字段:(查看通用返回字段)
字段名称 | 字段类型 | 说明 | 业务说明 |
---|---|---|---|
cvid | string | 卷ID,主键 | 作品分卷的唯一标识 |
cbid | string | 书籍ID | 书籍唯一ID |
isVip | int | 是否vip卷 | 是否vip卷: 1:是 -1:否 |
volumeName | string | 卷名 | 作者定义的分卷名称 |
volumeDesc | string | 卷描述 | 作者对分卷内容的概述 |
volumeType | int | 卷类型 | 1:正文卷 0:作品相关 |
volumeChapters | int | 卷内章节数 | 卷内章节数 |
volumeWords | int | 卷内字数 | 卷内字数 |
updateTime | string | 更新时间 | 卷更新时间 |
请求示例:
https://cpapi-i.yuewen.com/api/v1/volume/list?cbid=1&appflag=xxx×tamp=xxx&sign=XXX
返回示例:
{
"code": 0,
"message": "成功",
"data": {
"pageCount": 3,
"resultData": [
{
"cvid": "95696930835985160",
"cbid": "22281178000299202",
"volumeName": "第一集 盘龙之戒",
"volumeType": 1,
"volumeDesc": "",
"isVip": -1,
"volumeChapters": 23,
"volumeWords": 61594,
"updateTime": "2023-11-20 16:38:27"
}
]
}
}
# 获取书籍单卷的章节列表
简要描述:该 API 用于获取指定书籍卷的章节列表。(参考目录结构说明)
请求方式:GET(HTTPS)
请求地址:
https://cpapi-i.yuewen.com/api/v1/volume/chapterlistpage
请求参数:(查看通用请求参数)
请求参数 | 是否必须 | 类型 | 说明 |
---|---|---|---|
cbid | 是 | string | 书籍ID |
cvid | 是 | string | 卷ID |
pageNo | 是 | int | 页码 |
pageSize | 是 | int | 每页大小(最大200) |
返回字段:(查看通用返回字段)
字段名称 | 字段类型 | 说明 | 业务说明 |
---|---|---|---|
ccid | string | 章号 | 作品章节的唯一标识 |
cbid | string | 书籍ID | 书籍唯一ID |
cvid | string | 卷号 | 所属分卷 |
chapterSort | int | 排序 | 章节排序 |
chapterTitle | string | 章节名 | 作家定义的章节名 |
chapterType | int | 章节类型 | 章节类型: -1:免费 1:收费 2:感言 3:编辑推荐 |
originalWords | int | 计费字数 | 章节首次发布时的字数, |
actualWords | int | 实际字数 | 章节实际字数 |
payFlag | int | 收费标识 | 收费标识: 1本章收费 -1本章免费 |
amount | int | 价格 | 以千字价格计算出的本章售价,单位分 |
contentMd5 | string | 内容MD5 | 章节内容的哈希,用于判断内容是否有修改 |
updateTime | string | 更新时间 | 章节最近更新时间 |
publishTime | string | 发布时间 | 章节发布时间 |
prevCcid | string | 前一章节ID | 前一章节ID |
nextCcid | string | 后一章节ID | 后一章节ID |
chapterExtra | string | 作者的话 | 作家在本章的一些话。部分作家会把一些正文内容写在这里,建议不要过滤该内容。 |
请求示例:
https://cpapi-i.yuewen.com/api/v1/volume/chapterlistpage?cbid=1&cvid=1&pageNo=1&pageSize=10&appflag=xxx×tamp=xxx&sign=XXX
返回示例:
{
"code": 0,
"message": "成功",
"data": {
"totalCount": 23,
"resultData": [
{
"ccid": "95697008140694285",
"cbid": "22281178000299202",
"cvid": "95696930835985160",
"chapterSort": 1000001024,
"chapterTitle": "第一章 小镇的早晨",
"originalWords": 8929,
"chapterType": -1,
"amount": 116,
"contentMd5": "7b806b798f20f435f74c3138b92b59af",
"actualWords": 6863,
"updateTime": "2021-07-05 19:26:36",
"publishTime": "2008-05-21 10:06:31",
"chapterExtra": "",
"prevCcid": "0",
"nextCcid": "95697008140759820",
"payFlag": -1
}
]
}
}
# 获取书籍的所有章节列表
简要描述:该 API 用于获取指定书籍所有章节列表(参考目录结构说明),带分页限制,每页最多 100 条章节信息
请求方式:GET(HTTPS)
请求地址:
https://cpapi-i.yuewen.com/api/v1/chapter/listpage
请求参数:(查看通用请求参数)
请求参数 | 是否必须 | 类型 | 说明 |
---|---|---|---|
cbid | 是 | string | 书籍ID |
pageNo | 是 | int | 页号 |
pageSize | 是 | int | 每页大小(最大100) |
返回字段:(查看通用返回字段)
字段名称 | 字段类型 | 说明 | 业务说明 |
---|---|---|---|
ccid | string | 章号 | 作品章节的唯一标识 |
cbid | string | 书籍ID | 书籍唯一ID |
cvid | string | 卷号 | 所属分卷 |
chapterSort | int | 排序 | 章节排序 |
chapterTitle | string | 章节名 | 作家定义的章节名 |
chapterType | int | 章节类型 | 章节类型: -1:免费 1:收费 2:感言 3:编辑推荐 |
originalWords | int | 计费字数 | 章节首次发布时的字数, |
actualWords | int | 实际字数 | 章节实际字数 |
payFlag | int | 收费标识 | 收费标识: 1本章收费 -1本章免费 |
amount | int | 价格 | 以千字价格计算出的本章售价,单位分 |
contentMd5 | string | 内容MD5 | 章节内容的哈希,用于判断内容是否有修改 |
updateTime | string | 更新时间 | 章节最近更新时间 |
publishTime | string | 发布时间 | 章节发布时间 |
prevCcid | string | 前一章节ID | 前一章节ID |
nextCcid | string | 后一章节ID | 后一章节ID |
chapterExtra | string | 作者的话 | 作家在本章的一些话。部分作家会把一些正文内容写在这里,建议不要过滤该内容。 |
请求示例:
https://cpapi-i.yuewen.com/api/v1/chapter/listpage?pageNo=1&pageSize=5&appflag=xxx×tamp=xxx&sign=XXX
返回示例:
{
"code": 0,
"message": "成功",
"data": {
"totalCount": 1542,
"resultData": [
{
"ccid": "95697008140694285",
"cbid": "22281178000299202",
"cvid": "95696930835985160",
"chapterSort": 1000001024,
"chapterTitle": "第一章 小镇的早晨",
"originalWords": 8929,
"chapterType": -1,
"amount": 116,
"contentMd5": "7b806b798f20f435f74c3138b92b59af",
"actualWords": 6863,
"updateTime": "2021-07-05 19:26:36",
"publishTime": "2008-05-21 10:06:31",
"chapterExtra": "",
"prevCcid": "0",
"nextCcid": "95697008140759820",
"payFlag": -1
}
]
}
}
# 获取指定时间内下架书籍
简要描述:该 API 用于获取指定时间段内下架书籍,推荐定期请求每 10 分钟 1 次。建议起止时间间隔不超过 2 小时,多次调用起止时间边界最好存在一定重合。参考书籍更新/上架/下架规则
注意:数据可查询的时间范围是最近 30 天,例:3 月 1 日 下架的书籍,3 月 31 日 将不可查询。
请求方式:GET(HTTPS)
请求地址:
https://cpapi-i.yuewen.com/api/v1/book/unshelflist
请求参数:(查看通用请求参数)
请求参数 | 是否必须 | 类型 | 说明 |
---|---|---|---|
startTimestamp | 是 | long | 开始时间 毫秒级时间戳 |
endTimestamp | 是 | long | 结束时间 毫秒级时间戳 |
返回字段:(查看通用返回字段)
字段名称 | 字段类型 | 说明 | 业务说明 |
---|---|---|---|
cbids | string[] | cbid列表 | 指定时间内下架书籍列表 |
totalCount | int | 总数 | 指定时间内下架书籍总数 |
请求示例:
https://cpapi-i.yuewen.com/api/v1/book/unshelflist?appflag=xxx×tamp=xxx&sign&startTimestamp=xxx&endTimestamp=xxx
返回示例:
{
"code": 0,
"message": "Success",
"data": {
"cbids": [
"14712051400167204",
"22281178000299202"
],
"totalCount": 41470
}
}
# 获取指定时间内更新与上架书籍 ID
简要描述:该 API 用于获取指定时间段内更新与上架的书籍(新增授权、信息变更、章节变更的书籍),建议每 10 分钟 1 次请求。 建议起止时间间隔不超过 2 小时,多次调用起止时间边界最好存在一定重合。参考书籍更新/上架/下架规则
注意:数据可查询的时间范围是最近 30 天,例:3 月 1 日 更新或上架的书籍,3 月 31 日 将不可查询。
请求方式:GET(HTTPS)
请求地址:
https://cpapi-i.yuewen.com/api/v1/book/groundlist
请求参数:(查看通用请求参数)
请求参数 | 是否必须 | 类型 | 说明 |
---|---|---|---|
startTimestamp | 是 | long | 开始时间 毫秒级时间戳 |
endTimestamp | 是 | long | 结束时间 毫秒级时间戳 |
返回字段:(查看通用返回字段)
字段名称 | 字段类型 | 说明 | 业务说明 |
---|---|---|---|
cbids | string[] | cbid列表 | 指定时间内更新与上架书籍列表 |
totalCount | int | 总数 | 指定时间内更新与上架书籍总数 |
请求示例:
https://cpapi-i.yuewen.com/api/v1/book/groundlist?appflag=xxx×tamp=xxx&sign&startTimestamp=xxx&endTimestamp=xxx
返回示例:
{
"code": 0,
"message": "Success",
"data": {
"cbids": [
"14712051400167204",
"22281178000299202"
],
"totalCount": 41470
}
}
# 获取分类信息列表
简要描述:该 API 用于获取分类列表。
请求方式:GET(HTTPS)
请求地址:
https://cpapi-i.yuewen.com/api/v1/extra/bookcategorylist
请求参数:(查看通用请求参数)
无
返回字段:(查看通用返回字段)
字段名称 | 字段类型 | 说明 | 业务说明 |
---|---|---|---|
iDX | int | 主键 | 主键 id |
freetype | int | 一级分类ID | 一级分类ID |
freetypename | string | 一级分类名称 | 一级分类名称 |
categoryid | int | 二级分类ID | 二级分类ID |
categoryname | string | 二级分类名称 | 二级分类名称 |
subcategoryid | int | 三级分类ID | 三级分类ID |
subcategoryname | string | 三级分类名称 | 三级分类名称 |
status | int | 状态 0:无效 1:有效 | 因历史数据原因,有些无效的分类下依旧有书 |
请求示例:
https://cpapi-i.yuewen.com/api/v1/extra/bookcategorylist?appflag=xxx×tamp=xxx&sign
返回示例:
{
"code": 0,
"message": "成功",
"data": {
"totalCount": 955,
"types": [
{
"categoryid": 20005,
"categoryname": "1",
"freetype": 1,
"freetypename": "男",
"site": 1,
"status": 1,
"subcategoryid": 20007,
"subcategoryname": "史诗奇幻",
"iDX": 1
}
]
}
}
# 获取智能标签
简要描述:该 API 用于查询智能标签详细信息,属于非通用接口,使用前需要与阅文方沟通开启权限。
请求方式:GET(HTTPS)
请求地址:
https://cpapi-i.yuewen.com/api/v1/extra/smarttag
请求参数:(查看通用请求参数)
请求参数 | 是否必须 | 类型 | 说明 |
---|---|---|---|
tagId | 是 | int | 智能标签ID |
返回字段:(查看通用返回字段)
字段名称 | 字段类型 | 说明 | 业务说明 |
---|---|---|---|
tagId | string | 标签id | 标签id |
tagName | string | 标签名 | 标签名 |
description | string | 描述 | 标签描述 |
gender | int | 性别 | 1-男 2-女 |
type | string | 二级分类 | 二级分类 |
请求示例:
https://cpapi-i.yuewen.com/api/v1/extra/smarttag?tagId=1&appflag=xxx×tamp=xxx&sign=XXX
返回示例:
{
"code": 0,
"message": "成功",
"data": {
"tagId": 51000020,
"tagName": "学院流",
"description": "指学院情节较多的作品,主角在学院中学习或修行,经常有考核、比赛的剧情。",
"gender": 1,
"type": "流派"
}
}