# 用户空间相关 ## 主页 ### 置顶视频 #### 查询用户置顶视频 >http://api.bilibili.com/x/space/top/arc *请求方式:GET* 粉丝在其主页上可见 **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | vmid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ---------------------------------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误
53016:没有置顶视频 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | obj | 信息本体 | | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ----------- | ---- | ------------------------------ | ----------------------- | | aid | num | 视频avID | | | videos | num | 视频分P总数 | 默认为1 | | tid | num | 分区ID | | | tname | str | 子分区名称 | | | copyright | num | 版权标志 | 1:自制
2:转载 | | pic | str | 视频封面图片url | | | title | str | 视频标题 | | | pubdate | num | 视频上传时间 | 时间戳 | | ctime | num | 视频审核通过时间 | 时间戳 | | desc | str | 视频简介 | | | state | num | 0 | 作用尚不明确 | | attribute | num | | 作用尚不明确 | | duration | num | 视频总计持续时长(所有分P) | 单位为秒 | | rights | obj | 视频属性标志 | | | owner | obj | 视频UP主信息 | | | stat | obj | 视频状态数 | | | dynamic | str | 视频同步发布的的动态的文字内容 | 无为空 | | cid | num | 视频1P CID | | | dimension | obj | 视频1P分辨率 | | | bvid | str | 视频bvID | | | reason | str | 置顶视频备注 | | | inter_video | bool | 是否为合作视频 | false:否
true:是 | `data`中的`rights`对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---- | ---------------- | ---------------------------------------- | | bp | num | 0 | 作用尚不明确 | | elec | num | 0 | 作用尚不明确 | | download | num | 允许下载标志 | 0:不允许
1:允许 | | movie | num | 视频时电影标志 | 0:否
1:是 | | pay | num | 仅会员可观看标志 | 0:无
1:有 | | hd5 | num | 有高码率标志 | 0:无
1:有 | | no_reprint | num | 禁止转载标志 | 0:无
1:禁止 | | autoplay | num | 可自动播放标志 | 0:无
1:有 区别影视番剧与普通视频 | | ugc_pay | num | 0 | 作用尚不明确 | | is_cooperation | num | 视频合作标志 | 0:无
1:是 | | ugc_pay_preview | num | 0 | 作用尚不明确 | | no_background | num | 0 | 作用尚不明确 | `data`中的`owner`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | -------- | ---- | | mid | num | UP主UID | | | name | str | UP主昵称 | | | face | str | UP主头像 | | `data`中的`stat`对象: | 字段 | 类型 | 内容 | 备注 | | ---------- | ---- | ------------------------------ | ------------ | | aid | num | 视频avID | | | view | num | 普通:观看次数
屏蔽时:-1 | | | danmaku | num | 弹幕条数 | | | reply | num | 评论条数 | | | favorite | num | 收藏人数 | | | coin | num | 投币枚数 | | | share | num | 分享次数 | | | now_rank | num | 0 | 作用尚不明确 | | his_rank | num | 历史最高排行 | | | like | num | 获赞次数 || | dislike | num | 0 | 原为点踩计数,现已不再返回正确数据 | | evaluation | str | 视频评分 | 默认为空 | 同`data`中的`dimension`对象 | 字段 | 类型 | 内容 | 备注 | | ------ | ---- | -------------- | -------------------- | | width | num | 当前分P 宽度 | 可能为0 | | height | num | 当前分P 高度 | 可能为0 | | rotate | num | 是否将宽高对换 | 0:正常
1:对换 | **示例:** 查询用户`UID=23215368`的置顶视频 ```shell curl -G 'http://api.bilibili.com/x/space/top/arc'\ --data-urlencode 'vmid=23215368' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": { "aid": 37896701, "videos": 1, "tid": 28, "tname": "原创音乐", "copyright": 1, "pic": "http://i2.hdslb.com/bfs/archive/cc9e72822d68fffdd0406144f1b5348a13c89652.jpg", "title": "燃烧吧!铃声!把主流手机铃声编成一首曲子", "pubdate": 1544469671, "ctime": 1544469671, "desc": "各品牌的手机铃声大合奏,毫无违和感~", "state": 0, "attribute": 16768, "duration": 208, "rights": { "bp": 0, "elec": 0, "download": 0, "movie": 0, "pay": 0, "hd5": 1, "no_reprint": 1, "autoplay": 1, "ugc_pay": 0, "is_cooperation": 0, "ugc_pay_preview": 0, "no_background": 0 }, "owner": { "mid": 23215368, "name": "Wayjon冰冰酱", "face": "http://i2.hdslb.com/bfs/face/7c9715f1768191137eb7ebf91918ca0f99532012.jpg" }, "stat": { "aid": 37896701, "view": 1058237, "danmaku": 16821, "reply": 3725, "favorite": 76888, "coin": 100694, "share": 17091, "now_rank": 0, "his_rank": 0, "like": 90521, "dislike": 0 }, "dynamic": "#编曲##FL##纯音乐#", "cid": 66621209, "dimension": { "width": 1920, "height": 1080, "rotate": 0 }, "bvid": "BV18t411q7zz", "reason": "", "inter_video": false } } ```
#### 设置置顶视频 > http://api.bilibili.com/x/space/top/arc/set *请求方式:POST* 认证方式:Cookie(SESSDATA) **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------------ | -------------------------------- | | aid | num | 置顶目标视频avID | 必要(可选) | avID与bvID任选一个 | | bvid | str | 置顶目标视频bvID | 必要(可选) | avID与bvID任选一个 | | reason | str | 置顶视频备注 | 非必要 | 置顶备注最大40字符
默认为空 | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-304:未修改
-400:请求错误
53014:稿件已失效
53015:备注过长
53017:置顶非自己的稿件 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | **示例:** 置顶视频`av98948772`/`BV1n741127LD` avID方式: ```shell curl 'http://api.bilibili.com/x/space/top/arc/set'\ --data-urlencode 'aid=98948772'\ -b 'SESSDATA=xxx' ``` bvID方式: ```shell curl 'http://api.bilibili.com/x/space/top/arc/set'\ --data-urlencode 'bvid=BV1n741127LD'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
#### 取消置顶视频 > http://api.bilibili.com/x/space/top/arc/cancel *请求方式:POST* 认证方式:Cookie(SESSDATA) **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------ | ---- | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误(重复取消) | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | **示例:** ```shell curl 'http://api.bilibili.com/x/space/top/arc/cancel'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
### 代表作视频 #### 查询用户代表作视频列表 > http://api.bilibili.com/x/space/masterpiece *请求方式:GET* 新访客在其主页上可见 最多可以设置3个 **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | vmid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ------ | ---------- | --------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | array | 代表作列表 | | `data`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ------- | ------------------------- | | 0 | obj | 代表作1 | 无则为空 | | 1 | obj | 代表作2 | 无则为空 | | 2 | obj | 代表作3 | 无则为空
最多设置3个 | `data`数组中的对象: 同查询用户置顶视频中的`data`对象 **示例:** 查询用户`UID=23215368`的代表作视频列表 ```shell curl -G 'http://api.bilibili.com/x/space/masterpiece'\ --data-urlencode 'vmid=23215368' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": [{ "aid": 37896701, "videos": 1, "tid": 28, "tname": "原创音乐", "copyright": 1, "pic": "http://i2.hdslb.com/bfs/archive/cc9e72822d68fffdd0406144f1b5348a13c89652.jpg", "title": "燃烧吧!铃声!把主流手机铃声编成一首曲子", "pubdate": 1544469671, "ctime": 1544469671, "desc": "各品牌的手机铃声大合奏,毫无违和感~", "state": 0, "attribute": 16768, "duration": 208, "rights": { "bp": 0, "elec": 0, "download": 0, "movie": 0, "pay": 0, "hd5": 1, "no_reprint": 1, "autoplay": 1, "ugc_pay": 0, "is_cooperation": 0, "ugc_pay_preview": 0, "no_background": 0 }, "owner": { "mid": 23215368, "name": "Wayjon冰冰酱", "face": "http://i2.hdslb.com/bfs/face/7c9715f1768191137eb7ebf91918ca0f99532012.jpg" }, "stat": { "aid": 37896701, "view": 1058241, "danmaku": 16821, "reply": 3725, "favorite": 76888, "coin": 100694, "share": 17091, "now_rank": 0, "his_rank": 0, "like": 90521, "dislike": 0 }, "dynamic": "#编曲##FL##纯音乐#", "cid": 66621209, "dimension": { "width": 1920, "height": 1080, "rotate": 0 }, "bvid": "BV18t411q7zz", "reason": "", "inter_video": false }, { "aid": 39596658, "videos": 1, "tid": 21, "tname": "日常", "copyright": 1, "pic": "http://i2.hdslb.com/bfs/archive/431e51d0e40e3461e1c1b0f59c755ae8843b1adb.jpg", "title": "MY2018 - 纪念我的2018年", "pubdate": 1546328392, "ctime": 1546328392, "desc": "", "state": 0, "attribute": 16768, "duration": 239, "mission_id": 10996, "rights": { "bp": 0, "elec": 0, "download": 0, "movie": 0, "pay": 0, "hd5": 1, "no_reprint": 1, "autoplay": 1, "ugc_pay": 0, "is_cooperation": 0, "ugc_pay_preview": 0, "no_background": 0 }, "owner": { "mid": 23215368, "name": "Wayjon冰冰酱", "face": "http://i2.hdslb.com/bfs/face/7c9715f1768191137eb7ebf91918ca0f99532012.jpg" }, "stat": { "aid": 39596658, "view": 1518, "danmaku": 16, "reply": 40, "favorite": 22, "coin": 60, "share": 9, "now_rank": 0, "his_rank": 0, "like": 112, "dislike": 0 }, "dynamic": "#vlog##记录##生活记录#", "cid": 69561078, "dimension": { "width": 1920, "height": 1080, "rotate": 0 }, "bvid": "BV1Jt411B7La", "reason": "", "inter_video": false }, { "aid": 44721369, "videos": 1, "tid": 28, "tname": "原创音乐", "copyright": 1, "pic": "http://i0.hdslb.com/bfs/archive/9887797402599c42f74a7624f3db4a92a0ebf465.jpg", "title": "【铃声串烧系列】华米两开花;中华有为,国之荣耀!把主流手机铃声编成一首曲子", "pubdate": 1551128445, "ctime": 1551128445, "desc": "把主流手机铃声编成一首曲子,这一版用华为的铃声作为主旋律,毫无违和感~伴随着2019mwc的开幕,希望国产厂商能获得全世界的目光,并且将属于中国人的科技自信传递到全世界!", "state": 0, "attribute": 16768, "duration": 174, "rights": { "bp": 0, "elec": 0, "download": 0, "movie": 0, "pay": 0, "hd5": 1, "no_reprint": 1, "autoplay": 1, "ugc_pay": 0, "is_cooperation": 0, "ugc_pay_preview": 0, "no_background": 0 }, "owner": { "mid": 23215368, "name": "Wayjon冰冰酱", "face": "http://i2.hdslb.com/bfs/face/7c9715f1768191137eb7ebf91918ca0f99532012.jpg" }, "stat": { "aid": 44721369, "view": 306757, "danmaku": 7713, "reply": 1520, "favorite": 17216, "coin": 16489, "share": 2917, "now_rank": 0, "his_rank": 0, "like": 21439, "dislike": 0 }, "dynamic": "#铃声##纯音乐##音乐#【铃声串烧】Mix Ringtones!船新的版本来啦!这一版用华为的铃声作为主旋律,毫无违和感~伴随着2019mwc的开幕,希望国产厂商能获得全世界的目光,并且将属于中国人的科技自信传递到全世界!", "cid": 78290138, "dimension": { "width": 1920, "height": 1080, "rotate": 0 }, "bvid": "BV1vb411879C", "reason": "", "inter_video": false }] } ```
#### 添加代表作视频 > http://api.bilibili.com/x/space/masterpiece/add *请求方式:POST* 认证方式:Cookie(SESSDATA) 代表作上限为3个稿件 **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------------ | -------------------------------- | | aid | num | 置顶目标视频avID | 必要(可选) | avID与bvID任选一个 | | bvid | str | 置顶目标视频bvID | 必要(可选) | avID与bvID任选一个 | | reason | str | 代表作备注 | 非必要 | 置顶备注最大40字符
默认为空 | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误
53014:稿件已失效
53015:备注过长
53017:置顶非自己的稿件
53019:达到上限
53020:已经存在该稿件 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | **示例:** 添加视频`av94916552`/`BV1ZE411K7ux`到代表作列表 avID方式: ```shell curl 'http://api.bilibili.com/x/space/masterpiece/add'\ --data-urlencode 'aid=94916552'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ``` bvID方式: ```shell curl 'http://api.bilibili.com/x/space/masterpiece/add'\ --data-urlencode 'bvid=BV1ZE411K7ux'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
#### 删除代表作视频 > http://api.bilibili.com/x/space/masterpiece/cancel *请求方式:POST* 认证方式:Cookie(SESSDATA) **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------------ | ------------------ | | aid | num | 要删除的目标视频avID | 必要(可选) | avID与bvID任选一个 | | bvid | str | 要删除的目标视频bvID | 必要(可选) | avID与bvID任选一个 | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误
53021:置顶列表中没有该视频 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | 作用尚不明确 | **示例:** 删除置顶视频`av59765630`/`BV1Yt41137T6` avID方式: ```shell curl 'api.bilibili.com/x/space/masterpiece/cancel'\ --data-urlencode 'aid=59765630'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ``` bvID方式: ```shell curl 'http://api.bilibili.com/x/space/masterpiece/cancel'\ --data-urlencode 'bvid=BV1Yt41137T6'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ``` ### 个人TAG #### 查看用户个人TAG > http://api.bilibili.com/x/space/acc/tags *请求方式:GET* 上限5条,且内容由用户自定义 带有转义 **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | mid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ----- | -------- | --------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | array | 信息本体 | | `data`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | -------- | ------------- | | 0 | obj | 套了个娃 | 只有1项??? | `data`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ----- | ----------- | ---- | | mid | num | 目标用户UID | | | tags | array | TAG名称 | | `data`数组中的对象中的`tags`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | -------- | ------- | | 0 | str | TAG1 | | | n | str | TAG(n+1) | | | …… | str | …… | | | 4 | str | TAG5 | 上限5条 | **示例:** 查看用户`UID=53456`的个人TAG ```shell curl -G 'http://api.bilibili.com/x/space/acc/tags'\ --data-urlencode 'mid=53456' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": [ { "mid": 53456, "tags": [ "游戏", "音乐", "warma", "搞笑", "动画" ] } ] } ```
#### 修改个人TAG > http://api.bilibili.com/x/space/acc/tags/set *请求方式:POST* 认证方式:Cookie(SESSDATA) 鉴权方式:Cookie中`DedeUserID`存在且不为0 **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------ | ------------------------------------------------------------ | | tags | strs | 要设置的TAG内容 | 非必要 | 删除公告留空或省去即可
各TAG长度小于10字符
最多5个TAG
各TAG之间用","(%2C)分隔
重复TAG无效 | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误(超出长度限制) | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | **示例:** 修改个人TAG为`minecraft,技术宅,大佬,小哥哥,可爱` ```shell curl 'http://api.bilibili.com/x/space/acc/tags/set'\ --data-urlencode 'tags=minecraft,技术宅,大佬,小哥哥,可爱'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx;DedeUserID=1' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
### 空间公告 #### 查看用户空间公告 > http://api.bilibili.com/x/space/notice *请求方式:GET* **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | mid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | --------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | str | 公告信息 | 无则为空 | **示例:** 查看用户`UID=53456`的空间公告 ```shell curl -G 'http://api.bilibili.com/x/space/notice'\ --data-urlencode 'mid=53456' ```
查看响应示例: ```json { "code":0, "message":"0", "ttl":1, "data":"我的微博 @_warma_\n直播录像上传到:warma养鸽场\n头像画师是:微博@Dr-H_喵_\n横幅画师:@薬屋" } ```
#### 修改空间公告 > http://api.bilibili.com/x/space/notice/set *请求方式:POST* 认证方式:Cookie(SESSDATA) **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------ | --------------------------------------- | | notice | str | 要设置的公告内容 | 非必要 | 删除公告留空或省去即可
少于150字符 | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-304:未修改
-400:请求错误(超出长度限制) | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | 作用尚不明确 | **示例:** 修改个人空间公告为`鸽子` ```shell curl 'http://api.bilibili.com/x/space/notice/set'\ --data-urlencode 'notice=鸽子'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
### 主页板块布局与权限 #### 查询空间设置 > http://space.bilibili.com/ajax/settings/getSettings *请求方式:GET* 注:带有转义 **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | mid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------ | ------------------- | -------- | ---- | | status | bool | 用户是否存在 | true:存在
false:不存在 | | data | 用户存在时:obj
用户不存在时:str| 用户存在时:信息本体
用户不存在时:错误信息 | | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ---------------------- | ----- | ---------------- | ------------ | | privacy | obj | 空间隐私权限 | | | index_order | array | 空间板块布局 | | | theme | str | default主题? | 作用尚不明确 | | theme_preview_img_path | str | 主题预览图路径? | 作用尚不明确 | | toutu | obj | 空间头图 | | `privacy`对象: | 字段 | 类型 | 内容 | 备注 | | ----------- | ---- | -------------- | ------------------------------ | | bangumi | num | 追番及追剧 | 0:隐藏
1:公开
**下同** | | bbq | num | 轻视频 | | | channel | num | 频道 | | | coins_video | num | 最近投币的视频 | | | comic | num | 追漫 | | | dress_up | num | 装扮 | | | fav_video | num | 收藏夹 | | | groups | num | 圈子? | 作用尚不明确 | | likes_video | num | 最近点赞的视频 | | | played_game | num | 最近玩过的游戏 | | | tags | num | 订阅标签 | | | user_info | num | 个人资料 | | `index_order`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------- | -------------------------------------------- | | 0 | obj | 板块1 | 根据板块布局顺序排序
先左侧布局后右侧布局 | | n | obj | 板块(n+1) | | | …… | obj | …… | …… | `index_order`数组内对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | -------- | ---- | | id | num | 板块编号 | | | name | str | 板块名称 | | `toutu`对象: | 字段 | 类型 | 内容 | 备注 | | ------------- | ---- | -------------------- | ------------------------------------------------------ | | sid | num | 1 | 作用尚不明确 | | expire | num | 到期时间? | 时间戳?
作用尚不明确 | | s_img | str | 空间头图小图相对路径 | 完整url为`http://i0.hdslb.com/`+相对路径 | | l_img | str | 空间头图相对路径 | **同上** | | android_img | str | 安卓端头图 | 未启用
注:手机版头图与web版不同,用另一个api获取 | | iphone_img | str | iPhone端头图 | 未启用 | | ipad_img | str | iPad端头图 | 未启用 | | thumbnail_img | str | 缩略图 | 未启用 | | platform | num | 0 | 作用尚不明确 | **示例:** 查看`UID=2`的空间设置 ```shell curl -G 'http://space.bilibili.com/ajax/settings/getSettings'\ --data-urlencode 'mid=2' ```
查看响应示例: ```json { "status":true, "data":{ "privacy":{ "bangumi":1, "bbq":1, "channel":1, "coins_video":0, "comic":1, "dress_up":1, "fav_video":0, "groups":0, "likes_video":0, "played_game":1, "tags":1, "user_info":1 }, "index_order":[ { "id":1, "name":"我的稿件" }, { "id":8, "name":"我的专栏" }, { "id":7, "name":"我的频道" }, { "id":2, "name":"我的收藏夹" }, { "id":3, "name":"订阅番剧" }, { "id":4, "name":"订阅标签" }, { "id":5, "name":"最近投币的视频" }, { "id":6, "name":"我的圈子" }, { "id":9, "name":"我的相簿" }, { "id":21, "name":"公告" }, { "id":22, "name":"直播间" }, { "id":23, "name":"个人资料" }, { "id":24, "name":"官方活动" }, { "id":25, "name":"最近玩过的游戏" } ], "theme":"default", "theme_preview_img_path":"", "toutu":{ "sid":1, "expire":2861874560, "s_img":"bfs/space/768cc4fd97618cf589d23c2711a1d1a729f42235.png", "l_img":"bfs/space/cb1c3ef50e22b6096fde67febe863494caefebad.png", "android_img":"", "iphone_img":"", "ipad_img":"", "thumbnail_img":"", "platform":0 } } } ```
#### 调整空间板块布局 > http://space.bilibili.com/ajax/settings/setIndexOrder *请求方式:POST* 认证方式:Cookie(SESSDATA) 鉴权方式:Cookie中`DedeUserID`及`DedeUserID__ckMd5`存在且不为0,referer为 `.bilibili.com`域名下 **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ----------- | ---- | ------------------------ | ------ | ------------------------------------------------------------ | | index_order | nums | 布局列表 | 必要 | 每个值之间用","(%2C)分隔
先左侧布局再右侧布局
值的意义见下表 | | csrf | str | CSRF Token(位于cookie) | 必要 | | 布局参数`index_order`: | 值 | 含义 | | ---- | ------------------------------------ | | 1 | (左侧)我的稿件 | | 2 | (左侧)我的收藏夹 | | 3 | (左侧)订阅番剧 | | 4 | (左侧)订阅标签 | | 5 | (左侧)最近投币的视频 | | 6 | (左侧)我的圈子**(此板块被隐藏)** | | 7 | (左侧)我的频道 | | 8 | (左侧)我的专栏 | | 9 | (左侧)我的相簿 | | 21 | (右侧)公告 | | 22 | (右侧)直播间 | | 23 | (右侧)个人资料 | | 24 | (右侧)官方活动 | | 25 | (右侧)最近玩的游戏 | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------ | ---- | -------- | ----------------------------------- | | ststus | bool | 操作结果 | true:操作成功
false:操作失败 | | data | str | 错误信息 | 正确时无此项 | **示例:** 调整空间布局为: >我的稿件 直播间 >我的专栏 个人资料 >订阅番剧 公告 >我的收藏夹 官方活动 >我的相簿 最近玩的游戏 >最近投币的视频 >订阅标签 >我的频道 ```shell curl 'http://space.bilibili.com/ajax/settings/setIndexOrder'\ --data-urlencode 'index_order=1,8,3,2,9,5,4,7,22,23,21,24,25,6'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx;DedeUserID=1;DedeUserID__ckMd5=1;'\ -e 'https://www.bilibili.com' ```
查看响应示例: ```json { "status": true } ```
#### 修改空间隐私权限 > http://space.bilibili.com/ajax/settings/setPrivacy *请求方式:POST* 认证方式:Cookie(SESSDATA) 鉴权方式:Cookie中`DedeUserID`及`DedeUserID__ckMd5`存在且不为0,referer为 `.bilibili.com`域名下 **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ----------- | ---- | ------------------------ | ------ | ---------------------------------- | | fav_video | num | 收藏视频 | 非必要 | 0:隐藏
1:公开
**下同** | | bangumi | num | 追番及追剧 | 非必要 | | | tags | num | 关注的TAG | 非必要 | | | coins_video | num | 投币的视频 | 非必要 | | | user_info | num | 个人信息 | 非必要 | | | played_game | num | 玩过的游戏 | 非必要 | | | csrf | nstr | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------ | ---- | -------- | ----------------------------------- | | ststus | bool | 操作结果 | true:操作成功
false:操作失败 | | data | str | 错误信息 | 正确时无此项 | **示例:** 设置`关注的TAG`为隐藏 ```shell curl 'http://space.bilibili.com/ajax/settings/setPrivacy'\ --data-urlencode 'tags=0'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx;DedeUserID=1;DedeUserID__ckMd5=1;'\ -e 'https://www.bilibili.com' ```
查看响应示例: ```json { "status": true } ```
### 查询用户最近玩过的游戏 > http://api.bilibili.com/x/space/lastplaygame *请求方式:GET* **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | mid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ------------------------------- | -------- | ---------------------------------------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误
53013:用户隐私设置未公开 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | 隐藏时:null
公开时:array | 信息本体 | | `data`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------- | ---------------- | | 0 | obj | 游戏1 | | | n | obj | 游戏(n+1) | 项数为总计游戏数 | | …… | obj | …… | …… | `data`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | --------------- | ---- | | website | str | 游戏主页链接url | | | image | str | 游戏图片url | | | name | str | 游戏名 | | **示例:** 查询`UID=2`的最近玩过的游戏 ```shell curl -G 'http://api.bilibili.com/x/space/lastplaygame'\ --data-urlencode 'mid=2 ' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": [ { "website": "https://game.bilibili.com/fgo/event_meihosou", "image": "http://i0.hdslb.com/bfs/game/f7d4ee0877089e4079b8f0b4f5c95dd4ceba512a.png", "name": "命运-冠位指定(Fate/GO)" }, { "website": "https://game.bilibili.com/pcr/xxtix", "image": "http://i0.hdslb.com/bfs/game/7922ecea5cc76fe3c8c177e1d4a6c8cf1c36a700.jpg", "name": "公主连结Re:Dive" }, { "website": "https://game.bilibili.com/dwbgx/", "image": "http://i0.hdslb.com/bfs/game/6d5b2df70dfa987408d8d09110cdc327949885e3.png", "name": "大王不高兴" }, { "website": "https://game.bilibili.com/bangdream/1stanniversary-yxzx/", "image": "http://i0.hdslb.com/bfs/game/4a7d0b7272dffe5a489ee935b6bd2d4f7d5f1257.png", "name": "BanG Dream!" }, { "website": "http://www.biligame.com/detail/?id=101772", "image": "http://i0.hdslb.com/bfs/game/8e8b04e7bd2170c2ba2c9f563a62c72bac2eba2c.jpg", "name": "明日方舟" } ] } ```
## 投稿 ### 查询用户投稿视频明细 > http://api.bilibili.com/x/space/arc/search *请求方式:GET* **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------- | ---- | ------------ | ------ | ------------------------------------------------------------ | | mid | num | 目标用户UID | 必要 | | | order | str | 排序方式 | 非必要 | 默认为pubdate
最新发布:pubdate
最多播放:click
最多收藏:stow | | tid | num | 筛选目标分区 | 非必要 | 默认为0
0:不进行分区筛选
分区tID为所筛选的分区 | | keyword | str | 关键词筛选 | 非必要 | 用于使用关键词搜索该UP主视频稿件 | | pn | num | 页码 | 必要 | | | ps | num | 每页项数 | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | --------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误
-412:请求被拦截 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | obj | 信息本体 | | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | -------- | ---- | | list | obj | 列表信息 | | | page | obj | 页面信息 | | `data`中的`list`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ------ | ---------------- | ---- | | tlist | obj | 投稿视频分区索引 | | | vlist | array | 投稿视频列表 | | `list`中的`tlist`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | ------------ | --------------------- | | {tID} | obj | 该分区的详情 | 字段名为存在的分区tID | | …… | obj | …… | 向下扩展 | `tlist`中的`{tID}`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | -------------------- | ---- | | count | num | 投稿至该分区的视频数 | | | name | str | 该分区名称 | | | tid | num | 该分区tID | | `list`中的`vlist`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------------- | ---- | | 0 | obj | 投稿视频1 | | | n | obj | 投稿视频(n+1) | | | …… | obj | …… | …… | `list`中的`vlist`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | -------------- | ---- | -------------- | ---------------------------- | | aid | num | 稿件avID | | | author | str | 视频UP主 | 不一定为目标用户(合作视频) | | bvid | str | 稿件bvID | | | comment | num | 视频评论数 | | | copyright | str | 空 | 作用尚不明确 | | created | num | 投稿时间 | 时间戳 | | description | str | 视频简介 | | | hide_click | bool | false | 作用尚不明确 | | is_pay | num | 0 | 作用尚不明确 | | is_union_video | num | 是否为合作视频 | 0:否
1:是 | | length | str | 视频长度 | MM:SS | | mid | num | 视频UP主UID | 不一定为目标用户(合作视频) | | pic | str | 视频封面 | | | play | num | 视频播放次数 | | | review | num | 0 | 作用尚不明确 | | subtitle | str | 空 | 作用尚不明确 | | title | str | 视频标题 | | | typeid | num | 视频分区tID | | | video_review | num | 视频弹幕数 | | `data`中的`page`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | ---------- | ---- | | count | num | 总计稿件数 | | | pn | num | 当前页码 | | | ps | num | 每页项数 | | **示例:** `pn`(页码)和`ps`(每页项数)只改变`vlist`中成员的多少与内容 以每页2项查询用户`UID=53456`的第1页投稿视频明细 ```shell curl -G 'http://api.bilibili.com/x/space/arc/search'\ --data-urlencode 'ps=2'\ --data-urlencode 'pn=1' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": { "list": { "tlist": { "1": { "tid": 1, "count": 17, "name": "动画" }, "160": { "tid": 160, "count": 43, "name": "生活" }, "3": { "tid": 3, "count": 33, "name": "音乐" }, "4": { "tid": 4, "count": 70, "name": "游戏" } }, "vlist": [{ "comment": 4626, "typeid": 17, "play": 954380, "pic": "//i0.hdslb.com/bfs/archive/b40edb19d3000763e1984f854f8f13d2159e13bc.jpg", "subtitle": "", "description": "游戏:动物森友会 平台:Switch\n封面画师:微博@HRDrifter \n终于盼来了动森的新作,和大家一起守夜等着游戏解锁,终于能在第一时间和大家一起分享这份喜悦~\n但是为什么这份高兴的心情最后会变成越来越多的房债呢……\n我的微博:@_warma_", "copyright": "", "title": "【warma】用水壶往海里浇水海平面会升高吗?《动物森友会》", "review": 0, "author": "Warma", "mid": 53456, "created": 1585311134, "length": "48:16", "video_review": 25064, "aid": 667551016, "bvid": "BV1na4y1t7Bf", "hide_click": false, "is_pay": 0, "is_union_video": 0 }, { "comment": 3372, "typeid": 17, "play": 838204, "pic": "//i1.hdslb.com/bfs/archive/fc2bd95021e5c88a16b16a3bef803e0fc141d059.jpg", "subtitle": "", "description": "游戏:Rimworld\n上一期:av96139881\n点赞过8W会更新下一期的~\n录制这一期的时候嗓子炎症加剧了,所以说话有点点闷,不过现在已经好很多了~ 下一期要录的话,我会在嗓子完全康复后再录制的,大家放心~\n我的微博:@_warma_", "copyright": "", "title": "【warma实况】拿起狼牙棒去交朋友!《Rimworld》【第二期】", "review": 0, "author": "Warma", "mid": 53456, "created": 1584758891, "length": "21:40", "video_review": 12964, "aid": 98061972, "bvid": "BV1vE411c7Wu", "hide_click": false, "is_pay": 0, "is_union_video": 0 }] }, "page": { "count": 163, "pn": 1, "ps": 2 } } } ```
### 查询用户投稿相簿预览 > http://api.bilibili.com/x/space/album/index *请求方式:GET* 所有类型的相簿 **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------ | ------ | ------- | | mid | num | 目标用户UID | 必要 | | | ps | num | 获取的相簿量 | 非必要 | 默认为8 | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ------ | -------- | --------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | array | 相簿列表 | | `data`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------------- | ---- | | 0 | obj | 相簿内容1 | | | n | obj | 相簿内容(n+1) | | | …… | obj | …… | …… | `data`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ----------- | ------ | ----------- | -------------- | | count | num | 总计图片数 | | | ctime | num | 发布时间 | 时间戳 | | description | str | 简介 | | | doc_id | num | 相簿ID | 非动态ID!!! | | like | num | 点赞数 | | | pictures | array | 图片内容 | | | poster_uid | num | 上传用户UID | | | title | str | 标题 | 动态内容无 | | view | num | 浏览数 | | `data`数组中的对象中的`pictures`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------------- | --------------------- | | 0 | obj | 内容图片1 | | | n | obj | 内容图片(n+1) | 项数取决于`count`的值 | | …… | obj | …… | …… | `pictures`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ---------- | ---- | -------- | ----------- | | img_height | num | 图片高度 | | | img_size | num | 图片大小 | 单位为KByte | | img_src | str | 图片url | | | img_width | num | 图片宽度 | | **示例:** 查询用户`UID=53456`的投稿相簿预览 ```shell curl -G 'http://api.bilibili.com/x/space/album/index'\ --data-urlencode 'mid=53456'\ --data-urlencode 'ps=2' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": [{ "doc_id": 60470424, "poster_uid": 53456, "title": "", "description": "你醒啦![tv_大佬]\n之前说到过的百万粉纪念的视频已经定时在了今天下午七点,欢迎来看呀!", "pictures": [{ "img_src": "https://i0.hdslb.com/bfs/album/2840366e30bf7c0aba9da5adde1a771255a57bc7.jpg", "img_width": 625, "img_height": 134, "img_size": 14 }], "count": 1, "ctime": 1583444859, "view": 1677521, "like": 29974 }, { "doc_id": 58962388, "poster_uid": 53456, "title": "", "description": "上次的那些写实儿童画发出来啦!可以打印下来辟邪[tv_大佬]", "pictures": [{ "img_src": "https://i0.hdslb.com/bfs/album/8acaf7c7897cb858cccab36c33a5e875adfef177.jpg", "img_width": 2172, "img_height": 3258, "img_size": 2831 }, { "img_src": "https://i0.hdslb.com/bfs/album/1611b6b56d3d4328889a62b9f9bdc92e9d065532.jpg", "img_width": 3456, "img_height": 5184, "img_size": 3024 }, { "img_src": "https://i0.hdslb.com/bfs/album/f3a30a2ef5b39711af8b945d54d85ffd1e932b8a.jpg", "img_width": 1200, "img_height": 757, "img_size": 313 }], "count": 3, "ctime": 1582881332, "view": 1176646, "like": 25734 }] } ```
### 查询用户投稿相簿明细 > http://api.vc.bilibili.com/link_draw/v1/doc/doc_list *请求方式:GET* **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | --------- | ---- | ----------- | ------ | ------------------------------------------------------------ | | uid | num | 目标用户UID | 必要 | | | page_num | num | 页码 | 非必要 | 默认为1 | | page_size | num | 每页项数 | 非必要 | 默认为20 | | biz | str | 查询类型 | 非必要 | 全部:all
绘画:draw
摄影:photo
日常:daily
默认为all | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------- | | code | num | 返回值 | 0:成功 | | msg | str | 错误信息 | 默认为success | | message | str | 错误信息 | 默认为success | | data | obj | 信息本体 | | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ------ | -------- | ---- | | items | array | 相簿列表 | | `items`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------------- | ---- | | 0 | obj | 相簿内容1 | | | n | obj | 相簿内容(n+1) | | | …… | obj | …… | …… | `items`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ----------- | ------ | ----------- | -------------- | | count | num | 总计图片数 | | | ctime | num | 发布时间 | 时间戳 | | description | str | 简介 | | | doc_id | num | 相簿ID | 非动态ID!!! | | like | num | 点赞数 | | | pictures | array | 图片内容 | | | poster_uid | num | 上传用户UID | | | title | str | 标题 | 动态内容无 | | view | num | 浏览数 | | `items`数组中的对象中的`pictures`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------------- | --------------------- | | 0 | obj | 内容图片1 | | | n | obj | 内容图片(n+1) | 项数取决于`count`的值 | | …… | obj | …… | …… | `pictures`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ---------- | ---- | -------- | ----------- | | img_height | num | 图片高度 | | | img_size | num | 图片大小 | 单位为KByte | | img_src | str | 图片url | | | img_width | num | 图片宽度 | | **示例:** 查询用户`UID=53456`的投稿明细中的全部类型 ```shell curl -G 'http://api.vc.bilibili.com/link_draw/v1/doc/doc_list'\ --data-urlencode 'uid=2'\ --data-urlencode 'page_num=1'\ --data-urlencode 'page_size=2'\ --data-urlencode 'biz=all' ```
查看响应示例: ```json { "code": 0, "msg": "success", "message": "success", "data": { "items": [{ "doc_id": 59015720, "poster_uid": 2, "title": "", "description": "6影是真的无脑,2个宝石都护不住(设计师:这真是太酷了)", "pictures": [{ "img_src": "http://i0.hdslb.com/bfs/album/8456f050ec8639c6e0cef36aba27bfdedc550590.jpg", "img_width": 1824, "img_height": 840, "img_size": 1024 }], "count": 1, "ctime": 1582894607, "view": 707073, "like": 7055 }, { "doc_id": 46853140, "poster_uid": 2, "title": "", "description": "#年度报告# #新年Flag# https://www.bilibili.com/blackboard/timemachine2019.html\n决定了,这就是我的新年Flag!今年我一定要…", "pictures": [{ "img_src": "http://i0.hdslb.com/bfs/album/5b3ae76f79d7cf2501afc3ca7c7da509dcf0e38a.jpg", "img_width": 1125, "img_height": 2184, "img_size": 465 }, { "img_src": "http://i0.hdslb.com/bfs/album/87789fe9644337a1f7e6a0655a32584705af8bda.jpg", "img_width": 1125, "img_height": 2184, "img_size": 421 }, { "img_src": "http://i0.hdslb.com/bfs/album/f752d7f3bb7952f6c0013b3f48ddcb07060b4721.jpg", "img_width": 1125, "img_height": 2184, "img_size": 524 }, { "img_src": "http://i0.hdslb.com/bfs/active/7a52a411bccb716c8e67fe70e6c330d5209346de.jpg", "img_width": 1125, "img_height": 2184, "img_size": 534 }], "count": 4, "ctime": 1577966163, "view": 833193, "like": 5667 }] } } ```
## 频道 ### 查询用户频道列表 > http://api.bilibili.com/x/space/channel/list *请求方式:GET* **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | mid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | -------- | | code | num | 返回值 | 0:成功 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | obj | 信息本体 | 无则为空 | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ------ | ---------- | ---- | | count | num | 总计频道数 | | | list | array | 频道列表 | | `data`中的`list`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------- | --------------------- | | 0 | obj | 频道1 | | | n | obj | 频道(n+1) | 项数取决于`count`的值 | | …… | obj | …… | …… | `data`中的`list`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | -------------- | -------- | | cid | num | 频道ID | | | count | num | 频道内含视频数 | | | cover | str | 封面图片url | | | intro | str | 简介 | 无则为空 | | mid | num | 创建用户UID | | | mtime | num | 创建时间 | 时间戳 | | name | str | 标题 | | **示例:** 查询用户`UID=53456`的频道列表 ```shell curl -G 'http://api.bilibili.com/x/space/channel/list'\ --data-urlencode 'mid=53456' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": { "count": 6, "list": [{ "cid": 100249, "mid": 53456, "name": "【实况】动物之森", "intro": "", "mtime": 1579898830, "count": 2, "cover": "http://i1.hdslb.com/bfs/archive/6a7ed9483c34e839dfca981b9e2b94cd4c4efa0a.jpg" }, { "cid": 79323, "mid": 53456, "name": "忆雨", "intro": "忆雨出现过的视频", "mtime": 1562535222, "count": 7, "cover": "http://i2.hdslb.com/bfs/archive/1783e4f03042b282495799adda1cb56270cea647.jpg" }, { "cid": 79322, "mid": 53456, "name": "大画家", "intro": "", "mtime": 1562535122, "count": 6, "cover": "http://i0.hdslb.com/bfs/archive/9c85a14e805c6c23cb7a42e1dbef97821bb68960.jpg" }, { "cid": 77758, "mid": 53456, "name": "灭火器", "intro": "", "mtime": 1561270856, "count": 4, "cover": "http://i2.hdslb.com/bfs/archive/0073208d086b4ebe9cdc540e7664aa74b483aeb6.jpg" }, { "cid": 75696, "mid": 53456, "name": "沃玛小剧场", "intro": "", "mtime": 1559129460, "count": 5, "cover": "http://i2.hdslb.com/bfs/archive/db2b20ecdb6ed013fc3780b0e741ea88d46b5b40.jpg" }, { "cid": 170, "mid": 53456, "name": "爆炸电台", "intro": "闲聊的电台", "mtime": 1503298893, "count": 7, "cover": "http://i2.hdslb.com/bfs/archive/73d77bc6bb0d44b239fd4f5a2682fe3144e81692.jpg" }] } } ```
### 查询用户频道中的视频 > http://api.bilibili.com/x/space/channel/video *请求方式:GET* **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | --------- | | mid | num | 目标用户UID | 必要 | | | cid | num | 目标频道ID | 必要 | | | pn | num | 页码 | 非必要 | 默认为1 | | ps | num | 每页项数 | 非必要 | 默认为100 | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误
-404:无用户对应的频道 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | obj | 信息本体 | | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | -------- | ---- | | list | obj | 频道信息 | | | page | obj | 页面信息 | | `data`中的`list`对象: | 字段 | 类型 | 内容 | 备注 | | -------- | ------ | -------------- | -------- | | archives | array | 包含的视频列表 | | | cid | num | 频道ID | | | count | num | 频道内含视频数 | | | cover | str | 封面图片url | | | intro | str | 简介 | 无则为空 | | mid | num | 创建用户UID | | | mtime | num | 创建时间 | 时间戳 | | name | str | 标题 | | `list`中的`archives`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------- | --------------------- | | 0 | obj | 视频1 | | | n | obj | 视频(n+1) | 项数取决于`count`的值 | | …… | obj | …… | …… | `list`中的`archives`数组中的对象: 基本同「[视频详细信息](https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/video/info.md#视频详细信息(avID/bvID互转))」中的data对象 `data`中的`page`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | ---------- | ---- | | count | num | 总计视频数 | | | num | num | 当前页码 | | | size | num | 每页项数 | | **示例:** 查询用户`UID=53456`的频道`170`中的视频 ```shell curl -G 'http://api.bilibili.com/x/space/channel/video'\ --data-urlencode 'mid=53456'\ --data-urlencode 'cid=170'\ --data-urlencode 'ps=2'\ --data-urlencode 'pn=1' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": { "list": { "cid": 170, "mid": 53456, "name": "爆炸电台", "intro": "闲聊的电台", "mtime": 1503298893, "count": 7, "cover": "http://i2.hdslb.com/bfs/archive/73d77bc6bb0d44b239fd4f5a2682fe3144e81692.jpg", "archives": [{ "aid": 87673204, "videos": 1, "tid": 21, "tname": "日常", "copyright": 1, "pic": "http://i0.hdslb.com/bfs/archive/5387bdcbbe4d5551adbf0ee2e607e4b7d3d8f2f0.jpg", "title": "【warma爆炸电台】迟来的自我介绍【第八期】", "pubdate": 1581244539, "ctime": 1581244540, "desc": "时隔半年的新的一期爆炸电台来啦,这是我的一系列杂谈聊天电台,这次因为多了很多新关注的朋友们,所以来做个自我介绍吧!\n画师:Dr-H_喵_ 动画:K_Lacid\n结尾提到的壁纸稍后在动态发原图,动态壁纸在steam那个壁纸软件的创意工坊里搜warma能找到\n\n往期的电台:\n第一期:av6786024 \n第三期:av13619263\n第四期:av18862091\n第五期:av25092410\n第六期:av42492515\n第七期:av62910468", "state": 0, "attribute": 16512, "duration": 2388, "rights": { "bp": 0, "elec": 0, "download": 0, "movie": 0, "pay": 0, "hd5": 0, "no_reprint": 1, "autoplay": 1, "ugc_pay": 0, "is_cooperation": 0, "ugc_pay_preview": 0, "no_background": 0 }, "owner": { "mid": 53456, "name": "Warma", "face": "http://i1.hdslb.com/bfs/face/c1bbee6d255f1e7fc434e9930f0f288c8b24293a.jpg" }, "stat": { "aid": 87673204, "view": 1383542, "danmaku": 88908, "reply": 9237, "favorite": 32929, "coin": 68849, "share": 5140, "now_rank": 0, "his_rank": 52, "like": 116164, "dislike": 0 }, "dynamic": "来做个自我介绍吧! #warma##沃玛##爆炸电台#", "cid": 149793525, "dimension": { "width": 1920, "height": 1080, "rotate": 0 }, "bvid": "BV1D7411t7Be", "inter_video": false }, { "aid": 62910468, "videos": 1, "tid": 21, "tname": "日常", "copyright": 1, "pic": "http://i2.hdslb.com/bfs/archive/4bd598f71a144d4505e259b143c0de0bf27968b2.jpg", "title": "【warma爆炸电台】居然收到了几千条问题!【第七期】", "pubdate": 1565345410, "ctime": 1565338559, "desc": "时隔半年的爆炸电台第七期终于来啦!在这一期里回答了很多问题,祝看得开心!此外,就在昨天,50万订阅了…真的谢谢大家!\n也欢迎来看往期的电台:\n第一期:av6786024 (2016年10月)\n第二期:av10373352(2017年5月)\n第三期:av13619263(2017年8月)\n第四期:av18862091(2018年1月)\n第五期:av25092410(2018年6月)\n第六期:av42492515(2019年2月)", "state": 0, "attribute": 16512, "duration": 1987, "mission_id": 11740, "rights": { "bp": 0, "elec": 0, "download": 0, "movie": 0, "pay": 0, "hd5": 0, "no_reprint": 1, "autoplay": 1, "ugc_pay": 0, "is_cooperation": 0, "ugc_pay_preview": 0, "no_background": 0 }, "owner": { "mid": 53456, "name": "Warma", "face": "http://i1.hdslb.com/bfs/face/c1bbee6d255f1e7fc434e9930f0f288c8b24293a.jpg" }, "stat": { "aid": 62910468, "view": 455277, "danmaku": 19383, "reply": 2108, "favorite": 10507, "coin": 19422, "share": 1208, "now_rank": 0, "his_rank": 0, "like": 31515, "dislike": 0 }, "dynamic": "爆炸电台 第七期 来啦!", "cid": 109284065, "dimension": { "width": 1920, "height": 1080, "rotate": 0 }, "bvid": "BV1gt411K7Ga", "inter_video": false }] }, "page": { "count": 7, "num": 1, "size": 2 } } } ```
### 创建频道 > http://api.bilibili.com/x/space/channel/add *请求方式:POST* 认证方式:Cookie(SESSDATA) 创建成功后会返回新建频道的ID **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------ | ---- | | name | str | 频道名 | 必要 | | | intro | str | 频道简介 | 非必要 | | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误
53001:频道名字数超过限制
53002:频道简介字数超过限制
53004:创建的频道已经满额
53007:频道名称已经存在
53024:编辑内容命中敏感信息 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | obj | 数据本体 | 成功有此项 | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | ------ | ---- | | cid | num | 频道ID | | **示例:** 创建名为`test1`的频道,简介为空 ```shell curl 'http://api.bilibili.com/x/space/channel/add'\ --data-urlencode 'name=test1'\ --data-urlencode 'intro='\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": { "cid": 138996 } } ```
### 修改频道 > http://api.bilibili.com/x/space/channel/edit *请求方式:POST* 认证方式:Cookie(SESSDATA) **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------ | ---- | | cid | num | 频道ID | 必要 | | | name | str | 频道名 | 必要 | | | intro | str | 频道简介 | 非必要 | | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误
53001:频道名字数超过限制
53002:频道简介字数超过限制
53007:频道名称已经存在
53024:编辑内容命中敏感信息 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | **示例:** 修改频道`138996`名称为`测试`,简介为`123456` ```shell curl 'http://api.bilibili.com/x/space/channel/edit'\ --data-urlencode 'cid=138996'\ --data-urlencode 'name=测试'\ --data-urlencode 'intro=123456'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
### 删除频道 > http://api.bilibili.com/x/space/channel/del *请求方式:POST* 认证方式:Cookie(SESSDATA) **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------ | ---- | | cid | num | 需要删除的频道ID | 必要 | | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | **示例:** 删除频道`138996` ```shell curl 'http://api.bilibili.com/x/space/channel/del'\ --data-urlencode 'cid=138996'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
### 频道添加视频 > http://api.bilibili.com/x/space/channel/video/add *请求方式:POST* 认证方式:Cookie(SESSDATA) 仅能添加自己是UP主的视频 如添加多个视频,仅会添加正确的 **注:完成后需要使用接口「查询用户频道中的视频」刷新** **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------ | ---------------------- | | cid | num | 频道ID | 必要 | | | aids | nums | 要添加的目标视频avID | 必要 | 多个使用","(%2C)分隔 | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ----- | ---------------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误
-404:无此项
53003:本频道里的视频已满
53006:提交视频已失效或频道里有(非该视频UP主) | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | array | 出错视频avID列表 | | `data`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ------------------- | ---- | | 0 | num | 出错视频avID1 | | | n | num | 出错视频avID(n+1) | | | …… | num | …… | …… | **示例:** 向频道`138995`中添加视频`av583785685`和`av243322853` ```shell curl 'http://api.bilibili.com/x/space/channel/video/add'\ --data-urlencode 'cid=138995'\ --data-urlencode 'aids=583785685,243322853'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": [] } ```
### 频道删除视频 > http://api.bilibili.com/x/space/channel/video/del *请求方式:POST* 认证方式:Cookie(SESSDATA) **注:完成后需要使用接口「查询用户频道中的视频」刷新** **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------ | ---- | | cid | num | 频道ID | 必要 | | | aid | num | 要删除的目标视频avID | 必要 | | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误
-404:无此项
53008:频道内没有视频
53009:频道内没有该视频 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | **示例:** 删除频道`138995`中的视频`av583785685` ```shell curl 'http://api.bilibili.com/x/space/channel/video/del'\ --data-urlencode 'cid=138995'\ --data-urlencode 'aid=583785685'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
### 调整频道视频排序 > http://api.bilibili.com/x/space/channel/video/sort *请求方式:POST* 认证方式:Cookie(SESSDATA) **正文参数( application/x-www-form-urlencoded ):** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ------------------------ | ------ | ------------------------------------------------------------ | | cid | num | 频道ID | 必要 | | | aid | num | 要移动的目标视频avID | 必要 | | | to | num | 视频排序倒数位置 | 非必要 | 默认为1
1为列表底部,视频总数为首端
与显示顺序恰好相反 | | csrf | str | CSRF Token(位于cookie) | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
-400:请求错误 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | **示例:** 调整`138995`中的视频`av583785685`位置为倒数第2 ```shell curl 'http://api.bilibili.com/x/space/channel/video/sort'\ --data-urlencode 'cid=138995'\ --data-urlencode 'aid=583785685'\ --data-urlencode 'to=2'\ --data-urlencode 'csrf=xxx'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
### 检查频道中有无失效视频 > http://api.bilibili.com/x/space/channel/video/check *请求方式:GET* 认证方式:Cookie(SESSDATA) **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ---------- | ------ | ---- | | cid | num | 目标频道ID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-400:请求错误
-404:无此项
53005:频道内有失效视频 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | **示例:** 检查频道`138995` ```shell curl -G 'http://api.bilibili.com/x/space/channel/video/check --data-urlencode 'cid=138995'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1 } ```
## 收藏 ### 查询用户创建的视频收藏夹 > http://api.bilibili.com/x/v3/fav/folder/created/list-all *请求方式:GET* 认证方式:Cookie(SESSDATA) 查看私有收藏夹时需要认证 **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | up_mid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ----------------------------- | -------- | --------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | 隐藏时:null
公开时:obj | 信息本体 | | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | --------------------------------------- | -------------- | ---- | | count | num | 创建的收藏夹数 | | | list | 无收藏夹时:null
有收藏夹时:array | 收藏夹列表 | | `data`中的`list`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------- | --------------------- | | 0 | obj | 收藏夹1 | | | n | obj | 收藏夹(n+1) | 项数取决于`count`的值 | | …… | obj | …… | | `data`中的`list`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ----------- | ---- | ---------------- | ----------------------------------------- | | id | num | 收藏夹mlID | | | fid | num | 原始收藏夹ID | 去除两位UID尾号 | | mid | num | 创建用户UID | | | attr | num | 收藏夹属性 | 转换成8-bit二进制处理
详细说明见下表 | | title | str | 收藏夹标题 | | | fav_state | num | 0 | 作用尚不明确 | | media_count | num | 收藏夹总计视频数 | | `attr`属性二进制值表: | 其他有待补充... | 1:默认收藏夹 | 0:公开性 | | --------------- | -------------------------------- | -------------------- | | | 0:默认收藏夹
1:其他收藏夹 | 0:公开
1:私有 | **示例:** 查询用户`UID=7792521`的收藏夹列表 ```shell curl -G 'http://api.bilibili.com/x/v3/fav/folder/created/list-all'\ --data-urlencode 'up_mid=7792521'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": { "count": 5, "list": [{ "id": 44233921, "fid": 442339, "mid": 7792521, "attr": 0, "title": "默认收藏夹", "fav_state": 0, "media_count": 85 }, { "id": 936347621, "fid": 9363476, "mid": 7792521, "attr": 22, "title": "放假君的鬼畜私房歌", "fav_state": 0, "media_count": 2 }, { "id": 845218621, "fid": 8452186, "mid": 7792521, "attr": 22, "title": "♪一言不合就开唱♪", "fav_state": 0, "media_count": 4 }, { "id": 844998121, "fid": 8449981, "mid": 7792521, "attr": 22, "title": "个人作品精选", "fav_state": 0, "media_count": 25 }, { "id": 381779121, "fid": 3817791, "mid": 7792521, "attr": 22, "title": "鬼畜小课堂", "fav_state": 0, "media_count": 25 }] } } ```
### 查询用户收藏的视频收藏夹 > http://api.bilibili.com/x/v3/fav/folder/collected/list *请求方式:GET* **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | ps | num | 每页项数 | 必要 | | | pn | num | 页码 | 必要 | | | up_mid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ----------------------------- | -------- | ------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-111:csrf校验失败
40022:签名过长 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | 隐藏时:null
公开时:obj | 信息本体 | | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | --------------------------------------- | -------------- | ---- | | count | num | 创建的收藏夹数 | | | list | 无收藏夹时:null
有收藏夹时:array | 收藏夹列表 | | `data`中的`list`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------- | --------------------- | | 0 | obj | 收藏夹1 | | | n | obj | 收藏夹(n+1) | 项数取决于`count`的值 | | …… | obj | …… | | `data`中的`list`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ----------- | ---- | ------------------ | ----------------------------------------- | | id | num | 收藏夹mlID | | | fid | num | 原始收藏夹ID | 去除两位UID尾号 | | mid | num | 创建用户UID | | | attr | num | 收藏夹属性 | 转换成8-bit二进制处理
详细说明见下表 | | title | str | 收藏夹标题 | | | cover | str | 收藏夹封面图片url | | | upper | obj | 收藏夹创建用户信息 | | | cover_type | num | 2 | 作用尚不明确 | | intro | str | 空 | 作用尚不明确 | | ctime | num | 创建时间 | 时间戳 | | mtime | num | 审核时间 | 时间戳 | | state | num | 0 | 作用尚不明确 | | fav_state | num | 0 | 作用尚不明确 | | media_count | num | 收藏夹总计视频数 | | `attr`属性二进制值表: | 其他有待补充... | 1:默认收藏夹 | 0:公开性 | | --------------- | -------------------------------- | -------------------- | | | 0:默认收藏夹
1:其他收藏夹 | 0:公开
1:私有 | `data`中的`list`数组中的对象中的`upper`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | ---------- | ------------ | | mid | num | 创建人UID | | | name | str | 创建人昵称 | | | face | str | 空 | 作用尚不明确 | **示例:** 查询用户`UID=293793435`的收藏夹收藏列表 ```shell curl -G 'http://api.bilibili.com/x/v3/fav/folder/collected/list'\ --data-urlencode 'up_mid=293793435'\ --data-urlencode 'ps=20'\ --data-urlencode 'pn=1'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": { "count": 2, "list": [{ "id": 496307088, "fid": 4963070, "mid": 412466388, "attr": 22, "title": "入站必刷", "cover": "http://i0.hdslb.com/bfs/archive/baae2b4050363c0ab45465b7cf696b8304fdaca8.jpg", "upper": { "mid": 412466388, "name": "热门菌", "face": "" }, "cover_type": 2, "intro": "", "ctime": 1563394571, "mtime": 1563394571, "state": 0, "fav_state": 0, "media_count": 55 }, { "id": 381779121, "fid": 3817791, "mid": 7792521, "attr": 22, "title": "鬼畜小课堂", "cover": "http://i2.hdslb.com/bfs/archive/09a668cfdb38fb3a85f905c10f48a2947e36a695.jpg", "upper": { "mid": 7792521, "name": "还有一天就放假了", "face": "" }, "cover_type": 2, "intro": "", "ctime": 1553700224, "mtime": 1557291666, "state": 0, "fav_state": 0, "media_count": 25 }] } } ```
## 订阅 ### 订阅查询用户追番预览列表 > http://space.bilibili.com/ajax/Bangumi/getList *请求方式:GET* 认证方式:Cookie(SESSDATA) 如设置隐私查看自己的需要认证 带有转义,且只能获取最多15条 **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | mid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------ | ------------------------ | ---------------------------------- | --------------------------- | | status | bool | 状态 | false:失败
true:成功 | | data | 失败:str
成功:obj | 失败:错误信息
成功:信息本体 | | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ------ | ----- | ------------ | ------------ | | count | num | 总计追番数 | | | pages | num | 0 | 作用尚不明确 | | result | array | 追番预览列表 | | `data`中的`result`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------- | -------------------------- | | 0 | obj | 追番1 | | | n | obj | 追番(n+1) | 按照目标用户的关注顺序排列 | | …… | obj | …… | | | 14 | obj | 追番15 | 最后一项 | `data`中的`result`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---- | --------------- | --------------------------------- | | brief | str | 简介 | | | cover | str | 封面图片url | | | evaluate | str | 空 | | | favorites | num | 追番数 | | | is_finish | num | 是否已完结 | 0:未完结
1:已完结 | | last_ep_index | num | 0 | 作用尚不明确 | | newest_ep_index | num | 最新一话 | 可能为0 | | season_id | str | 番剧ssID | | | share_url | str | 播放页面链接url | | | title | str | 标题 | | | total_count | num | 总计集数 | 未完结:-1
已完结:非0正整数 | **示例:** 查看用户`UID=14082`的追番预览列表 ```shell curl -G 'http://space.bilibili.com/ajax/Bangumi/getList'\ --data-urlencode 'mid=14082'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "status": true, "data": { "count": 25, "pages": 0, "result": [{ "season_id": "29310", "share_url": "http:\/\/bangumi.bilibili.com\/anime\/29310\/", "title": "异度侵入 ID:INVADED", "is_finish": 1, "favorites": 3479220, "newest_ep_index": 13, "last_ep_index": 0, "total_count": 13, "cover": "http:\/\/i0.hdslb.com\/bfs\/bangumi\/image\/9bf9e66968f85b33ec3769a16c86b36dc984abbc.png", "evaluate": "", "brief": "本片讲述利用能检测出人们杀意的装置以及利用思想粒子做出的“井”,来探知事件真相的科幻故事。" }, { "season_id": "25739", "share_url": "http:\/\/bangumi.bilibili.com\/anime\/25739\/", "title": "关于我转生变成史莱姆这档事", "is_finish": 1, "favorites": 5518829, "newest_ep_index": 0, "last_ep_index": 0, "total_count": 27, "cover": "http:\/\/i0.hdslb.com\/bfs\/bangumi\/a4c0e0ccc44fe3949a734f546cf5bb07da925bad.png", "evaluate": "", "brief": "史莱姆生活,开始了。\n上班族的三上悟在道路上被歹徒给刺杀身亡后,回过神来发现自己转生到了异世界。\n不..." }, ………… ] } } ```
### 查询用户追番(追剧)明细 > http://api.bilibili.com/x/space/bangumi/follow/list *请求方式:GET* 认证方式:Cookie(SESSDATA) 如设置隐私查看自己的需要认证 **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | -------------------- | | vmid | num | 目标用户UID | 必要 | | | pn | num | 页码 | 非必要 | 默认为1 | | ps | num | 每页项数 | 非必要 | 默认为15 | | type | num | 查询类型 | 必要 | 1:追番
2:追剧 | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ---------------------------------------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误
53013:用户隐私设置未公开 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | | | data | obj | 信息本体 | | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ----- | ---------- | ---- | | list | array | 追番列表 | | | pn | num | 当前页码 | | | ps | num | 每页项数 | | | total | num | 总计追番数 | | `data`中的`list`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------- | -------------------------- | | 0 | obj | 追番1 | | | n | obj | 追番(n+1) | 按照目标用户的关注顺序排列 | | …… | obj | …… | | `data`中的`list`数组中的对象: 基本同「番剧详细信息」中的result对象(未完工) **示例:** 查看用户`UID=14082`的追番明细 ```shell curl -G 'http://api.bilibili.com/x/space/bangumi/follow/list'\ --data-urlencode 'vmid=14082'\ --data-urlencode 'type=1'\ --data-urlencode 'ps=2'\ --data-urlencode 'pn=1'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "code": 0, "message": "0", "ttl": 1, "data": { "list": [{ "season_id": 29310, "media_id": 28224080, "season_type": 1, "season_type_name": "番剧", "title": "异度侵入 ID:INVADED", "cover": "http://i0.hdslb.com/bfs/bangumi/image/9bf9e66968f85b33ec3769a16c86b36dc984abbc.png", "total_count": 13, "is_finish": 1, "is_started": 1, "is_play": 1, "badge": "会员专享", "badge_type": 0, "rights": { "allow_review": 1, "is_selection": 1, "selection_style": 1 }, "stat": { "follow": 3475768, "view": 87500861, "danmaku": 1334654, "reply": 316632, "coin": 835150, "series_follow": 3475242, "series_view": 87500861 }, "new_ep": { "id": 307774, "index_show": "全13话", "cover": "http://i0.hdslb.com/bfs/archive/3dce2b856a7b0ea667aa288b51b7c0478fa56c4d.jpg", "title": "13", "long_title": "CHANNELEDⅡ", "pub_time": "2020-03-23 00:30:00", "duration": 1481000 }, "rating": { "score": 9.8, "count": 262589 }, "square_cover": "http://i0.hdslb.com/bfs/bangumi/image/664dbf039ec2da8dd982b697a108e28e87b9897e.jpg", "season_status": 13, "season_title": "TV", "badge_ep": "会员", "media_attr": 196608, "season_attr": 0, "evaluate": "本片讲述利用能检测出人们杀意的装置以及利用思想粒子做出的“井”,来探知事件真相的科幻故事。...", "areas": [{ "id": 2, "name": "日本" }], "subtitle": "", "first_ep": 307446, "can_watch": 1, "series": { "series_id": 4760, "title": "ID:INVADED", "season_count": 1, "new_season_id": 29310 }, "publish": { "pub_time": "2020-01-06 00:30:00", "pub_time_show": "敬请期待", "release_date": "2020-01-06", "release_date_show": "2020年1月6日" }, "mode": 2, "section": [{ "section_id": 39327, "season_id": 29310, "limit_group": 328, "watch_platform": 15, "copyright": "dujia", "ban_area_show": 1 }, { "section_id": 39633, "season_id": 29310, "limit_group": 328, "watch_platform": 15, "type": 1, "copyright": "dujia", "title": "其他", "ban_area_show": 1 }, { "section_id": 44101, "season_id": 29310, "limit_group": 316, "watch_platform": 15, "type": 4, "copyright": "ugc", "ban_area_show": 1 }], "url": "https://www.bilibili.com/bangumi/play/ss29310", "follow_status": 2, "is_new": 0, "progress": "", "both_follow": true }, { "season_id": 25739, "media_id": 139252, "season_type": 1, "season_type_name": "番剧", "title": "关于我转生变成史莱姆这档事", "cover": "http://i0.hdslb.com/bfs/bangumi/a4c0e0ccc44fe3949a734f546cf5bb07da925bad.png", "total_count": 27, "is_finish": 1, "is_started": 1, "is_play": 1, "badge": "会员专享", "badge_type": 0, "rights": { "allow_review": 1, "is_selection": 1, "selection_style": 1 }, "stat": { "follow": 5516519, "view": 246739631, "danmaku": 3802465, "reply": 460225, "coin": 1338958, "series_follow": 5516535, "series_view": 246739631 }, "new_ep": { "id": 316957, "index_show": "全27话", "cover": "http://i0.hdslb.com/bfs/archive/81d07d1a478ce3a6209b557e14df9b9c78c42abb.jpg", "title": "OAD03", "long_title": "外传:利姆鲁的华丽教师生活 其一", "pub_time": "2020-03-27 00:00:03", "duration": 1493000 }, "rating": { "score": 9.4, "count": 83354 }, "square_cover": "http://i0.hdslb.com/bfs/bangumi/8d9f5b4a566d0547bc2e3f6f733b732a09c0d3d4.jpg", "season_status": 13, "season_title": "TV", "badge_ep": "会员", "media_attr": 0, "season_attr": 0, "evaluate": "史莱姆生活,开始了。\n上班族的三上悟在道路上被歹徒给刺杀身亡后,回过神来发现自己转生到了异世界。\n不过,自己居然是“史莱姆”!\n他在得到利姆鲁这个名字后开始了自己的史莱姆人生,随着与各个种族相处交流的...", "areas": [{ "id": 2, "name": "日本" }], "subtitle": "", "first_ep": 250460, "can_watch": 1, "series": { "series_id": 4188, "title": "关于我转生变成史莱姆这档事", "season_count": 1, "new_season_id": 25739 }, "publish": { "pub_time": "2018-10-02 00:30:00", "pub_time_show": "2018年10月02日00:30", "release_date": "2018-10-02", "release_date_show": "2018年10月2日" }, "mode": 2, "section": [{ "section_id": 34988, "season_id": 25739, "limit_group": 328, "watch_platform": 15, "copyright": "bilibili", "ban_area_show": 1 }], "url": "https://www.bilibili.com/bangumi/play/ss25739", "follow_status": 2, "is_new": 0, "progress": "", "both_follow": true }], "pn": 1, "ps": 2, "total": 25 } } ```
### 查询用户关注的TAG(话题) > http://space.bilibili.com/ajax/tags/getSubList *请求方式:GET* 认证方式:Cookie(SESSDATA) 如设置隐私查看自己的需要认证 带有转义 只显示前100个 **url参数:** | 参数名 | 类型 | 内容 | 必要性 | 备注 | | ------ | ---- | ----------- | ------ | ---- | | mid | num | 目标用户UID | 必要 | | **json回复:** 根对象: | 字段 | 类型 | 内容 | 备注 | | ------ | ---------------------------- | -------------------------------------- | --------------------------- | | ststus | bool | 返回值 | false:错误
true:正确 | | data | 错误时:str
正确时:obj | 错误时:错误信息
正确时:数据本体 | 正确时不返回错误信息 | `data`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ----- | ----------- | ---- | | tags | array | 关注TAG列表 | | | count | num | 关注TAG的数 | | `data`中的`tags`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | -------------- | -------- | | 0 | obj | 关注TAG1 | | | n | obj | 关注TAG(n+1) | | | …… | obj | …… | …… | | 99 | obj | 关注TAG100 | 最后一项 | `data`中的`tags`数组中的对象: | 字段 | 类型 | 内容 | 备注 | | ------------- | ---- | ------------------- | ------------ | | archive_count | num | 0 | 作用尚不明确 | | cover | str | TAG图片url | 无则为空 | | name | str | TAG名 | | | notify | num | 1 | 作用尚不明确 | | tag_id | num | TAGID | | | updated_ts | str | 1970-01-01 08:00:00 | 作用尚不明确 | **示例:** 查询用户`UID=2`的关注TAG ```shell curl -G 'http://space.bilibili.com/ajax/tags/getSubList'\ --data-urlencode 'mid=2'\ -b 'SESSDATA=xxx' ```
查看响应示例: ```json { "status": true, "data": { "tags": [{ "name": "豪宅", "cover": "", "tag_id": 47637, "notify": 1, "archive_count": 0, "updated_ts": "1970-01-01 08:00:00" }, { "name": "死亡搁浅", "cover": "", "tag_id": 1737239, "notify": 1, "archive_count": 0, "updated_ts": "1970-01-01 08:00:00" }, ………… ], "count": 58 } } ```