diff --git a/README.md b/README.md index 5a90b64..01d0f1d 100644 --- a/README.md +++ b/README.md @@ -257,6 +257,8 @@ B站 API 采用 C/S 结构,大多数接口为 REST API 和 gRPC,少部分接 - [ ] [直播心跳上报](docs/live/report.md) - [ ] [直播间弹幕](docs/live/danmaku.md) - [ ] [直播流水](docs/live/live_bill.md) + - [ ] [礼物相关](docs/live/gift.md) + - [ ] [大航海/粉丝团](docs/live/guard.md) - [ ] [活动](docs/activity) - [ ] [活动列表](docs/activity/list.md) - [ ] [活动主题信息](docs/activity/info.md) diff --git a/docs/clientinfo/ip.md b/docs/clientinfo/ip.md index 841f3c3..a767cff 100644 --- a/docs/clientinfo/ip.md +++ b/docs/clientinfo/ip.md @@ -5,6 +5,8 @@ > https://api.bilibili.com/x/web-interface/zone > > https://api.live.bilibili.com/xlive/web-room/v1/index/getIpInfo +> +> https://app.bilibili.com/x/resource/ip *请求方式:GET* diff --git a/docs/dynamic/detail.md b/docs/dynamic/detail.md index a0bb866..121377b 100644 --- a/docs/dynamic/detail.md +++ b/docs/dynamic/detail.md @@ -3,6 +3,7 @@ ## 动态详情 > https://api.bilibili.com/x/polymer/web-dynamic/v1/detail +> https://api.bilibili.com/x/polymer/web-dynamic/desktop/v1/detail *请求方式: GET* diff --git a/docs/dynamic/space.md b/docs/dynamic/space.md index 0a150f9..7011e10 100644 --- a/docs/dynamic/space.md +++ b/docs/dynamic/space.md @@ -1,6 +1,8 @@ # 获取用户空间动态 > https://api.bilibili.com/x/polymer/web-dynamic/v1/feed/space +> +> https://api.bilibili.com/x/polymer/web-dynamic/desktop/v1/feed/space 请求方式:`GET` diff --git a/docs/live/gift.md b/docs/live/gift.md new file mode 100644 index 0000000..daa99a1 --- /dev/null +++ b/docs/live/gift.md @@ -0,0 +1,191 @@ +## 获取直播间内礼物 + +> https://api.live.bilibili.com/xlive/web-room/v1/giftPanel/roomGiftList + +*请求方式:GET* + +认证方式:无 (无需添加Cookie) + +**url参数:** + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| -------------- | ---- | ---------- | ------ | -------------------------------- | +| platform | str | web | 必要 | | +| room_id | num | 主播房间号 | 必要 | | +| area_parent_id | num | 直播分区 | 非必要 | 不填写可能会获取不到部分活动礼物 | +| area_id | num | 直播子分区 | 非必要 | 不填写可能会获取不到部分活动礼物 | + +**json回复:** + + + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------- | +| code | num | 返回值 | 0:成功 | +| message | str | 错误信息 | | +| data | obj | 信息本体 | | + +`data.gift_config.base_config.list` 数组中的对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------------------- | ---- | ------------------- | --------------------------- | +| id | num | 礼物id | | +| name | str | 礼物名字 | | +| price | num | 该值/1000的单位为元 | | +| type | num | | | +| coin_type | str | 一般为gold,即电池 | | +| effect | num | 特效类型? | 观察到可能出现的值为0,2,3 | +| stay_time | num | 礼物展示的时间? | 均为3 | +| animation_frame_num | num | 礼物动画帧数 | | +| desc | str | 礼物描述 | | +| img_basic | str | 礼物图片 | | +| gif | str | 礼物gif动画 | | + +**示例:** + +查询`room_id=23375552`的直播间礼物信息 + +```shell +curl 'https://api.live.bilibili.com/xlive/web-room/v1/giftPanel/roomGiftList?platform=pc&room_id=23174842' +``` + +## 获取盲盒概率 + +> https://api.live.bilibili.com/xlive/general-interface/v1/blindFirstWin/getInfo + +*请求方式:GET* + +认证方式:无 (无需添加Cookie) + +**url参数:** + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ------- | ---- | ---- | ---------------- | ---- | +| gift_id | num | | 盲盒对应的礼物id | | + +**json回复:** + + + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------- | +| code | num | 返回值 | 0:成功 | +| message | str | 错误信息 | | +| data | obj | 信息本体 | | + +`data`中的对象: + +| 字段 | 类型 | 内容 | 备注 | +| --------------- | ----- | -------- | ---- | +| note_text | str | 描述 | | +| blind_price | num | 盲盒价格 | | +| blind_gift_name | str | 盲盒名字 | | +| gifts | array | 盲盒价格 | | + +`gifts数组`中的对象: + +| 字段 | 类型 | 内容 | 备注 | +| --------- | ---- | -------------- | ---- | +| gift_id | num | 爆出的礼物id | | +| price | num | 爆出的礼物价格 | | +| gift_name | str | 礼物名字 | | +| gift_img | str | 礼物图片 | | +| chance | str | 概率 | | + +**示例:** + +查询`心动盲盒`的概率 + +```shell +curl 'https://api.live.bilibili.com/xlive/general-interface/v1/blindFirstWin/getInfo?gift_id=32251' +``` + +
+查看响应示例: + +```json +{ + "code": 0, + "message": "0", + "ttl": 1, + "data": { + "note_text": "每日1次机会,首次投喂盲盒时享首抽福利!", + "blind_price": 15000, + "gifts": [ + { + "gift_id": 32125, + "price": 2000, + "gift_name": "电影票", + "gift_img": "https://s1.hdslb.com/bfs/live/20864a10beaea541c7dce264d5bbc56676d63e4f.png", + "is_win_gift": 0, + "chance": "6%" + }, + { + "gift_id": 32126, + "price": 9000, + "gift_name": "棉花糖", + "gift_img": "https://s1.hdslb.com/bfs/live/b555682af41551c28f8ad19dc5c4ed87943c84f4.png", + "is_win_gift": 0, + "chance": "44.5%" + }, + { + "gift_id": 32128, + "price": 16000, + "gift_name": "爱心抱枕", + "gift_img": "https://s1.hdslb.com/bfs/live/824714c830966d7bec381e35ef808b1f478e21ee.png", + "is_win_gift": 1, + "chance": "45.56%" + }, + { + "gift_id": 32281, + "price": 40000, + "gift_name": "绮彩权杖", + "gift_img": "https://s1.hdslb.com/bfs/live/5cecbf274a4205ef76ed3f11c6540f0c6743363c.png", + "is_win_gift": 1, + "chance": "3.7%" + }, + { + "gift_id": 32282, + "price": 100000, + "gift_name": "时空之站", + "gift_img": "https://s1.hdslb.com/bfs/live/9ee53aedda3c891fdf23d35c14b3bdc4e0504a97.png", + "is_win_gift": 1, + "chance": "0.12%" + }, + { + "gift_id": 34894, + "price": 200000, + "gift_name": "蛇形护符", + "gift_img": "https://s1.hdslb.com/bfs/live/2127dd998083a8981ef4e31a4e6787ce5a4d0f9f.png", + "is_win_gift": 1, + "chance": "0.08%" + }, + { + "gift_id": 32132, + "price": 2233000, + "gift_name": "浪漫城堡", + "gift_img": "https://s1.hdslb.com/bfs/live/216fac597b3c5619d56ed332bcf5f880ea657e8e.png", + "is_win_gift": 1, + "chance": "0.04%" + } + ], + "friday_yq_id": 106472, + "is_first": true, + "ab_res": 1, + "uid": 451537183, + "conf_id": 51, + "pre_imgs": [ + { + "gift_id": 32132, + "preview_url": "http://i0.hdslb.com/bfs/live/e40708d0c8ef9505027ac33ad2a17a23e8e01139.mp4" + } + ], + "blind_gift_name": "心动盲盒" + } +} +``` +
\ No newline at end of file diff --git a/docs/live/guard.md b/docs/live/guard.md new file mode 100644 index 0000000..2938907 --- /dev/null +++ b/docs/live/guard.md @@ -0,0 +1,592 @@ +## 查询大航海成员 +> https://api.live.bilibili.com/xlive/app-room/v2/guardTab/topListNew + +*请求方式: GET* + +认证方式:无(无需Cookie) + +**URL参数:** + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| --------- | ---- | -------- | ------ | --------------------------------------- | +| roomid | num | 直播间号 | 必要 | | +| page | num | 页数 | 必要 | | +| ruid | num | 主播id | 必要 | | +| page_size | num | 页大小 | 非必要 | 默认20,最大30,若超过则作为10处理 | +| typ | num | 排序方式 | 非必要 | typ=3,4,5分别为按周/月/总航海亲密度排序 | + +**json回复:** + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------- | +| code | num | 返回值 | 0:成功 | +| message | str | 错误信息 | | +| data | obj | 信息本体 | | + +`data`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ----- | -------------- | --------------------------------------- | +| info | obj | 主播mid | | +| top3 | array | 整个列表的top3 | +| list | array | 大航海成员 | page=1时,list[0]得到的会是榜单的第四名 | + +`list`对象: + +| 字段 | 类型 | 内容 | 备注 | +| --------- | ---- | -------- | ----- | +| ruid | num | 主播UID | | +| rank | num | 榜单排名 | | +| accompany | num | 陪伴天数 | | +| uinfo | obj | 用户信息 | | +| score | num | 亲密度 | 恒为0 | + +`list`对象的`uinfo`: +| 字段 | 类型 | 内容 | 备注 | +| ----- | ---- | ------------ | -------------------------------------------------------- | +| uid | num | 用户UID | | +| base | obj | 用户基本信息 | | +| medal | obj | 粉丝牌 | 与[此处](/bilibili-API-collect/docs/user/medals)基本一致 | + +`list`对象的`uinfo`的`base`: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ------ | -------- | ---- | +| name | string | 用户名 | | +| face | string | 用戶头像 | | + + +**示例:** + +查询`23174842`直播间的大航海成员 + + +```shell +curl ' https://api.live.bilibili.com/xlive/app-room/v2/guardTab/topListNew?ruid=504140200&roomid=23174842&page=1' +``` + + +
+查看响应示例: + +```json +{ + "code": 0, + "message": "0", + "ttl": 1, + "data": { + "info": { + "num": 23, + "page": 10, + "now": 1, + "achievement_level": 1, + "anchor_guard_achieve_level": 0, + "achievement_icon_src": "", + "buy_guard_icon_src": "https://i0.hdslb.com/bfs/live/4a481b491767f9d91165a4631252de4503d63a17.png", + "rule_doc_src": "", + "ex_background_src": "https://i0.hdslb.com/bfs/live/d0e938839a9dee733e8a7f9f6a3a132108ae22bc.png", + "color_start": "", + "color_end": "", + "tab_color": [ + "#4DDDDBD5", + "#26CFCBC0" + ], + "title_color": [ + "#FFC9CCD0", + "#FF9499A0" + ] + }, + "list": [ + { + "ruid": 504140200, + "rank": 4, + "accompany": 36, + "uinfo": { + "uid": 432911315, + "base": { + "name": "幻想乡的年华", + "face": "https://i2.hdslb.com/bfs/face/5ddde7a8466aa2d60d082ccfc08a0267445b193b.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": null, + "origin_info": { + "name": "幻想乡的年华", + "face": "https://i2.hdslb.com/bfs/face/5ddde7a8466aa2d60d082ccfc08a0267445b193b.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "软饭兔", + "level": 25, + "color_start": 398668, + "color_end": 6850801, + "color_border": 16771156, + "color": 398668, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 504140200, + "guard_level": 2, + "score": 0, + "guard_icon": "", + "honor_icon": "", + "v2_medal_color_start": "#4775EFCC", + "v2_medal_color_end": "#4775EFCC", + "v2_medal_color_border": "#58A1F8FF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#000B7099", + "user_receive_count": 0 + }, + "wealth": null, + "title": null, + "guard": { + "level": 2, + "expired_str": "" + }, + "uhead_frame": null, + "guard_leader": null + }, + "score": 0 + }, + { + "ruid": 504140200, + "rank": 5, + "accompany": 513, + "uinfo": { + "uid": 7816639, + "base": { + "name": "在这样的时光", + "face": "https://i1.hdslb.com/bfs/face/3b0091dda76e095351907e9c708b9571716aa3e1.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": null, + "origin_info": { + "name": "在这样的时光", + "face": "https://i1.hdslb.com/bfs/face/3b0091dda76e095351907e9c708b9571716aa3e1.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "软饭兔", + "level": 30, + "color_start": 2951253, + "color_end": 10329087, + "color_border": 6809855, + "color": 2951253, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 504140200, + "guard_level": 3, + "score": 0, + "guard_icon": "", + "honor_icon": "", + "v2_medal_color_start": "#9660E5CC", + "v2_medal_color_end": "#9660E5CC", + "v2_medal_color_border": "#D47AFFFF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#6C00A099", + "user_receive_count": 0 + }, + "wealth": null, + "title": null, + "guard": { + "level": 3, + "expired_str": "" + }, + "uhead_frame": null, + "guard_leader": null + }, + "score": 0 + } + ], + "top3": [ + { + "ruid": 504140200, + "rank": 1, + "accompany": 306, + "uinfo": { + "uid": 85743027, + "base": { + "name": "-小fa---", + "face": "https://i0.hdslb.com/bfs/face/82b2d0fef27b7b69be0d121b3ef0491504bbaae8.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": null, + "origin_info": { + "name": "-小fa---", + "face": "https://i0.hdslb.com/bfs/face/82b2d0fef27b7b69be0d121b3ef0491504bbaae8.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "软饭兔", + "level": 30, + "color_start": 2951253, + "color_end": 10329087, + "color_border": 16771156, + "color": 2951253, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 504140200, + "guard_level": 2, + "score": 0, + "guard_icon": "", + "honor_icon": "", + "v2_medal_color_start": "#9660E5CC", + "v2_medal_color_end": "#9660E5CC", + "v2_medal_color_border": "#D47AFFFF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#6C00A099", + "user_receive_count": 0 + }, + "wealth": null, + "title": null, + "guard": { + "level": 2, + "expired_str": "" + }, + "uhead_frame": null, + "guard_leader": null + }, + "score": 0 + }, + { + "ruid": 504140200, + "rank": 2, + "accompany": 1005, + "uinfo": { + "uid": 28601039, + "base": { + "name": "捏软软的上帝", + "face": "https://i2.hdslb.com/bfs/face/1f2a9b20294452d5c6ce9f40c66b186ef57b92e5.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": null, + "origin_info": { + "name": "捏软软的上帝", + "face": "https://i2.hdslb.com/bfs/face/1f2a9b20294452d5c6ce9f40c66b186ef57b92e5.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "软饭兔", + "level": 29, + "color_start": 2951253, + "color_end": 10329087, + "color_border": 16771156, + "color": 2951253, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 504140200, + "guard_level": 2, + "score": 0, + "guard_icon": "", + "honor_icon": "", + "v2_medal_color_start": "#9660E5CC", + "v2_medal_color_end": "#9660E5CC", + "v2_medal_color_border": "#D47AFFFF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#6C00A099", + "user_receive_count": 0 + }, + "wealth": null, + "title": null, + "guard": { + "level": 2, + "expired_str": "" + }, + "uhead_frame": null, + "guard_leader": null + }, + "score": 0 + }, + { + "ruid": 504140200, + "rank": 3, + "accompany": 95, + "uinfo": { + "uid": 3546834244995088, + "base": { + "name": "老实逸流-恩师软软riu", + "face": "https://i1.hdslb.com/bfs/face/0b1f95d926acfb06c8d7d9c66d2e1fabf3e1a3c4.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": null, + "origin_info": { + "name": "老实逸流-恩师软软riu", + "face": "https://i1.hdslb.com/bfs/face/0b1f95d926acfb06c8d7d9c66d2e1fabf3e1a3c4.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "软饭兔", + "level": 28, + "color_start": 398668, + "color_end": 6850801, + "color_border": 16771156, + "color": 398668, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 504140200, + "guard_level": 2, + "score": 0, + "guard_icon": "", + "honor_icon": "", + "v2_medal_color_start": "#4775EFCC", + "v2_medal_color_end": "#4775EFCC", + "v2_medal_color_border": "#58A1F8FF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#000B7099", + "user_receive_count": 0 + }, + "wealth": null, + "title": null, + "guard": { + "level": 2, + "expired_str": "" + }, + "uhead_frame": null, + "guard_leader": null + }, + "score": 0 + } + ], + "my_follow_info": { + "accompany_days": 0, + "auto_renew": 0, + "renew_remind": { + "content": "", + "type": 0, + "hint": "" + }, + "rank": 0, + "ruid": 0, + "uinfo": null, + "expired_time": "" + }, + "guard_warn": { + "is_warn": 0, + "warn": "", + "expired": 0, + "will_expired": 0, + "address": "" + }, + "exist_benefit": false, + "remind_benefit": "立即上船", + "ab": { + "guard_accompany_list": 1 + }, + "remind_msg": "头号粉丝大航海,上船后可上榜", + "typ": 0, + "extop": null, + "guard_leader": null, + "main_text": "", + "sub_text": "", + "btn_type": 1, + "prompt_text": "头号粉丝大航海,等你来上船" + } +} +``` + +
+ + +## 查询粉丝团成员 + + +> https://api.live.bilibili.com/xlive/general-interface/v1/rank/getFansMembersRank + +*请求方式: GET* + +认证方式:无(无需Cookie) + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| --------- | ---- | -------------- | ------------------- | ----------------------------------------------------------------------------------------------- | +| page | num | 页数 | 必要 | | +| ruid | num | 主播id | 必要 | | +| page_size | num | 每页返回的数量 | 必要 | 最大30,若超过则作为10处理 | +| rank_type | num | 排序方式 | 非必要 | 1:按照粉丝牌还亮着的粉丝团成员的亲密度排序
2:按照**所有**没上过舰的粉丝团成员的亲密度排序 | +| ts | num | 13位时间戳 | 当rank_type=2时必要 | 该值>=1000即可 | + +**json回复:** + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------- | +| code | num | 返回值 | 0:成功 | +| message | str | 错误信息 | | +| data | obj | 信息本体 | | + +`data`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------------ | ----- | -------------- | ---- | +| item | array | 内容 | | +| num | num | 粉丝团成员数量 | +| medal_status | num | | + +`list`对象 + +| 字段 | 类型 | 内容 | 备注 | +| ------------------ | ---- | ---------------------------------------------------------------- | ---- | +| user_rank | num | 排名 | +| uid | num | 用户UID | +| name | str | 用户名 | +| face | str | 用户头像 | +| score | num | 亲密度 | +| medal_name | str | 粉丝牌名字 | +| level | num | 粉丝牌等级 | +| target_id | num | 主播UID | +| guard_level | num | 大航海类型,1,2,3分别为总督,提督,舰长 | +| medal_color_start | num | 粉丝牌渐变起始色 | +| medal_color_end | num | 粉丝牌渐变结束色 | +| medal_color_border | num | 粉丝牌边框颜色 | +| guard_icon | str | 大航海图标URL | +| uinfo_medal | obj | 粉丝牌,与[此处](/bilibili-API-collect/docs/user/medals)基本一致 | + + +**示例:** + +查询用户`504140200`的粉丝团成员 + +```shell +curl 'https://api.live.bilibili.com/xlive/general-interface/v1/rank/getFansMembersRank?ruid=504140200&page_size=10&page=1' +``` + +
+查看响应示例: + +```json +{ + "code": 0, + "message": "0", + "ttl": 1, + "data": { + "item": [ + { + "user_rank": 1, + "uid": 85743027, + "name": "小软兔のfa", + "face": "https://i0.hdslb.com/bfs/face/bdbcabf8d927844ae4f8f9c65862077e29afb989.jpg", + "score": 50990540, + "medal_name": "软饭兔", + "level": 30, + "target_id": 504140200, + "special": "", + "guard_level": 3, + "medal_color_start": 2951253, + "medal_color_end": 10329087, + "medal_color_border": 6809855, + "guard_icon": "https://i0.hdslb.com/bfs/live/143f5ec3003b4080d1b5f817a9efdca46d631945.png", + "honor_icon": "", + "uinfo_medal": { + "name": "软饭兔", + "level": 30, + "color_start": 2951253, + "color_end": 10329087, + "color_border": 6809855, + "color": 0, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 504140200, + "guard_level": 3, + "score": 50990540, + "guard_icon": "https://i0.hdslb.com/bfs/live/143f5ec3003b4080d1b5f817a9efdca46d631945.png", + "honor_icon": "", + "v2_medal_color_start": "#9660E5CC", + "v2_medal_color_end": "#9660E5CC", + "v2_medal_color_border": "#D47AFFFF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#6C00A099", + "user_receive_count": 0 + }, + "tag": null, + "is_pokeable": false + }, + { + "user_rank": 2, + "uid": 7816639, + "name": "在这样的时光", + "face": "https://i1.hdslb.com/bfs/face/3b0091dda76e095351907e9c708b9571716aa3e1.jpg", + "score": 50704568, + "medal_name": "软饭兔", + "level": 30, + "target_id": 504140200, + "special": "", + "guard_level": 3, + "medal_color_start": 2951253, + "medal_color_end": 10329087, + "medal_color_border": 6809855, + "guard_icon": "https://i0.hdslb.com/bfs/live/143f5ec3003b4080d1b5f817a9efdca46d631945.png", + "honor_icon": "", + "uinfo_medal": { + "name": "软饭兔", + "level": 30, + "color_start": 2951253, + "color_end": 10329087, + "color_border": 6809855, + "color": 0, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 504140200, + "guard_level": 3, + "score": 50704568, + "guard_icon": "https://i0.hdslb.com/bfs/live/143f5ec3003b4080d1b5f817a9efdca46d631945.png", + "honor_icon": "", + "v2_medal_color_start": "#9660E5CC", + "v2_medal_color_end": "#9660E5CC", + "v2_medal_color_border": "#D47AFFFF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#6C00A099", + "user_receive_count": 0 + }, + "tag": null, + "is_pokeable": false + } + ], + "num": 89, + "medal_status": 1 + } +} +``` + +
diff --git a/docs/live/user.md b/docs/live/user.md index 9a6fb5f..560998e 100644 --- a/docs/live/user.md +++ b/docs/live/user.md @@ -1,6 +1,6 @@ # 直播间用户实用 API -## 获取用户持有的粉丝勋章信息 +## 获取自己持有的粉丝勋章信息 > ~~https://api.live.bilibili.com/fans_medal/v5/live_fans_medal/iApiMedal~~ (旧) > https://api.live.bilibili.com/xlive/app-ucenter/v1/user/GetMyMedals @@ -20,12 +20,12 @@ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ----------------------------------------------------- | | code | num | 返回值 | 0:成功
-1002002:参数异常
-500:服务器异常 | -| message | str | 错误信息 | 默认为 "0" | -| ttl | num | 1 | | -| data | obj | 信息本体 | | +| message | str | 错误信息 | 默认为 "0" | +| ttl | num | 1 | | +| data | obj | 信息本体 | | `data`对象: @@ -44,7 +44,7 @@ | guard_level | num | | | | guard_medal_title | str | 加成状态 | | | intimacy | num | 当前已得亲密度 | | -| is_lighted | num | 是否点亮 | 0:未点亮
1:点亮 | +| is_lighted | num | 是否点亮 | 0:未点亮
1:点亮 | | level | num | 勋章等级 | | | medal_name | str | 勋章名 | | | medal_color_border | num | 勋章边框颜色信息 | 颜色数值为 10 进制的 16 进制值(下同) | @@ -116,6 +116,7 @@ curl https://api.live.bilibili.com/xlive/app-ucenter/v1/user/GetMyMedals?page=1& + ## 佩戴勋章 > https://api.live.bilibili.com/xlive/web-room/v1/fansMedal/wear @@ -193,12 +194,12 @@ _请求方式:GET_ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ---------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------------------------ | | code | num | 返回值 | 0:成功
1:参数错误 | -| ttl | num | 1 | | -| message | str | 错误信息 | 默认为当日签到奖励内容 | -| data | obj | 信息本体 | 默认为空 | +| ttl | num | 1 | | +| message | str | 错误信息 | 默认为当日签到奖励内容 | +| data | obj | 信息本体 | 默认为空 | (目前已下线) @@ -229,29 +230,29 @@ _请求方式:GET_ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ---------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------- | | code | num | 返回值 | 0:成功 | -| ttl | num | 1 | | +| ttl | num | 1 | | | message | str | 错误信息 | 默认为0 | -| data | obj | 信息本体 | | +| data | obj | 信息本体 | | `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| ----------------- | ----- | ---------------------------- | ---------------------- | -| text | str | 今日签到奖励信息 | 默认为空 | -| specialText | str | 连续签到奖励信息 | 默认为空 | +| 字段 | 类型 | 内容 | 备注 | +| ----------------- | ----- | ---------------------------- | ------------------------ | +| text | str | 今日签到奖励信息 | 默认为空 | +| specialText | str | 连续签到奖励信息 | 默认为空 | | status | num | 签到状态 | 0:未签到
1:已签到 | -| allDays | num | 当月天数 | | -| curMonth | num | 当前月 | | -| curYear | num | 当前年 | | -| curDay | num | 当前日 | | -| curData | str | 当前日期(格式化) | eg: 2023-2-19 | -| hadSignDays | num | 当月已签到天数 | 默认为0 | -| newTask | num | 作用未知 | 默认为0 | -| signDaysList | array | 当月已签到日列表 | 默认为空 | -| signBonusDaysList | array | 当月已签到且有特殊奖励日列表 | 默认为空 | +| allDays | num | 当月天数 | | +| curMonth | num | 当前月 | | +| curYear | num | 当前年 | | +| curDay | num | 当前日 | | +| curData | str | 当前日期(格式化) | eg: 2023-2-19 | +| hadSignDays | num | 当月已签到天数 | 默认为0 | +| newTask | num | 作用未知 | 默认为0 | +| signDaysList | array | 当月已签到日列表 | 默认为空 | +| signBonusDaysList | array | 当月已签到且有特殊奖励日列表 | 默认为空 |
查看响应示例: @@ -308,12 +309,12 @@ _请求方式:GET_ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ---------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------- | | code | num | 返回值 | 0:成功 | -| ttl | num | 1 | | +| ttl | num | 1 | | | message | str | 错误信息 | 默认为0 | -| data | obj | 信息本体 | | +| data | obj | 信息本体 | | `data`对象: @@ -368,3 +369,880 @@ _请求方式:GET_ ```
+ +## 查询直播间贡献榜 + +> https://api.live.bilibili.com//xlive/general-interface/v1/rank/getOnlineGoldRank + +*请求方式:GET* + +认证方式:无 + +**url 参数:** + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| -------- | ---- | -------------- | ------ | ------ | +| roomId | num | 房间号 | 必要 | | +| page | num | 返回结果页数 | 必要 | | +| pageSize | num | 返回结果页大小 | 必要 | 最大50 | +| ruid | num | 主播uid | 必要 | | + +**json 回复:** + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ---- | +| code | num | 返回值 | | +| message | str | 错误信息 | | +| ttl | num | 1 | | +| data | obj | 信息本体 | + + + + + +`data`中的对象: + +| 字段 | 类型 | 内容 | 备注 | +| -------------- | ----- | ------------ | ---- | +| onlineNum | num | 在线观众数量 | | +| OnlineRankItem | array | 结果 | | | + +`OnlineRankItem`数组中的对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------------ | ---- | ------------ | ---- | +| userRank | num | 贡献值排名 | | +| uid | num | 用户id | | | +| name | str | 用户名字 | | | +| face | str | 用户头像 | | | +| score | num | 贡献值 | | | +| medalInfo | obj | 粉丝牌对象 | | | +| guard_level | num | 大航海类型 | | | +| wealth_level | num | 荣耀等级 | | | +| guard_level | num | 大航海类型 | | | +| uinfo | obj | 用户详细信息 | | | + +`uinfo`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ----- | ---- | ------------ | ---- | +| uid | num | 用户uid | | +| base | obj | 用户基本信息 | | | +| medal | obj | 用户粉丝牌 | | | +| face | str | 用户头像 | | | +| guard | obj | 大航海 | | | + +`guard`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ----------- | ---- | -------------- | ---- | +| level | num | 大航海类型 | | +| expired_str | str | 大航海到期时间 | | | + + +**示例:** + +查询`23174842`直播间的大航海成员 + + +```shell +curl 'https://api.live.bilibili.com//xlive/general-interface/v1/rank/getOnlineGoldRank?roomId=26854650&ruid=3493118494116797&page=3&pageSize=20' +``` + +
+查看响应示例: + +```json +{ + "code": 0, + "message": "0", + "ttl": 1, + "data": { + "onlineNum": 45, + "OnlineRankItem": [ + { + "userRank": 1, + "uid": 36136895, + "name": "四月hallu", + "face": "https://i2.hdslb.com/bfs/face/5e5166ecc4c17d4dbc7a09dbb6bb749d9f537985.jpg", + "score": 3768, + "medalInfo": { + "guardLevel": 3, + "medalColorStart": 2951253, + "medalColorEnd": 10329087, + "medalColorBorder": 6809855, + "medalName": "钢板鹿", + "level": 29, + "targetId": 3493118494116797, + "isLight": 1 + }, + "guard_level": 3, + "wealth_level": 41, + "is_mystery": false, + "uinfo": { + "uid": 36136895, + "base": { + "name": "四月hallu", + "face": "https://i2.hdslb.com/bfs/face/5e5166ecc4c17d4dbc7a09dbb6bb749d9f537985.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": { + "name": "四月hallu", + "face": "https://i2.hdslb.com/bfs/face/5e5166ecc4c17d4dbc7a09dbb6bb749d9f537985.jpg" + }, + "origin_info": { + "name": "四月hallu", + "face": "https://i2.hdslb.com/bfs/face/5e5166ecc4c17d4dbc7a09dbb6bb749d9f537985.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "钢板鹿", + "level": 29, + "color_start": 2951253, + "color_end": 10329087, + "color_border": 6809855, + "color": 2951253, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 3493118494116797, + "guard_level": 3, + "score": 50422604, + "guard_icon": "https://i0.hdslb.com/bfs/live/143f5ec3003b4080d1b5f817a9efdca46d631945.png", + "honor_icon": "", + "v2_medal_color_start": "#9660E5CC", + "v2_medal_color_end": "#9660E5CC", + "v2_medal_color_border": "#D47AFFFF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#6C00A099", + "user_receive_count": 0 + }, + "wealth": { + "level": 41, + "dm_icon_key": "ChronosWealth_4.png" + }, + "title": null, + "guard": { + "level": 3, + "expired_str": "2025-07-07 23:59:59" + }, + "uhead_frame": null, + "guard_leader": null + } + }, + { + "userRank": 2, + "uid": 1182882611, + "name": "重生指令", + "face": "https://i2.hdslb.com/bfs/face/6762c39b424e6de5bf0292fd12a019201a501fb9.jpg", + "score": 1546, + "medalInfo": { + "guardLevel": 0, + "medalColorStart": 12632256, + "medalColorEnd": 12632256, + "medalColorBorder": 12632256, + "medalName": "雪狐咕", + "level": 24, + "targetId": 477792, + "isLight": 0 + }, + "guard_level": 3, + "wealth_level": 22, + "is_mystery": false, + "uinfo": { + "uid": 1182882611, + "base": { + "name": "重生指令", + "face": "https://i2.hdslb.com/bfs/face/6762c39b424e6de5bf0292fd12a019201a501fb9.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": { + "name": "重生指令", + "face": "https://i2.hdslb.com/bfs/face/6762c39b424e6de5bf0292fd12a019201a501fb9.jpg" + }, + "origin_info": { + "name": "重生指令", + "face": "https://i2.hdslb.com/bfs/face/6762c39b424e6de5bf0292fd12a019201a501fb9.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "雪狐咕", + "level": 24, + "color_start": 12632256, + "color_end": 12632256, + "color_border": 12632256, + "color": 1725515, + "id": 0, + "typ": 0, + "is_light": 0, + "ruid": 477792, + "guard_level": 0, + "score": 50010220, + "guard_icon": "", + "honor_icon": "", + "v2_medal_color_start": "#919298CC", + "v2_medal_color_end": "#919298CC", + "v2_medal_color_border": "#919298CC", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#6C6C7299", + "user_receive_count": 0 + }, + "wealth": { + "level": 22, + "dm_icon_key": "" + }, + "title": null, + "guard": { + "level": 3, + "expired_str": "2025-06-29 23:59:59" + }, + "uhead_frame": null, + "guard_leader": null + } + }, + { + "userRank": 3, + "uid": 35007043, + "name": "_单推哈鹿halluの狐狸", + "face": "https://i1.hdslb.com/bfs/face/6373a98189480661fc725494ab5ab68253522b8f.jpg", + "score": 1543, + "medalInfo": { + "guardLevel": 2, + "medalColorStart": 2951253, + "medalColorEnd": 10329087, + "medalColorBorder": 16771156, + "medalName": "钢板鹿", + "level": 29, + "targetId": 3493118494116797, + "isLight": 1 + }, + "guard_level": 2, + "wealth_level": 40, + "is_mystery": false, + "uinfo": { + "uid": 35007043, + "base": { + "name": "_单推哈鹿halluの狐狸", + "face": "https://i1.hdslb.com/bfs/face/6373a98189480661fc725494ab5ab68253522b8f.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": { + "name": "_单推哈鹿halluの狐狸", + "face": "https://i1.hdslb.com/bfs/face/6373a98189480661fc725494ab5ab68253522b8f.jpg" + }, + "origin_info": { + "name": "_单推哈鹿halluの狐狸", + "face": "https://i1.hdslb.com/bfs/face/6373a98189480661fc725494ab5ab68253522b8f.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "钢板鹿", + "level": 29, + "color_start": 2951253, + "color_end": 10329087, + "color_border": 16771156, + "color": 2951253, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 3493118494116797, + "guard_level": 2, + "score": 50360413, + "guard_icon": "https://i0.hdslb.com/bfs/live/98a201c14a64e860a758f089144dcf3f42e7038c.png", + "honor_icon": "", + "v2_medal_color_start": "#9660E5CC", + "v2_medal_color_end": "#9660E5CC", + "v2_medal_color_border": "#D47AFFFF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#6C00A099", + "user_receive_count": 0 + }, + "wealth": { + "level": 40, + "dm_icon_key": "ChronosWealth_4.png" + }, + "title": null, + "guard": { + "level": 2, + "expired_str": "2025-07-30 23:59:59" + }, + "uhead_frame": null, + "guard_leader": null + } + }, + { + "userRank": 7, + "uid": 44152084, + "name": "_柚_子_hallu", + "face": "https://i1.hdslb.com/bfs/face/137498c2c6a3231e5b6047af12a64bbd19627dcb.jpg", + "score": 324, + "medalInfo": { + "guardLevel": 3, + "medalColorStart": 398668, + "medalColorEnd": 6850801, + "medalColorBorder": 6809855, + "medalName": "钢板鹿", + "level": 26, + "targetId": 3493118494116797, + "isLight": 1 + }, + "guard_level": 3, + "wealth_level": 32, + "is_mystery": false, + "uinfo": { + "uid": 44152084, + "base": { + "name": "_柚_子_hallu", + "face": "https://i1.hdslb.com/bfs/face/137498c2c6a3231e5b6047af12a64bbd19627dcb.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": { + "name": "_柚_子_hallu", + "face": "https://i1.hdslb.com/bfs/face/137498c2c6a3231e5b6047af12a64bbd19627dcb.jpg" + }, + "origin_info": { + "name": "_柚_子_hallu", + "face": "https://i1.hdslb.com/bfs/face/137498c2c6a3231e5b6047af12a64bbd19627dcb.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "钢板鹿", + "level": 26, + "color_start": 398668, + "color_end": 6850801, + "color_border": 6809855, + "color": 398668, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 3493118494116797, + "guard_level": 3, + "score": 50057285, + "guard_icon": "https://i0.hdslb.com/bfs/live/143f5ec3003b4080d1b5f817a9efdca46d631945.png", + "honor_icon": "", + "v2_medal_color_start": "#4775EFCC", + "v2_medal_color_end": "#4775EFCC", + "v2_medal_color_border": "#58A1F8FF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#000B7099", + "user_receive_count": 0 + }, + "wealth": { + "level": 32, + "dm_icon_key": "" + }, + "title": null, + "guard": { + "level": 3, + "expired_str": "2025-06-27 23:59:59" + }, + "uhead_frame": null, + "guard_leader": null + } + }, + { + "userRank": 8, + "uid": 8242366, + "name": "翟赧hallu", + "face": "https://i1.hdslb.com/bfs/face/9b312f4146ca2c8a1d2e5468e345ecfb60be3874.jpg", + "score": 276, + "medalInfo": { + "guardLevel": 3, + "medalColorStart": 398668, + "medalColorEnd": 6850801, + "medalColorBorder": 6809855, + "medalName": "钢板鹿", + "level": 28, + "targetId": 3493118494116797, + "isLight": 1 + }, + "guard_level": 3, + "wealth_level": 35, + "is_mystery": false, + "uinfo": { + "uid": 8242366, + "base": { + "name": "翟赧hallu", + "face": "https://i1.hdslb.com/bfs/face/9b312f4146ca2c8a1d2e5468e345ecfb60be3874.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": { + "name": "翟赧hallu", + "face": "https://i1.hdslb.com/bfs/face/9b312f4146ca2c8a1d2e5468e345ecfb60be3874.jpg" + }, + "origin_info": { + "name": "翟赧hallu", + "face": "https://i1.hdslb.com/bfs/face/9b312f4146ca2c8a1d2e5468e345ecfb60be3874.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "钢板鹿", + "level": 28, + "color_start": 398668, + "color_end": 6850801, + "color_border": 6809855, + "color": 398668, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 3493118494116797, + "guard_level": 3, + "score": 50208414, + "guard_icon": "https://i0.hdslb.com/bfs/live/143f5ec3003b4080d1b5f817a9efdca46d631945.png", + "honor_icon": "", + "v2_medal_color_start": "#4775EFCC", + "v2_medal_color_end": "#4775EFCC", + "v2_medal_color_border": "#58A1F8FF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#000B7099", + "user_receive_count": 0 + }, + "wealth": { + "level": 35, + "dm_icon_key": "" + }, + "title": null, + "guard": { + "level": 3, + "expired_str": "2025-08-05 23:59:59" + }, + "uhead_frame": null, + "guard_leader": null + } + }, + { + "userRank": 9, + "uid": 418232, + "name": "lug7", + "face": "http://i2.hdslb.com/bfs/face/5d2c92beb774a4bb30762538bb102d23670ae9c0.gif", + "score": 171, + "medalInfo": { + "guardLevel": 3, + "medalColorStart": 398668, + "medalColorEnd": 6850801, + "medalColorBorder": 6809855, + "medalName": "钢板鹿", + "level": 26, + "targetId": 3493118494116797, + "isLight": 1 + }, + "guard_level": 3, + "wealth_level": 28, + "is_mystery": false, + "uinfo": { + "uid": 418232, + "base": { + "name": "lug7", + "face": "http://i2.hdslb.com/bfs/face/5d2c92beb774a4bb30762538bb102d23670ae9c0.gif", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": { + "name": "lug7", + "face": "http://i2.hdslb.com/bfs/face/5d2c92beb774a4bb30762538bb102d23670ae9c0.gif" + }, + "origin_info": { + "name": "lug7", + "face": "http://i2.hdslb.com/bfs/face/5d2c92beb774a4bb30762538bb102d23670ae9c0.gif" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "钢板鹿", + "level": 26, + "color_start": 398668, + "color_end": 6850801, + "color_border": 6809855, + "color": 398668, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 3493118494116797, + "guard_level": 3, + "score": 50050050, + "guard_icon": "https://i0.hdslb.com/bfs/live/143f5ec3003b4080d1b5f817a9efdca46d631945.png", + "honor_icon": "", + "v2_medal_color_start": "#4775EFCC", + "v2_medal_color_end": "#4775EFCC", + "v2_medal_color_border": "#58A1F8FF", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#000B7099", + "user_receive_count": 0 + }, + "wealth": { + "level": 28, + "dm_icon_key": "" + }, + "title": null, + "guard": { + "level": 3, + "expired_str": "2025-06-15 23:59:59" + }, + "uhead_frame": null, + "guard_leader": null + } + }, + { + "userRank": 10, + "uid": 452228643, + "name": "很糊的小龔鬱hallu", + "face": "https://i0.hdslb.com/bfs/face/996fa85fe42d582dd013dcb435de3f3ff4d33f6c.jpg", + "score": 35, + "medalInfo": { + "guardLevel": 0, + "medalColorStart": 6126494, + "medalColorEnd": 6126494, + "medalColorBorder": 6126494, + "medalName": "牧斯", + "level": 6, + "targetId": 3493087074585126, + "isLight": 1 + }, + "guard_level": 3, + "wealth_level": 35, + "is_mystery": false, + "uinfo": { + "uid": 452228643, + "base": { + "name": "很糊的小龔鬱hallu", + "face": "https://i0.hdslb.com/bfs/face/996fa85fe42d582dd013dcb435de3f3ff4d33f6c.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": { + "name": "很糊的小龔鬱hallu", + "face": "https://i0.hdslb.com/bfs/face/996fa85fe42d582dd013dcb435de3f3ff4d33f6c.jpg" + }, + "origin_info": { + "name": "很糊的小龔鬱hallu", + "face": "https://i0.hdslb.com/bfs/face/996fa85fe42d582dd013dcb435de3f3ff4d33f6c.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": { + "name": "牧斯", + "level": 6, + "color_start": 6126494, + "color_end": 6126494, + "color_border": 6126494, + "color": 6126494, + "id": 0, + "typ": 0, + "is_light": 1, + "ruid": 3493087074585126, + "guard_level": 0, + "score": 3400, + "guard_icon": "", + "honor_icon": "", + "v2_medal_color_start": "#5866C799", + "v2_medal_color_end": "#5866C799", + "v2_medal_color_border": "#5866C799", + "v2_medal_color_text": "#FFFFFFFF", + "v2_medal_color_level": "#000B7099", + "user_receive_count": 0 + }, + "wealth": { + "level": 35, + "dm_icon_key": "" + }, + "title": null, + "guard": { + "level": 3, + "expired_str": "2025-06-19 23:59:59" + }, + "uhead_frame": null, + "guard_leader": null + } + }, + { + "userRank": 11, + "uid": 164871173, + "name": "奶浴-bllss", + "face": "https://i2.hdslb.com/bfs/face/f48dd7c1e432eb91e5fd286757c4e2600930f4c5.jpg", + "score": 26, + "medalInfo": null, + "guard_level": 3, + "wealth_level": 36, + "is_mystery": false, + "uinfo": { + "uid": 164871173, + "base": { + "name": "奶浴-bllss", + "face": "https://i2.hdslb.com/bfs/face/f48dd7c1e432eb91e5fd286757c4e2600930f4c5.jpg", + "name_color": 0, + "is_mystery": false, + "risk_ctrl_info": { + "name": "奶浴-bllss", + "face": "https://i2.hdslb.com/bfs/face/f48dd7c1e432eb91e5fd286757c4e2600930f4c5.jpg" + }, + "origin_info": { + "name": "奶浴-bllss", + "face": "https://i2.hdslb.com/bfs/face/f48dd7c1e432eb91e5fd286757c4e2600930f4c5.jpg" + }, + "official_info": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "name_color_str": "" + }, + "medal": null, + "wealth": { + "level": 36, + "dm_icon_key": "" + }, + "title": null, + "guard": { + "level": 3, + "expired_str": "2025-07-20 23:59:59" + }, + "uhead_frame": null, + "guard_leader": null + } + }, + ], + "ownInfo": { + "uid": 0, + "name": "", + "face": "", + "rank": -1, + "needScore": 0, + "score": 0, + "guard_level": 0, + "wealth_level": 0, + "is_mystery": false, + "uinfo": null + }, + "tips_text": "投喂、点赞、发弹幕、持续观看均可上榜", + "value_text": "贡献值", + "ab": { + "guard_accompany_list": 1 + }, + "onlineNumText": "45" + } +} +``` +
+ +## 查询自己在某直播间观看时长 + +> https://api.live.bilibili.com/xlive/general-interface/v1/guard/GuardActive + +*请求方式:GET* + +认证方式:Cookie(SESSDATA)或 APP + +**url 参数:** + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| -------- | ---- | ------- | ------ | ---- | +| platform | str | android | 必要 | | +| ruid | num | 主播uid | 必要 | | + +**json 回复:** + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ---- | +| code | num | 返回值 | | +| message | str | 错误信息 | | +| ttl | num | 1 | | +| data | obj | 信息本体 | | + + + + + +`data`中的对象: + +| 字段 | 类型 | 内容 | 备注 | +| ----------- | ---- | -------------- | ----------------------------- | +| ruid | num | 主播uid | | +| rusername | str | 主播用户名 | | +| rface | str | 主播头像 | | +| username | str | 自己的用户名 | | +| accomany | int | 大航海陪伴天数 | 似乎b站程序员把这个单词拼错了 | +| rusername | str | 主播用户名 | | +| watch_time | num | 观看时长 | 单位是秒 | +| up_medal | obj | 粉丝牌 | | +| guard_num_3 | num | 主播舰长数量 | +| guard_num_2 | num | 主播提督数量 | | +| guard_num_1 | num | 主播总督数量 | | +| is_live | num | 直播状态 | | + + + +## 查询用户在直播间的信息 + +> https://api.live.bilibili.com/xlive/app-ucenter/v2/card/user + +*请求方式:GET* + +认证方式:无 + +**url 参数:** + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ------ | ---- | ----------- | ------ | ---- | +| uid | num | 目标用户uid | 必要 | | +| ruid | num | 主播uid | 必要 | | + +**json 回复:** + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ---- | +| code | num | 返回值 | | +| message | str | 错误信息 | | +| ttl | num | 1 | | +| data | obj | 信息本体 | + + +`data`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------------- | ---- | ------------------ | ------------------------------ | +| uid | num | 目标用户id | | +| uname | str | 目标用户名 | | +| desc | str | 目标用户认证信息 | | +| face | str | 目标用户头像 | | +| follow_num | num | 目标用户粉丝数 | | +| attention_num | num | 目标用户关注数 | +| main_vip | num | 目标用户大会员状态 | 0:无 2:大会员 | +| is_block | num | 是否被拉黑? | 始终为0? | +| is_admin | num | 是否房管 | | +| is_black | num | 是否被关小黑屋 | | +| wealth_info | obj | 荣耀等级 | | +| fans_medal | obj | 粉丝牌 | 如果目标用户隐藏粉丝牌则为null | + +`wealth_info`对象: +| 字段 | 类型 | 内容 | 备注 | +| ------------------ | ---- | -------------------------- | ---- | +| level | num | 荣耀等级 | | +| level_total_score | num | 下一等级的荣耀值 | | +| cur_score | num | 当前荣耀值 | | +| upgrade_need_score | num | 升到下一等级还差多少荣耀值 | | + +**示例:** + +```shell +curl 'https://api.live.bilibili.com/xlive/app-ucenter/v2/card/user?ruid=504140200&uid=504140200' +``` + +
+查看响应示例: + +```json +{ + "code": 0, + "message": "0", + "ttl": 1, + "data": { + "uid": 504140200, + "uname": "软软riu", + "face": "https://i1.hdslb.com/bfs/face/2d083d686b704eb7010e3d94595d47f5a89c8aef.jpg", + "verify_type": 0, + "desc": "bilibili UP主认证:bilibili 知名虚拟UP主、直播高能主播", + "uname_color": 2171169, + "room_id": 23174842, + "pendant": "https://i1.hdslb.com/bfs/garb/open/8806f97581082d68edcf2207368290b3fb3491bb.png", + "pendant_from": 2, + "follow_num": 214882, + "attention_num": 202, + "relation_status": 1, + "privilege_type": 3, + "fans_medal": null, + "title_sum": 10, + "wearing_title": "", + "main_vip": 0, + "is_block": 0, + "is_admin": 0, + "fans_medal_list_url": "https://live.bilibili.com/p/html/live-fansmedal-wall/index.html?tId=504140200#/medal", + "wearing": {}, + "is_black": 0, + "admin_level": 0, + "head_picture": "http://i0.hdslb.com/bfs/live/3f536f59e337a731c5367f623bca79b32197ddd5.png", + "head_text": "大航海舰长", + "head_url": "", + "head_business": 1, + "head_skin_icon": "http://i0.hdslb.com/bfs/live/d44e103f424f5ae01ef3d0133ef812f8241d15b0.png", + "privilege_center": {}, + "is_nft": 0, + "nft_dmark": "https://i0.hdslb.com/bfs/live/9f176ff49d28c50e9c53ec1c3297bd1ee539b3d6.gif", + "is_real_fans": false, + "wealth_info": { + "uid": 504140200, + "level": 35, + "level_total_score": 6000000, + "cur_score": 5012900, + "upgrade_need_score": 987100, + "status": 1, + "dm_icon_key": "" + }, + "guard": { + "accompany": 0, + "accompany_slake": 0 + }, + "chat_url_android": "activity://im/conversation/?conversation_type=1&reciveid=504140200", + "chat_url_ios": "bilibili://link/chat?session_id=s504140200", + "gift_star": null, + "is_mystery": false, + "text_control": null, + "uinfo_medal": null, + "guard_attire": {}, + "flash_buy": 0, + "flash_buy_url": "" + } +} +``` +
\ No newline at end of file diff --git a/docs/user/info.md b/docs/user/info.md index 3532f1b..9a694e4 100644 --- a/docs/user/info.md +++ b/docs/user/info.md @@ -26,56 +26,56 @@ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | --------------------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-400:请求错误
-403:访问权限不足
-404:用户不存在(如注销账号) | -| message | str | 错误信息 | 默认为0 | -| ttl | num | 1 | | -| data | obj | 信息本体 | | +| message | str | 错误信息 | 默认为0 | +| ttl | num | 1 | | +| data | obj | 信息本体 | | `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| ---------------- | ---- | ---------------- | ------------------------------------------------------------ | -| mid | num | mid | | -| name | str | 昵称 | | -| sex | str | 性别 | 男/女/保密 | -| face | str | 头像链接 | | -| face_nft | num | 是否为 NFT 头像 | 0:不是 NFT 头像
1:是 NFT 头像 | -| face_nft_type | num | NFT 头像类型? | | -| sign | str | 签名 | | -| rank | num | 用户权限等级 | 目前应该无任何作用
5000:0级未答题
10000:普通会员
20000:字幕君
25000:VIP
30000:真·职人
32000:管理员 | -| level | num | 当前等级 | 0-6 级 | -| jointime | num | 注册时间 | 此接口返回恒为`0` | -| moral | num | 节操值 | 此接口返回恒为`0` | -| silence | num | 封禁状态 | 0:正常
1:被封 | -| coins | num | 硬币数 | 需要登录(Cookie)
只能查看自己的
默认为`0` | -| fans_badge | bool | 是否具有粉丝勋章 | false:无
true:有 | -| fans_medal | obj | 粉丝勋章信息 | | -| official | obj | 认证信息 | | -| vip | obj | 会员信息 | | -| pendant | obj | 头像框信息 | | -| nameplate | obj | 勋章信息 | | -| user_honour_info | obj | (?) | | -| is_followed | bool | 是否关注此用户 | true:已关注
false:未关注
需要登录(Cookie)
未登录恒为`false` | -| top_photo | str | 主页头图链接 | | -| theme | obj | (?) | | -| sys_notice | obj | 系统通知 | 无内容则为空对象
主要用于展示如用户争议、纪念账号等等的小黄条 | -| live_room | obj | 直播间信息 | | -| birthday | str | 生日 | MM-DD
如设置隐私为空 | -| school | obj | 学校 | | -| profession | obj | 专业资质信息 | | -| tags | 有效时:array
无效时:null | 个人标签 | | -| series | obj | (?) | | -| is_senior_member | num | 是否为硬核会员 | 0:否
1:是 | -| mcn_info | null | (?) | | -| gaia_res_type | num | (?) | | -| gaia_data | null | (?) | | -| is_risk | bool | (?) | | -| elec | obj | 充电信息 | | -| contract | obj | 是否显示老粉计划 | | -| certificate_show | bool | (?) | | -| name_render | 有效时:obj
无效时:null | 昵称渲染信息 | | +| 字段 | 类型 | 内容 | 备注 | +| ---------------- | ------------------------------- | ---------------- | -------------------------------------------------------------------------------------------------------------------------------- | +| mid | num | mid | | +| name | str | 昵称 | | +| sex | str | 性别 | 男/女/保密 | +| face | str | 头像链接 | | +| face_nft | num | 是否为 NFT 头像 | 0:不是 NFT 头像
1:是 NFT 头像 | +| face_nft_type | num | NFT 头像类型? | | +| sign | str | 签名 | | +| rank | num | 用户权限等级 | 目前应该无任何作用
5000:0级未答题
10000:普通会员
20000:字幕君
25000:VIP
30000:真·职人
32000:管理员 | +| level | num | 当前等级 | 0-6 级 | +| jointime | num | 注册时间 | 此接口返回恒为`0` | +| moral | num | 节操值 | 此接口返回恒为`0` | +| silence | num | 封禁状态 | 0:正常
1:被封 | +| coins | num | 硬币数 | 需要登录(Cookie)
只能查看自己的
默认为`0` | +| fans_badge | bool | 是否具有粉丝勋章 | false:无
true:有 | +| fans_medal | obj | 粉丝勋章信息 | | +| official | obj | 认证信息 | | +| vip | obj | 会员信息 | | +| pendant | obj | 头像框信息 | | +| nameplate | obj | 勋章信息 | | +| user_honour_info | obj | (?) | | +| is_followed | bool | 是否关注此用户 | true:已关注
false:未关注
需要登录(Cookie)
未登录恒为`false` | +| top_photo | str | 主页头图链接 | | +| theme | obj | (?) | | +| sys_notice | obj | 系统通知 | 无内容则为空对象
主要用于展示如用户争议、纪念账号等等的小黄条 | +| live_room | obj | 直播间信息 | | +| birthday | str | 生日 | MM-DD
如设置隐私为空 | +| school | obj | 学校 | | +| profession | obj | 专业资质信息 | | +| tags | 有效时:array
无效时:null | 个人标签 | | +| series | obj | (?) | | +| is_senior_member | num | 是否为硬核会员 | 0:否
1:是 | +| mcn_info | null | (?) | | +| gaia_res_type | num | (?) | | +| gaia_data | null | (?) | | +| is_risk | bool | (?) | | +| elec | obj | 充电信息 | | +| contract | obj | 是否显示老粉计划 | | +| certificate_show | bool | (?) | | +| name_render | 有效时:obj
无效时:null | 昵称渲染信息 | | `rank`示例 @@ -106,13 +106,13 @@ `profession`示例 -| UID | -| ---------- | -| 654391 | -| 1440295 | -| 1785155 | -| 2990100 | -| 3875803 | +| UID | +| ------- | +| 654391 | +| 1440295 | +| 1785155 | +| 2990100 | +| 3875803 | `data`中的`official`对象: @@ -125,44 +125,44 @@ `data`中的`vip`对象: -| 字段 | 类型 | 内容 | 备注 | -| -------------------- | ---- | ------------------ | ------------------------------------------------------------ | -| type | num | 会员类型 | 0:无
1:月大会员
2:年度及以上大会员 | -| status | num | 会员状态 | 0:无
1:有 | -| due_date | num | 会员过期时间 | 毫秒时间戳 | -| vip_pay_type | num | 支付类型 | 0:未开启自动续费
1:已开启自动续费 | -| theme_type | num | 0 | 作用尚不明确 | -| label | obj | 会员标签 | | -| avatar_subscript | num | 是否显示会员图标 | 0:不显示
1:显示 | -| nickname_color | str | 会员昵称颜色 | 颜色码,一般为`#FB7299`,曾用于愚人节改变大会员配色 | +| 字段 | 类型 | 内容 | 备注 | +| -------------------- | ---- | ------------------ | -------------------------------------------------------------------- | +| type | num | 会员类型 | 0:无
1:月大会员
2:年度及以上大会员 | +| status | num | 会员状态 | 0:无
1:有 | +| due_date | num | 会员过期时间 | 毫秒时间戳 | +| vip_pay_type | num | 支付类型 | 0:未开启自动续费
1:已开启自动续费 | +| theme_type | num | 0 | 作用尚不明确 | +| label | obj | 会员标签 | | +| avatar_subscript | num | 是否显示会员图标 | 0:不显示
1:显示 | +| nickname_color | str | 会员昵称颜色 | 颜色码,一般为`#FB7299`,曾用于愚人节改变大会员配色 | | role | num | 大角色类型 | 1:月度大会员
3:年度大会员
7:十年大会员
15:百年大会员 | -| avatar_subscript_url | str | 大会员角标地址 | | -| tv_vip_status | num | 电视大会员状态 | 0:未开通 | -| tv_vip_pay_type | num | 电视大会员支付类型 | | -| tv_due_date | num | 电视大会员过期时间 | 秒级时间戳 | -| avatar_icon | obj | 大会员角标信息 | | +| avatar_subscript_url | str | 大会员角标地址 | | +| tv_vip_status | num | 电视大会员状态 | 0:未开通 | +| tv_vip_pay_type | num | 电视大会员支付类型 | | +| tv_due_date | num | 电视大会员过期时间 | 秒级时间戳 | +| avatar_icon | obj | 大会员角标信息 | | `vip`中的`label`对象: -| 字段 | 类型 | 内容 | 备注 | -|---------------------------|------|----------|------------------------------------------------------------------------------------------------------------------------------| -| path | str | 空 | 作用尚不明确 | -| text | str | 会员类型文案 | `大会员` `年度大会员` `十年大会员` `百年大会员` `最强绿鲤鱼` | -| label_theme | str | 会员标签 | vip:大会员
annual_vip:年度大会员
ten_annual_vip:十年大会员
hundred_annual_vip:百年大会员
fools_day_hundred_annual_vip:最强绿鲤鱼 | -| text_color | str | 会员标签 | | -| bg_style | num | 1 | | -| bg_color | str | 会员标签背景颜色 | 颜色码,一般为`#FB7299`,曾用于愚人节改变大会员配色 | -| border_color | str | 会员标签边框颜色 | 未使用 | -| use_img_label | bool | `true` | | -| img_label_uri_hans | str | `空串` | | -| img_label_uri_hant | str | `空串` | | -| img_label_uri_hans_static | str | 大会员牌子图片 | 简体版 | -| img_label_uri_hant_static | str | 大会员牌子图片 | 繁体版 | +| 字段 | 类型 | 内容 | 备注 | +| ------------------------- | ---- | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| path | str | 空 | 作用尚不明确 | +| text | str | 会员类型文案 | `大会员` `年度大会员` `十年大会员` `百年大会员` `最强绿鲤鱼` | +| label_theme | str | 会员标签 | vip:大会员
annual_vip:年度大会员
ten_annual_vip:十年大会员
hundred_annual_vip:百年大会员
fools_day_hundred_annual_vip:最强绿鲤鱼 | +| text_color | str | 会员标签 | | +| bg_style | num | 1 | | +| bg_color | str | 会员标签背景颜色 | 颜色码,一般为`#FB7299`,曾用于愚人节改变大会员配色 | +| border_color | str | 会员标签边框颜色 | 未使用 | +| use_img_label | bool | `true` | | +| img_label_uri_hans | str | `空串` | | +| img_label_uri_hant | str | `空串` | | +| img_label_uri_hans_static | str | 大会员牌子图片 | 简体版 | +| img_label_uri_hant_static | str | 大会员牌子图片 | 繁体版 | `vip`中的`avatar_icon`对象: | 字段 | 类型 | 内容 | 备注 | -| ------------ | ---- | ------ | ------------ | +| ------------- | ---- | ------ | ------------ | | icon_type | num | (?) | 作用尚不明确 | | icon_resource | obj | (?) | 作用尚不明确 | @@ -195,117 +195,117 @@ `data`中的`fans_medal`对象: -| 字段 | 类型 | 内容 | 备注 | -|-------|------|-----------|-----| -| show | bool | | | -| wear | bool | 是否佩戴了粉丝勋章 | | -| medal | obj | 粉丝勋章信息 | | +| 字段 | 类型 | 内容 | 备注 | +| ----- | ---- | ------------------ | ---- | +| show | bool | | | +| wear | bool | 是否佩戴了粉丝勋章 | | +| medal | obj | 粉丝勋章信息 | | `fans_medal`中的`medal`对象: -| 字段 | 类型 | 内容 | 备注 | -|--------------------|-----|--------------|------------------| -| uid | num | 此用户mid | | -| target_id | num | 粉丝勋章所属UP的mid | | -| medal_id | num | 粉丝勋章id | | -| level | num | 粉丝勋章等级 | | -| medal_name | str | 粉丝勋章名称 | | -| medal_color | num | 颜色 | | -| intimacy | num | 当前亲密度 | | -| next_intimacy | num | 下一等级所需亲密度 | | -| day_limit | num | 每日亲密度获取上限 | | -| today_feed | num | 今日已获得亲密度 | | -| medal_color_start | num | 粉丝勋章颜色 | 十进制数,可转为十六进制颜色代码 | -| medal_color_end | num | 粉丝勋章颜色 | 十进制数,可转为十六进制颜色代码 | -| medal_color_border | num | 粉丝勋章边框颜色 | 十进制数,可转为十六进制颜色代码 | -| is_lighted | num | | | -| light_status | num | | | -| wearing_status | num | 当前是否佩戴 | 0:未佩戴
1:已佩戴 | -| score | num | | | +| 字段 | 类型 | 内容 | 备注 | +| ------------------ | ---- | ------------------- | -------------------------------- | +| uid | num | 此用户mid | | +| target_id | num | 粉丝勋章所属UP的mid | | +| medal_id | num | 粉丝勋章id | | +| level | num | 粉丝勋章等级 | | +| medal_name | str | 粉丝勋章名称 | | +| medal_color | num | 颜色 | | +| intimacy | num | 当前亲密度 | | +| next_intimacy | num | 下一等级所需亲密度 | | +| day_limit | num | 每日亲密度获取上限 | | +| today_feed | num | 今日已获得亲密度 | | +| medal_color_start | num | 粉丝勋章颜色 | 十进制数,可转为十六进制颜色代码 | +| medal_color_end | num | 粉丝勋章颜色 | 十进制数,可转为十六进制颜色代码 | +| medal_color_border | num | 粉丝勋章边框颜色 | 十进制数,可转为十六进制颜色代码 | +| is_lighted | num | | | +| light_status | num | | | +| wearing_status | num | 当前是否佩戴 | 0:未佩戴
1:已佩戴 | +| score | num | | | `data`中的`sys_notice`对象: -| 字段 | 类型 | 内容 | 备注 | -|-------------|-----|------|-----| -| id | num | id | | -| content | str | 显示文案 | | -| url | str | 跳转地址 | | -| notice_type | num | 提示类型 | 1,2 | -| icon | str | 前缀图标 | | -| text_color | str | 文字颜色 | | -| bg_color | str | 背景颜色 | | +| 字段 | 类型 | 内容 | 备注 | +| ----------- | ---- | -------- | ---- | +| id | num | id | | +| content | str | 显示文案 | | +| url | str | 跳转地址 | | +| notice_type | num | 提示类型 | 1,2 | +| icon | str | 前缀图标 | | +| text_color | str | 文字颜色 | | +| bg_color | str | 背景颜色 | | `sys_notice`示例 -| id | content | notice_type | 示例用户 | -|-----|-------------------------------------------------|-------------|-------------------------------------------------------------------------------------------------| -| 5 | 该用户存在争议行为,已冻结其帐号功能的使用 | 1 || -| 8 | 该用户存在较大争议,请谨慎甄别其内容 | 1 | [28062215](https://space.bilibili.com/28062215) | -| 11 | 该账号涉及合约争议,暂冻结其账号功能使用。详见公告-> | 1 || -| 16 | 该UP主内容存在争议,请注意甄别视频内信息 | 1 | [382534165](https://space.bilibili.com/382534165) | -| 20 | 请允许我们在此献上最后的告别,以此纪念其在哔哩哔哩留下的回忆与足迹。请点此查看纪念账号相关说明 | 2 |[212535360](https://space.bilibili.com/212535360)| -|22| 该账号涉及合约诉讼,封禁其账号使用 | || -| 24 | 该账号涉及合约争议,暂冻结其账号功能使用 | 1 | [291229008](https://space.bilibili.com/291229008) | -| 25 | 该用户涉及严重指控,暂冻结其账号功能使用 | 1 | [81447581](https://space.bilibili.com/81447581) | -| 31 | 该用户涉及严重指控,暂冻结其账号功能使用 | 1 | [22439273](https://space.bilibili.com/22439273) | -| 34 | 该用户涉及严重指控,暂冻结其账号功能使用 | 1 | [1640486775](https://space.bilibili.com/1640486775) | -| 36 | 该账户存在争议,请谨慎甄别 | 1 || +| id | content | notice_type | 示例用户 | +| --- | ---------------------------------------------------------------------------------------------- | ----------- | --------------------------------------------------- | +| 5 | 该用户存在争议行为,已冻结其帐号功能的使用 | 1 | | +| 8 | 该用户存在较大争议,请谨慎甄别其内容 | 1 | [28062215](https://space.bilibili.com/28062215) | +| 11 | 该账号涉及合约争议,暂冻结其账号功能使用。详见公告-> | 1 | | +| 16 | 该UP主内容存在争议,请注意甄别视频内信息 | 1 | [382534165](https://space.bilibili.com/382534165) | +| 20 | 请允许我们在此献上最后的告别,以此纪念其在哔哩哔哩留下的回忆与足迹。请点此查看纪念账号相关说明 | 2 | [212535360](https://space.bilibili.com/212535360) | +| 22 | 该账号涉及合约诉讼,封禁其账号使用 | | | +| 24 | 该账号涉及合约争议,暂冻结其账号功能使用 | 1 | [291229008](https://space.bilibili.com/291229008) | +| 25 | 该用户涉及严重指控,暂冻结其账号功能使用 | 1 | [81447581](https://space.bilibili.com/81447581) | +| 31 | 该用户涉及严重指控,暂冻结其账号功能使用 | 1 | [22439273](https://space.bilibili.com/22439273) | +| 34 | 该用户涉及严重指控,暂冻结其账号功能使用 | 1 | [1640486775](https://space.bilibili.com/1640486775) | +| 36 | 该账户存在争议,请谨慎甄别 | 1 | | `data`中的`live_room`对象: -| 字段 | 类型 | 内容 | 备注 | -|----------------|-----|------------|------------------| -| roomStatus | num | 直播间状态 | 0:无房间
1:有房间 | -| liveStatus | num | 直播状态 | 0:未开播
1:直播中 | -| url | str | 直播间网页 url | | -| title | str | 直播间标题 | | -| cover | str | 直播间封面 url | | -| watched_show | obj | | | -| roomid | num | 直播间 id | | -| roundStatus | num | 轮播状态 | 0:未轮播
1:轮播 | -| broadcast_type | num | 0 | | +| 字段 | 类型 | 内容 | 备注 | +| -------------- | ---- | -------------- | ------------------------ | +| roomStatus | num | 直播间状态 | 0:无房间
1:有房间 | +| liveStatus | num | 直播状态 | 0:未开播
1:直播中 | +| url | str | 直播间网页 url | | +| title | str | 直播间标题 | | +| cover | str | 直播间封面 url | | +| watched_show | obj | | | +| roomid | num | 直播间 id | | +| roundStatus | num | 轮播状态 | 0:未轮播
1:轮播 | +| broadcast_type | num | 0 | | `live_room`中的`watched_show`对象: -| 字段 | 类型 | 内容 | 备注 | -|---------------|------|---------------------|-----| -| switch | bool | ? | | -| num | num | total watched users | | -| text_small | str | | | -| text_large | str | | | -| icon | str | watched icon url | | -| icon_location | str | ? | | -| icon_web | str | watched icon url | | +| 字段 | 类型 | 内容 | 备注 | +| ------------- | ---- | ------------------- | ---- | +| switch | bool | ? | | +| num | num | total watched users | | +| text_small | str | | | +| text_large | str | | | +| icon | str | watched icon url | | +| icon_location | str | ? | | +| icon_web | str | watched icon url | | `data`中的`school`对象: -| 字段 | 类型 | 内容 | 备注 | -|------|-----|--------|-------| -| name | str | 就读大学名称 | 没有则为空 | +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ------------ | ---------- | +| name | str | 就读大学名称 | 没有则为空 | `data`中的`profession`对象: -| 字段 | 类型 | 内容 | 备注 | -|------------|-----|------|----------------| -| name | str | 资质名称 | | -| department | str | 职位 | | -| title | str | 所属机构 | | -| is_show | num | 是否显示 | 0:不显示
1:显示 | +| 字段 | 类型 | 内容 | 备注 | +| ---------- | ---- | -------- | --------------------- | +| name | str | 资质名称 | | +| department | str | 职位 | | +| title | str | 所属机构 | | +| is_show | num | 是否显示 | 0:不显示
1:显示 | `data`中的`user_honour_info`对象: -| 字段 | 类型 | 内容 | 备注 | -|--------|-------|------|-----| -| mid | num | 0 | | -| colour | str | null | | -| tags | array | null | | +| 字段 | 类型 | 内容 | 备注 | +| ------ | ----- | ---- | ---- | +| mid | num | 0 | | +| colour | str | null | | +| tags | array | null | | `data`中的`series`对象: -| 字段 | 类型 | 内容 | 备注 | -|---------------------|------|-----|-----| -| user_upgrade_status | num | (?) | | -| show_upgrade_window | bool | (?) | | +| 字段 | 类型 | 内容 | 备注 | +| ------------------- | ---- | ---- | ---- | +| user_upgrade_status | num | (?) | | +| show_upgrade_window | bool | (?) | | `data`中的`elec`对象: @@ -315,20 +315,20 @@ `elec`中的`show_info`对象: -| 字段 | 类型 | 内容 | 备注 | -| -------- | ---- | ---------------- | ---------------- | -| show | bool | 是否显示充电按钮 | | +| 字段 | 类型 | 内容 | 备注 | +| -------- | ---- | ---------------- | ------------------------------------------------------------------------------------------------------------- | +| show | bool | 是否显示充电按钮 | | | state | num | 充电功能开启状态 | -1:未开通充电功能
1:已开通自定义充电
2:已开通包月、自定义充电
3:已开通包月高档、自定义充电 | -| title | str | 充电按钮显示文字 | 空字符串或 `充电` 或 `充电中` | -| icon | str | 充电图标 | | -| jump_url | str | 跳转url | | +| title | str | 充电按钮显示文字 | 空字符串或 `充电` 或 `充电中` | +| icon | str | 充电图标 | | +| jump_url | str | 跳转url | | `data`中的`contract`对象: -| 字段名 | 类型 | 内容 | 备注 | -|-------------------|------|-----------|---------------------------| -| is_display | bool | | true/false
在页面中未使用此字段 | -| is_follow_display | bool | 是否在显示老粉计划 | true:显示
false:不显示 | +| 字段名 | 类型 | 内容 | 备注 | +| ----------------- | ---- | ------------------ | ----------------------------------- | +| is_display | bool | | true/false
在页面中未使用此字段 | +| is_follow_display | bool | 是否在显示老粉计划 | true:显示
false:不显示 | **示例:** @@ -540,43 +540,43 @@ curl -G 'https://api.bilibili.com/x/space/wbi/acc/info' \ `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| ------------- | ----- | -------------- | ------------------------------------------------------------ | -| card | obj | 卡片信息 | | -| following | bool | 是否关注此用户 | true:已关注
false:未关注
需要登录(Cookie)
未登录为false | -| archive_count | num | 用户稿件数 | | -| article_count | num | 0 | **作用尚不明确** | -| follower | num | 粉丝数 | | -| like_num | num | 点赞数 | | +| 字段 | 类型 | 内容 | 备注 | +| ------------- | ---- | -------------- | ------------------------------------------------------------------------ | +| card | obj | 卡片信息 | | +| following | bool | 是否关注此用户 | true:已关注
false:未关注
需要登录(Cookie)
未登录为false | +| archive_count | num | 用户稿件数 | | +| article_count | num | 0 | **作用尚不明确** | +| follower | num | 粉丝数 | | +| like_num | num | 点赞数 | | `data`中的`card`对象: -| 字段 | 类型 | 内容 | 备注 | -| --------------- | ----- | -------------- | ------------------------------------------------------------ | -| mid | str | 用户mid | | -| approve | bool | false | **作用尚不明确** | -| name | str | 用户昵称 | | -| sex | str | 用户性别 | 男 女 保密 | -| face | str | 用户头像链接 | | -| DisplayRank | str | 0 | **作用尚不明确** | -| regtime | num | 0 | **作用尚不明确** | -| spacesta | num | 用户状态 | 0:正常
-2:被封禁 | -| birthday | str | 空 | **作用尚不明确** | -| place | str | 空 | **作用尚不明确** | -| description | str | 空 | **作用尚不明确** | -| article | num | 0 | **作用尚不明确** | -| attentions | array | 空 | **作用尚不明确** | -| fans | num | 粉丝数 | | -| friend | num | 关注数 | | -| attention | num | 关注数 | | -| sign | str | 签名 | | -| level_info | obj | 等级 | | -| pendant | obj | 挂件 | | -| nameplate | obj | 勋章 | | -| Official | obj | 认证信息 | | -| official_verify | obj | 认证信息2 | | -| vip | obj | 大会员状态 | | -| space | obj | 主页头图 | | +| 字段 | 类型 | 内容 | 备注 | +| --------------- | ----- | ------------ | ----------------------- | +| mid | str | 用户mid | | +| approve | bool | false | **作用尚不明确** | +| name | str | 用户昵称 | | +| sex | str | 用户性别 | 男 女 保密 | +| face | str | 用户头像链接 | | +| DisplayRank | str | 0 | **作用尚不明确** | +| regtime | num | 0 | **作用尚不明确** | +| spacesta | num | 用户状态 | 0:正常
-2:被封禁 | +| birthday | str | 空 | **作用尚不明确** | +| place | str | 空 | **作用尚不明确** | +| description | str | 空 | **作用尚不明确** | +| article | num | 0 | **作用尚不明确** | +| attentions | array | 空 | **作用尚不明确** | +| fans | num | 粉丝数 | | +| friend | num | 关注数 | | +| attention | num | 关注数 | | +| sign | str | 签名 | | +| level_info | obj | 等级 | | +| pendant | obj | 挂件 | | +| nameplate | obj | 勋章 | | +| Official | obj | 认证信息 | | +| official_verify | obj | 认证信息2 | | +| vip | obj | 大会员状态 | | +| space | obj | 主页头图 | | `card`中的`level_info`对象: @@ -799,7 +799,7 @@ curl -G 'https://api.bilibili.com/x/web-interface/card' \ | ---------------- | ---- | ---------------- | ----------------------------------------------- | | type | num | 会员类型 | 0:无
1:月大会员
2:年度及以上大会员 | | status | num | 会员状态 | 0:无
1:有 | -| due_date | num | 会员过期时间 | Unix时间戳(毫秒) | +| due_date | num | 会员过期时间 | Unix时间戳(毫秒) | | theme_type | num | 0 | 作用尚不明确 | | label | obj | 会员标签 | | | avatar_subscript | num | 是否显示会员图标 | 0:不显示
1:显示 | @@ -807,10 +807,10 @@ curl -G 'https://api.bilibili.com/x/web-interface/card' \ `vip`中的`label`对象: -| 字段 | 类型 | 内容 | 备注 | -| ----------- | ---- | -------- | ------------------------------------------------------------ | -| path | str | 空 | 作用尚不明确 | -| text | str | 会员名称 | | +| 字段 | 类型 | 内容 | 备注 | +| ----------- | ---- | -------- | ----------------------------------------------------------------------------------------------------------- | +| path | str | 空 | 作用尚不明确 | +| text | str | 会员名称 | | | label_theme | str | 会员标签 | vip:大会员
annual_vip:年度大会员
ten_annual_vip:十年大会员
hundred_annual_vip:百年大会员 | `data`中的`pendant`对象: @@ -835,20 +835,20 @@ curl -G 'https://api.bilibili.com/x/web-interface/card' \ `data`中的`Official`对象: -| 字段 | 类型 | 内容 | 备注 | -| ----- | ---- | -------- | ------------------------------------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ----- | ---- | -------- | -------------------------------------- | | role | num | 认证类型 | 见[用户认证类型一览](official_role.md) | -| title | str | 认证信息 | 无为空 | -| desc | str | 认证备注 | 无为空 | -| type | num | 是否认证 | -1:无
0:认证 | +| title | str | 认证信息 | 无为空 | +| desc | str | 认证备注 | 无为空 | +| type | num | 是否认证 | -1:无
0:认证 | `data`中的`level_exp`对象: -| 字段 | 类型 | 内容 | 备注 | -| ------------- | ---- | -------- | ---------------- | -| current_level | num | 当前等级 | 0-6级 | -| current_min | num | 0 | 指当前等级从多少经验值开始 | -| current_exp | num | 0 | 当前账户的经验值 | +| 字段 | 类型 | 内容 | 备注 | +| ------------- | ---- | -------- | ------------------------------------------ | +| current_level | num | 当前等级 | 0-6级 | +| current_min | num | 0 | 指当前等级从多少经验值开始 | +| current_exp | num | 0 | 当前账户的经验值 | | next_exp | num | 0 | 下一个等级所需的经验值**(不是还需要多少)** | **示例:** @@ -959,38 +959,38 @@ curl -G 'https://api.bilibili.com/x/space/myinfo' \ **url参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ------ | ---- | ----------------- | ------ | ---------------------------------- | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ------ | ---- | ----------------- | ------ | --------------------------------- | | uids | nums | 目标用户的mid列表 | 必要 | 每个成员间用`,`分隔,最多50个成员 | **json回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ----- | -------- | -------------------------------------------------------- | -| code | num | 返回值 | 0:成功
-101:账号未登录
-400:请求错误
40143:批量大小超过限制 | -| message | str | 错误信息 | 默认为0 | -| ttl | num | 1 | | -| data | obj | 信息本体 | 用户信息随机排序 | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------------------------------------------------------------------------------ | +| code | num | 返回值 | 0:成功
-101:账号未登录
-400:请求错误
40143:批量大小超过限制 | +| message | str | 错误信息 | 默认为0 | +| ttl | num | 1 | | +| data | obj | 信息本体 | 用户信息随机排序 | `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| --------- | ---- | ----------------------- | ---- | -| {用户mid} | obj | 该mid对应的用户信息 | | -| …… | obj | …… | …… | +| 字段 | 类型 | 内容 | 备注 | +| --------- | ---- | ------------------- | ---- | +| {用户mid} | obj | 该mid对应的用户信息 | | +| …… | obj | …… | …… | `data`中的`{用户mid}`对象: -| 字段 | 类型 | 内容 | 备注 | -| ------------ | ---- | ------------------- | -------------------- | -| mid | str | mid | | -| face | str | 头像链接 | | -| name | str | 昵称 | | -| official | obj | 认证信息 | 基本同「[用户空间详细信息](#用户空间详细信息)」中的 `data.official` 对象 | -| vip | obj | 会员信息 | 基本同「[用户空间详细信息](#用户空间详细信息)」中的 `data.vip` 对象,其中有些类型为 `num` 的字段在本接口中类型为 `str` | -| name_render | 有效时:obj
无效时:null | 昵称渲染信息 | | +| 字段 | 类型 | 内容 | 备注 | +| ----------- | ----------------------------- | ------------ | ---------------------------------------------------------------------------------------------------------------------- | +| mid | str | mid | | +| face | str | 头像链接 | | +| name | str | 昵称 | | +| official | obj | 认证信息 | 基本同「[用户空间详细信息](#用户空间详细信息)」中的 `data.official` 对象 | +| vip | obj | 会员信息 | 基本同「[用户空间详细信息](#用户空间详细信息)」中的 `data.vip` 对象,其中有些类型为 `num` 的字段在本接口中类型为 `str` | +| name_render | 有效时:obj
无效时:null | 昵称渲染信息 | | `{用户mid}`中的`name_render`对象: @@ -1008,18 +1008,18 @@ curl -G 'https://api.bilibili.com/x/space/myinfo' \ `color`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------- | ---- | -| 0 | obj | 颜色1 | | -| n | obj | 颜色(n+1) | | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | --------- | ---- | +| 0 | obj | 颜色1 | | +| n | obj | 颜色(n+1) | | +| …… | obj | …… | …… | `color`数组中的对象: -| 字段 | 类型 | 内容 | 备注 | -| ----------- | ---- | ---------------- | ---------------- | -| color_day | str | 浅色模式昵称颜色 | HEX颜色代码 | -| color_night | str | 深色模式昵称颜色 | HEX颜色代码 | +| 字段 | 类型 | 内容 | 备注 | +| ----------- | ---- | ---------------- | ----------- | +| color_day | str | 浅色模式昵称颜色 | HEX颜色代码 | +| color_night | str | 深色模式昵称颜色 | HEX颜色代码 | **示例:** @@ -1173,32 +1173,13 @@ curl -G 'https://api.bilibili.com/x/polymer/pc-electron/v1/user/cards' \ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ----- | -------- | --------------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ----- | -------- | ------------------------------------------------- | | code | num | 返回值 | 0:成功
-101:账号未登录
-400:请求错误 | -| message | str | 错误信息 | 默认为0 | -| ttl | num | 1 | | -| data | array | 信息本体 | 用户信息随机排序 | +| message | str | 错误信息 | 默认为0 | +| ttl | num | 1 | | +| data | array | 信息本体 | 用户信息随机排序 | -`data`数组: - -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------- | ---- | -| 0 | obj | 用户1 | | -| n | obj | 用户(n+1) | | -| …… | obj | …… | …… | - -`data`数组中的对象: - -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | ------------ | -------------------- | -| mid | num | mid | | -| name | str | 昵称 | | -| face | str | 头像链接 | | -| sign | str | 签名 | | -| rank | num | 用户权限等级 | | -| level | num | 当前等级 | 0-6 级 | -| silence | num | 封禁状态 | 0:正常
1:被封 | **示例:** @@ -1250,3 +1231,546 @@ curl -G 'https://api.vc.bilibili.com/account/v1/user/cards' \ ``` + +## 多用户详细信息3 + +> https://api.vc.bilibili.com/x/im/user_infos + +*请求方式:GET* + +认证方式:Cookie(SESSDATA) + + +**url参数:** + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ------ | ---- | ----------------- | ------ | ------------------- | +| uids | nums | 目标用户的mid列表 | 必要 | 每个成员间用`,`分隔 | + + +`data`数组: + +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | --------- | ---- | +| 0 | obj | 用户1 | | +| n | obj | 用户(n+1) | | +| …… | obj | …… | …… | + +`data`数组中的对象: + +| 字段 | 类型 | 内容 | 备注 | +| --------------- | ---- | ------------ | -------------------- | +| mid | num | mid | | +| name | str | 昵称 | | +| face | str | 头像链接 | | +| sign | str | 签名 | | +| rank | num | 用户权限等级 | | +| level | num | 当前等级 | 0-6 级 | +| silence | num | 封禁状态 | 0:正常
1:被封 | +| vip | obj | 大会员信息 | | +| offical | obj | 认证信息 | | +| is_fake_account | bool | | | +| expert_info | obj | 专业信息? | | + +**示例:** + +查询用户`uids=1,2,3`的详细信息 + +```shell +curl -G 'https://api.vc.bilibili.com/x/im/user_infos' \ +--data-urlencode 'uids=2,114514' +``` + +
+查看响应示例: + +```json +{ + "code": 0, + "msg": "0", + "message": "0", + "ttl": 1, + "data": [ + { + "mid": 2, + "name": "碧诗", + "sex": "男", + "face": "https://i2.hdslb.com/bfs/face/ef0457addb24141e15dfac6fbf45293ccf1e32ab.jpg", + "sign": "https://kami.im 直男过气网红 # We Are Star Dust", + "rank": 20000, + "level": 6, + "silence": 0, + "vip": { + "type": 2, + "status": 1, + "due_date": 4000982400000, + "vip_pay_type": 0, + "theme_type": 0, + "label": { + "path": "", + "text": "十年大会员", + "label_theme": "ten_annual_vip", + "text_color": "#FFFFFF", + "bg_style": 1, + "bg_color": "#FB7299", + "border_color": "", + "use_img_label": true, + "img_label_uri_hans": "https://i0.hdslb.com/bfs/activity-plat/static/20220608/e369244d0b14644f5e1a06431e22a4d5/wltavwHAkL.gif", + "img_label_uri_hant": "", + "img_label_uri_hans_static": "https://i0.hdslb.com/bfs/vip/802418ff03911645648b63aa193ba67997b5a0bc.png", + "img_label_uri_hant_static": "https://i0.hdslb.com/bfs/activity-plat/static/20220614/e369244d0b14644f5e1a06431e22a4d5/8u7iRTPE7N.png" + }, + "avatar_subscript": 1, + "nickname_color": "#FB7299", + "role": 7, + "avatar_subscript_url": "", + "tv_vip_status": 1, + "tv_vip_pay_type": 1, + "tv_due_date": 2003500800, + "avatar_icon": { + "icon_type": 1, + "icon_resource": { + + } + } + }, + "pendant": { + "pid": -338454175, + "name": "箱庭少女之梦头像", + "image": "https://i2.hdslb.com/bfs/garb/open/efe5e579cbb95a404c2ba289f37c5965dee7a3a2.png", + "expire": 0, + "image_enhance": "https://i2.hdslb.com/bfs/garb/open/efe5e579cbb95a404c2ba289f37c5965dee7a3a2.png", + "image_enhance_frame": "", + "n_pid": 1743418268001 + }, + "nameplate": { + "nid": 10, + "name": "见习偶像", + "image": "https://i2.hdslb.com/bfs/face/e93dd9edfa7b9e18bf46fd8d71862327a2350923.png", + "image_small": "https://i2.hdslb.com/bfs/face/275b468b043ec246737ab8580a2075bee0b1263b.png", + "level": "普通勋章", + "condition": "所有自制视频总播放数\u003E=10万" + }, + "official": { + "role": 2, + "title": "bilibili创始人(站长)", + "desc": "", + "type": 0 + }, + "birthday": 622137600, + "is_fake_account": 0, + "is_deleted": 0, + "in_reg_audit": 0, + "face_nft": 0, + "face_nft_new": 0, + "is_senior_member": 0, + "digital_id": "", + "digital_type": -2, + "attestation": { + "type": 2, + "common_info": { + "title": "bilibili创始人(站长)", + "prefix": "bilibili UP主认证", + "prefix_title": "bilibili UP主认证:bilibili创始人(站长)" + }, + "splice_info": { + "title": "bilibili创始人(站长)" + }, + "icon": "https://i0.hdslb.com/bfs/activity-plat/static/20230828/e3b8ebec8e86f060b930a2c0536bb88b/72wejSxl9Z.png", + "desc": "" + }, + "expert_info": { + "title": "", + "state": 0, + "type": 0, + "desc": "" + }, + "honours": { + "mid": 2, + "colour": { + "dark": "#CE8620", + "normal": "#F0900B" + }, + "tags": null, + "is_latest_100honour": 0 + }, + "name_render": null, + "json_ava": { + "container_size": { + "width": 1.375, + "height": 1.375 + }, + "fallback_layers": { + "layers": [ + { + "visible": true, + "general_spec": { + "pos_spec": { + "coordinate_pos": 2, + "axis_x": 0.6875, + "axis_y": 0.6875 + }, + "size_spec": { + "width": 0.787, + "height": 0.787 + }, + "render_spec": { + "opacity": 1 + } + }, + "layer_config": { + "tags": { + "AVATAR_LAYER": { + + } + }, + "is_critical": true, + "layer_mask": { + "general_spec": { + "pos_spec": { + "coordinate_pos": 2, + "axis_x": 0.6875, + "axis_y": 0.6875 + }, + "size_spec": { + "width": 0.787, + "height": 0.787 + }, + "render_spec": { + "opacity": 1 + } + }, + "mask_src": { + "src_type": 3, + "draw": { + "draw_type": 1, + "fill_mode": 1, + "color_config": { + "day": { + "argb": "#FF000000" + } + } + } + } + } + }, + "resource": { + "res_type": 3, + "res_image": { + "image_src": { + "src_type": 1, + "placeholder": 6, + "remote": { + "url": "https://i2.hdslb.com/bfs/face/ef0457addb24141e15dfac6fbf45293ccf1e32ab.jpg", + "bfs_style": "widget-layer-avatar" + } + } + } + } + }, + { + "visible": true, + "general_spec": { + "pos_spec": { + "coordinate_pos": 2, + "axis_x": 0.6875, + "axis_y": 0.6875 + }, + "size_spec": { + "width": 1.375, + "height": 1.375 + }, + "render_spec": { + "opacity": 1 + } + }, + "layer_config": { + "tags": { + "PENDENT_LAYER": { + + } + } + }, + "resource": { + "res_type": 3, + "res_image": { + "image_src": { + "src_type": 1, + "remote": { + "url": "https://i2.hdslb.com/bfs/garb/open/efe5e579cbb95a404c2ba289f37c5965dee7a3a2.png", + "bfs_style": "widget-layer-avatar" + } + } + } + } + }, + { + "visible": true, + "general_spec": { + "pos_spec": { + "coordinate_pos": 1, + "axis_x": 0.806, + "axis_y": 0.822666666666667 + }, + "size_spec": { + "width": 0.35, + "height": 0.35 + }, + "render_spec": { + "opacity": 1 + } + }, + "layer_config": { + "tags": { + "ICON_LAYER": { + + } + } + }, + "resource": { + "res_type": 5, + "res_native_draw": { + "draw_src": { + "src_type": 3, + "draw": { + "draw_type": 1, + "fill_mode": 1, + "color_config": { + "is_dark_mode_aware": true, + "day": { + "argb": "#FFFFFFFF" + }, + "night": { + "argb": "#FF17181A" + } + } + } + } + } + } + }, + { + "visible": true, + "general_spec": { + "pos_spec": { + "coordinate_pos": 1, + "axis_x": 0.831, + "axis_y": 0.847666666666667 + }, + "size_spec": { + "width": 0.3, + "height": 0.3 + }, + "render_spec": { + "opacity": 1 + } + }, + "layer_config": { + "tags": { + "ICON_LAYER": { + + } + } + }, + "resource": { + "res_type": 3, + "res_image": { + "image_src": { + "src_type": 2, + "local": 3 + } + } + } + } + ], + "is_critical_group": true + }, + "mid": "2" + } + }, + { + "mid": 114514, + "name": "田所こうじ", + "sex": "保密", + "face": "http://i1.hdslb.com/bfs/face/875eb66bb952f16afa9634081a820dea8e3fac96.jpg", + "sign": "?!", + "rank": 10000, + "level": 6, + "silence": 0, + "vip": { + "type": 1, + "status": 0, + "due_date": 1683043200000, + "vip_pay_type": 0, + "theme_type": 0, + "label": { + "path": "", + "text": "", + "label_theme": "", + "text_color": "", + "bg_style": 0, + "bg_color": "", + "border_color": "", + "use_img_label": true, + "img_label_uri_hans": "", + "img_label_uri_hant": "", + "img_label_uri_hans_static": "https://i0.hdslb.com/bfs/vip/d7b702ef65a976b20ed854cbd04cb9e27341bb79.png", + "img_label_uri_hant_static": "https://i0.hdslb.com/bfs/activity-plat/static/20220614/e369244d0b14644f5e1a06431e22a4d5/KJunwh19T5.png" + }, + "avatar_subscript": 0, + "nickname_color": "", + "role": 0, + "avatar_subscript_url": "", + "tv_vip_status": 0, + "tv_vip_pay_type": 0, + "tv_due_date": 0, + "avatar_icon": { + "icon_resource": { + + } + } + }, + "pendant": { + "pid": 0, + "name": "", + "image": "", + "expire": 0, + "image_enhance": "", + "image_enhance_frame": "", + "n_pid": 0 + }, + "nameplate": { + "nid": 0, + "name": "", + "image": "", + "image_small": "", + "level": "", + "condition": "" + }, + "official": { + "role": 0, + "title": "", + "desc": "", + "type": -1 + }, + "birthday": -1590393600, + "is_fake_account": 0, + "is_deleted": 0, + "in_reg_audit": 0, + "face_nft": 0, + "face_nft_new": 0, + "is_senior_member": 0, + "digital_id": "", + "digital_type": -2, + "attestation": { + "type": 0, + "common_info": { + "title": "", + "prefix": "", + "prefix_title": "" + }, + "splice_info": { + "title": "" + }, + "icon": "", + "desc": "" + }, + "expert_info": { + "title": "", + "state": 0, + "type": 0, + "desc": "" + }, + "honours": { + "mid": 114514, + "colour": { + "dark": "#CE8620", + "normal": "#F0900B" + }, + "tags": null, + "is_latest_100honour": 0 + }, + "name_render": null, + "json_ava": { + "container_size": { + "width": 1.35, + "height": 1.35 + }, + "fallback_layers": { + "layers": [ + { + "visible": true, + "general_spec": { + "pos_spec": { + "coordinate_pos": 2, + "axis_x": 0.675, + "axis_y": 0.675 + }, + "size_spec": { + "width": 1, + "height": 1 + }, + "render_spec": { + "opacity": 1 + } + }, + "layer_config": { + "tags": { + "AVATAR_LAYER": { + + } + }, + "is_critical": true, + "layer_mask": { + "general_spec": { + "pos_spec": { + "coordinate_pos": 2, + "axis_x": 0.675, + "axis_y": 0.675 + }, + "size_spec": { + "width": 1, + "height": 1 + }, + "render_spec": { + "opacity": 1 + } + }, + "mask_src": { + "src_type": 3, + "draw": { + "draw_type": 1, + "fill_mode": 1, + "color_config": { + "day": { + "argb": "#FF000000" + } + } + } + } + } + }, + "resource": { + "res_type": 3, + "res_image": { + "image_src": { + "src_type": 1, + "placeholder": 6, + "remote": { + "url": "http://i1.hdslb.com/bfs/face/875eb66bb952f16afa9634081a820dea8e3fac96.jpg", + "bfs_style": "widget-layer-avatar" + } + } + } + } + } + ], + "is_critical_group": true + }, + "mid": "114514" + } + } + ] +} +``` +
\ No newline at end of file diff --git a/docs/user/relation.md b/docs/user/relation.md index 83d07d7..03e1a98 100644 --- a/docs/user/relation.md +++ b/docs/user/relation.md @@ -8,33 +8,33 @@ 以下说明中的 “目标用户” 指被查询的用户,“对方” 指返回的关系列表中的用户。 -| 字段 | 类型 | 内容 | 备注 | -| --------------- | ------------------------------------------- | -------------------------- | ------------------------------------------------------------ | -| mid | num | 用户 mid | | +| 字段 | 类型 | 内容 | 备注 | +| --------------- | ------------------------------------------- | -------------------------- | ----------------------------------------------------------------------------------------- | +| mid | num | 用户 mid | | | attribute | num | 对方对于**自己**的关系属性 | 0:未关注
~~1:悄悄关注(现已下线)~~
2:已关注
6:已互粉
128:已拉黑 | -| mtime | num | 对方关注目标用户时间 | 秒级时间戳
互关后刷新 | -| tag | 默认分组:null
存在至少一个分组:array | 目标用户将对方分组到的 id | | -| special | num | 目标用户特别关注对方标识 | 0:否
1:是 | -| contract_info | obj | 契约计划相关信息 | | -| uname | str | 用户昵称 | | -| face | str | 用户头像url | | -| sign | str | 用户签名 | | -| face_nft | num | 是否为 NFT 头像 | 0:非 NFT 头像
1:NFT 头像 | -| official_verify | obj | 认证信息 | | -| vip | obj | 会员信息 | | -| name_render | 有效时:obj
无效时:null | 昵称渲染信息 | | -| nft_icon | str | (?) | | -| rec_reason | str | 推荐该用户的原因 | 大多数情况下为空;如:`xxx关注了TA`、`xx粉丝 xx视频` | -| track_id | str | 内部记录id | 大多数情况下为空;如:`up_rec_0.router-main-2021485-5f84c987cf-dv8fg.1746380060327.607` | -| follow_time | str | (?) | | +| mtime | num | 对方关注目标用户时间 | 秒级时间戳
互关后刷新 | +| tag | 默认分组:null
存在至少一个分组:array | 目标用户将对方分组到的 id | | +| special | num | 目标用户特别关注对方标识 | 0:否
1:是 | +| contract_info | obj | 契约计划相关信息 | | +| uname | str | 用户昵称 | | +| face | str | 用户头像url | | +| sign | str | 用户签名 | | +| face_nft | num | 是否为 NFT 头像 | 0:非 NFT 头像
1:NFT 头像 | +| official_verify | obj | 认证信息 | | +| vip | obj | 会员信息 | | +| name_render | 有效时:obj
无效时:null | 昵称渲染信息 | | +| nft_icon | str | (?) | | +| rec_reason | str | 推荐该用户的原因 | 大多数情况下为空;如:`xxx关注了TA`、`xx粉丝 xx视频` | +| track_id | str | 内部记录id | 大多数情况下为空;如:`up_rec_0.router-main-2021485-5f84c987cf-dv8fg.1746380060327.607` | +| follow_time | str | (?) | | `list`中的对象中的`tag`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ------------------------ | ---- | -| 0 | num | 位于分组 1 的分组 id | | -| n | num | 位于分组(n+1)的分组 id | | -| …… | num | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | ------------------------ | ---- | +| 0 | num | 位于分组 1 的分组 id | | +| n | num | 位于分组(n+1)的分组 id | | +| …… | num | …… | …… | `list`中的对象中的`contract_info`对象: @@ -47,10 +47,10 @@ `list`中的对象中的`official_verify`对象: -| 字段 | 类型 | 内容 | 备注 | -| ---- | ---- | ------------ | ------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ------------ | ----------------------------------------- | | type | num | 用户认证类型 | -1:无
0:UP 主认证
1:机构认证 | -| desc | str | 用户认证信息 | 无为空 | +| desc | str | 用户认证信息 | 无为空 | `list`中的对象中的`vip`对象: @@ -89,42 +89,42 @@ **url参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| -------------- | ---- | ---------------------- | ------------ | ------------------------------------------------------------------- | -| vmid | num | 目标用户 mid | 必要 | | -| ps | num | 每页项数 | 非必要 | 默认为 50 | -| pn | num | 页码 | 非必要 | 默认为 1 | -| offset | str | 偏移量 | 非必要 | 从上次请求的响应数据中的 `data.offset` 获取
此项有效且不为 `rcmd` 时会从此偏移量开始返回粉丝列表,忽略参数 `pn` | -| last_access_ts | num | 上次访问粉丝列表的时间 | 非必要 | 秒级时间戳,从[获取自己粉丝列表的未读状态](#获取自己粉丝列表的未读状态)接口获取
当按照**智能推荐算法**排序时,会优先展示此时间后关注的粉丝 | -| from | str | 请求来源 | 非必要 | 当为 `main` 且目标用户为自己时,粉丝列表按照**智能推荐算法**排序,此时响应数据中的 `data.list` 的成员中的 `rec_reason` 与 `track_id` 为非空 | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| -------------- | ---- | ---------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------- | +| vmid | num | 目标用户 mid | 必要 | | +| ps | num | 每页项数 | 非必要 | 默认为 50 | +| pn | num | 页码 | 非必要 | 默认为 1 | +| offset | str | 偏移量 | 非必要 | 从上次请求的响应数据中的 `data.offset` 获取
此项有效且不为 `rcmd` 时会从此偏移量开始返回粉丝列表,忽略参数 `pn` | +| last_access_ts | num | 上次访问粉丝列表的时间 | 非必要 | 秒级时间戳,从[获取自己粉丝列表的未读状态](#获取自己粉丝列表的未读状态)接口获取
当按照**智能推荐算法**排序时,会优先展示此时间后关注的粉丝 | +| from | str | 请求来源 | 非必要 | 当为 `main` 且目标用户为自己时,粉丝列表按照**智能推荐算法**排序,此时响应数据中的 `data.list` 的成员中的 `rec_reason` 与 `track_id` 为非空 | **json回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ----------------------------------------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ---------------------------------------------------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-101:账号未登录
-352:请求被拦截
-400:请求错误
22118:由于该用户隐私设置,粉丝列表不可见 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | -| data | obj | 信息本体 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | +| data | obj | 信息本体 | | `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| ---------- | ----- | -------- | ---- | -| list | array | 明细列表 | | +| 字段 | 类型 | 内容 | 备注 | +| ---------- | ----- | -------- | ----------------------------------------------------------------------------------------------------- | +| list | array | 明细列表 | | | offset | str | 偏移量 | 供下次请求使用
普通:`{列表最后的粉丝的 mtime}:{列表最后的粉丝的 mid}`
智能推荐算法:`rcmd` | -| re_version | num | (?) | | -| total | num | 粉丝总数 | | +| re_version | num | (?) | | +| total | num | 粉丝总数 | | `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ------------ | ---------------------------------- | -| 0 | obj | 粉丝 1 | 详见 [关系列表对象](#关系列表对象) | -| n | obj | 粉丝 (n+1) | | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | ------------ | ---------------------------------- | +| 0 | obj | 粉丝 1 | 详见 [关系列表对象](#关系列表对象) | +| n | obj | 粉丝 (n+1) | | +| …… | obj | …… | …… | **示例:** @@ -256,23 +256,23 @@ curl -G 'https://api.bilibili.com/x/relation/fans' \ **url参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ---------- | ---- | -------------- | ------------ | ------------------------------------- | -| access_key | str | APP 登录 Token | APP 方式必要 | | -| vmid | num | 目标用户 mid | 必要 | | -| ps | num | 每页项数 | 非必要 | 默认为 50 | -| pn | num | 页码 | 非必要 | 默认为 1
仅可查看前 1000 名粉丝 | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ---------- | ---- | -------------- | ------------ | ------------------------------------ | +| access_key | str | APP 登录 Token | APP 方式必要 | | +| vmid | num | 目标用户 mid | 必要 | | +| ps | num | 每页项数 | 非必要 | 默认为 50 | +| pn | num | 页码 | 非必要 | 默认为 1
仅可查看前 1000 名粉丝 | **json回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ----------------------------------------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ---------------------------------------------------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-101:账号未登录
-352:请求被拦截
-400:请求错误
22118:由于该用户隐私设置,粉丝列表不可见 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | -| data | obj | 信息本体 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | +| data | obj | 信息本体 | | `data`对象: @@ -284,11 +284,11 @@ curl -G 'https://api.bilibili.com/x/relation/fans' \ `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ------------ | ---------------------------------- | -| 0 | obj | 粉丝 1 | 详见 [关系列表对象](#关系列表对象) | -| n | obj | 粉丝 (n+1) | 按照添加顺序排列 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | ------------ | ---------------------------------- | +| 0 | obj | 粉丝 1 | 详见 [关系列表对象](#关系列表对象) | +| n | obj | 粉丝 (n+1) | 按照添加顺序排列 | +| …… | obj | …… | …… | **示例:** @@ -405,6 +405,85 @@ curl -G 'https://api.bilibili.com/x/relation/followers' \ +### 查询用户粉丝明细 + +> + +*请求方式:GET* + +认证方式:无 + +返回目标用户前100个粉丝 + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ------ | ---- | ------------ | ------ | --------- | +| vmid | num | 目标用户 mid | 必要 | | +| ps | num | 每页项数 | 非必要 | 默认为 20 | +| pn | num | 页码 | 非必要 | 默认为 1 | + +**json回复:** + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | -------- | +| code | num | 返回值 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | +| data | obj | 信息本体 | | +| ts | num | 时间戳 | | + +`data.list`对象: + +| 字段 | 类型 | 内容 | 备注 | +| --------- | ---- | ------- | ---- | +| mid | num | 用户mid | | +| uname | str | 用户名 | | +| face | str | 头像 | | +| attribute | num | | | + + +**示例:** + +```shell +curl 'https://line3-h5-mobile-api.biligame.com/game/center/h5/user/relationship/follower_list?vmid=504140200&pn=5&ps=21' +``` +
+查看响应示例: + +```json +{ + "code": 0, + "data": { + "list": [ + { + "mid": "3493078644034173", + "attribute": 0, + "uname": "雨天下小雪啦", + "face": "//i0.hdslb.com/bfs/face/28ad110baa58db9265eca657fcba501589981555.jpg", + "attestation_display": { + "type": 0, + "desc": "" + } + }, + { + "mid": "1356049904", + "attribute": 0, + "uname": "一埋子", + "face": "//i2.hdslb.com/bfs/face/84356fd3b183284bc11b011b676432badb4096bf.jpg", + "attestation_display": { + "type": 0, + "desc": "" + } + }, + ] + }, + "ts": 1748829553371, + "request_id": "0684785391344bdc85e4e701bed41b1c" +} +``` +
+ ### 获取自己粉丝列表的未读状态 > @@ -471,24 +550,24 @@ curl 'https://api.bilibili.com/x/relation/followers/unread/count' \ **url参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ---------- | ---- | -------------- | ------------ | ------------------------------------------------------- | -| access_key | str | APP 登录 Token | APP 方式必要 | | -| vmid | num | 目标用户 mid | 必要 | | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ---------- | ---- | -------------- | ------------ | ----------------------------------------------------------------------------------- | +| access_key | str | APP 登录 Token | APP 方式必要 | | +| vmid | num | 目标用户 mid | 必要 | | | order_type | str | 排序方式 | 非必要 | 当目标用户为自己时有效
按照关注顺序排列:留空
按照最常访问排列:attention | -| ps | num | 每页项数 | 非必要 | 默认为 50 | -| pn | num | 页码 | 非必要 | 默认为 1
其他用户仅可查看前 100 个 | +| ps | num | 每页项数 | 非必要 | 默认为 50 | +| pn | num | 页码 | 非必要 | 默认为 1
其他用户仅可查看前 100 个 | **json回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ---------------------------------------------------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------------------------------------------------------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-352:请求被拦截
-400:请求错误
22115:用户已设置隐私,无法查看 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | -| data | obj | 信息本体 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | +| data | obj | 信息本体 | | `data`对象: @@ -500,11 +579,11 @@ curl 'https://api.bilibili.com/x/relation/followers/unread/count' \ `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ----------- | -------------------------------- | -| 0 | obj | 关注1 | 见 [关系列表对象](#关系列表对象) | -| n | obj | 关注(n+1) | 按照添加顺序排列 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | ----------- | -------------------------------- | +| 0 | obj | 关注1 | 见 [关系列表对象](#关系列表对象) | +| n | obj | 关注(n+1) | 按照添加顺序排列 | +| …… | obj | …… | …… | **示例:** @@ -615,12 +694,12 @@ curl -G 'https://api.bilibili.com/x/relation/followings' \ **url参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ------ | ---- | ------------ | ------ | ----------------------------- | -| vmid | num | 目标用户 mid | 必要 | | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ------ | ---- | ------------ | ------ | ----------------------------------------------------------- | +| vmid | num | 目标用户 mid | 必要 | | | order | str | 排序方式 | 非必要 | 按照降序排列:desc
按照升序排列:asc
默认降序排列 | -| ps | num | 每页项数 | 非必要 | 默认为 50 | -| pn | num | 页码 | 非必要 | 默认为 1
仅可查看前 5 页 | +| ps | num | 每页项数 | 非必要 | 默认为 50 | +| pn | num | 页码 | 非必要 | 默认为 1
仅可查看前 5 页 | **json回复:** @@ -643,42 +722,42 @@ curl -G 'https://api.bilibili.com/x/relation/followings' \ `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ----------- | --------------------------------------------- | -| 0 | obj | 关注 1 | 与 [关系列表对象](#关系列表对象) 数据结构**不同** | -| n | obj | 关注(n+1) | 按照添加顺序排列 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | ----------- | ------------------------------------------------- | +| 0 | obj | 关注 1 | 与 [关系列表对象](#关系列表对象) 数据结构**不同** | +| n | obj | 关注(n+1) | 按照添加顺序排列 | +| …… | obj | …… | …… | 数组`list`中的对象: -| 字段 | 类型 | 内容 | 备注 | -| --------------- | ---------------------------------------- | ------------ | --------------------------------------- | -| mid | num | 用户 mid | | -| attribute | num | 关注属性 | 0:未关注
2:已关注
6:已互粉 | -| mtime | num | 关注对方时间 | 时间戳
互关后刷新 | -| tag | 默认分组:null
存在至少一个分组:array | 分组 id | | -| special | num | 特别关注标志 | 0:否
1:是 | -| uname | str | 用户昵称 | | -| face | str | 用户头像 url | | -| sign | str | 用户签名 | | -| official_verify | obj | 认证信息 | | -| vip | obj | 会员信息 | | -| live | num | 是否直播 | 0:未直播
1:直播中 | +| 字段 | 类型 | 内容 | 备注 | +| --------------- | ------------------------------------------- | ------------ | --------------------------------------- | +| mid | num | 用户 mid | | +| attribute | num | 关注属性 | 0:未关注
2:已关注
6:已互粉 | +| mtime | num | 关注对方时间 | 时间戳
互关后刷新 | +| tag | 默认分组:null
存在至少一个分组:array | 分组 id | | +| special | num | 特别关注标志 | 0:否
1:是 | +| uname | str | 用户昵称 | | +| face | str | 用户头像 url | | +| sign | str | 用户签名 | | +| official_verify | obj | 认证信息 | | +| vip | obj | 会员信息 | | +| live | num | 是否直播 | 0:未直播
1:直播中 | 数组`list`中的对象中的`tag`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ------------------------ | ---- | -| 0 | num | 位于分组 1 的分组 id | | -| n | num | 位于分组(n+1)的分组 id | | -| …… | num | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | ------------------------ | ---- | +| 0 | num | 位于分组 1 的分组 id | | +| n | num | 位于分组(n+1)的分组 id | | +| …… | num | …… | …… | `list`中的对象中的`official_verify`对象: -| 字段 | 类型 | 内容 | 备注 | -| ---- | ---- | ------------ | ------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ------------ | ---------------------------------------- | | type | num | 用户认证类型 | -1:无
0:UP主认证
1:机构认证 | -| desc | str | 用户认证信息 | 无为空 | +| desc | str | 用户认证信息 | 无为空 | `list`中的对象中的`vip`对象: @@ -790,11 +869,11 @@ curl -G 'https://app.biliapi.net/x/v2/relation/followings' \ **url参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ------ | ---- | ------------ | ----------- | -------- | -| vmid | num | 目标用户mid | 必要 | | -| ps | num | 每页项数 | 非必要 | 默认为20 | -| pn | num | 页码 | 非必要 | 默认为1 | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ------ | ---- | ----------- | ------ | -------- | +| vmid | num | 目标用户mid | 必要 | | +| ps | num | 每页项数 | 非必要 | 默认为20 | +| pn | num | 页码 | 非必要 | 默认为1 | **json回复:** @@ -810,17 +889,17 @@ curl -G 'https://app.biliapi.net/x/v2/relation/followings' \ `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| ---------- | ----- | -------- | ------------ | -| list | array | 明细列表 | | +| 字段 | 类型 | 内容 | 备注 | +| ---- | ----- | -------- | ---- | +| list | array | 明细列表 | | `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------- | ---------------- | -| 0 | obj | 关注1 | | -| n | obj | 关注(n+1) | 按照关注顺序排列 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | --------- | ---------------- | +| 0 | obj | 关注1 | | +| n | obj | 关注(n+1) | 按照关注顺序排列 | +| …… | obj | …… | …… | 数组`list`中的对象: @@ -915,11 +994,11 @@ curl -G 'https://line3-h5-mobile-api.biligame.com/game/center/h5/user/relationsh `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------- | -------------------------------- | -| 0 | obj | 匹配项目 1 | 见 [关系列表对象](#关系列表对象) | -| n | obj | 匹配项目(n+1) | 按照添加顺序排列 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | --------------- | -------------------------------- | +| 0 | obj | 匹配项目 1 | 见 [关系列表对象](#关系列表对象) | +| n | obj | 匹配项目(n+1) | 按照添加顺序排列 | +| …… | obj | …… | …… | **示例:** @@ -1016,11 +1095,11 @@ curl -G 'https://api.bilibili.com/x/relation/followings/search' \ `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------- | -------------------------------- | -| 0 | obj | 共同关注 1 | 见 [关系列表对象](#关系列表对象) | -| n | obj | 共同关注(n+1) | 按照添加顺序排列 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | --------------- | -------------------------------- | +| 0 | obj | 共同关注 1 | 见 [关系列表对象](#关系列表对象) | +| n | obj | 共同关注(n+1) | 按照添加顺序排列 | +| …… | obj | …… | …… | **示例:** @@ -1139,11 +1218,11 @@ curl -G 'https://api.bilibili.com/x/relation/same/followings' \ `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------- | -------------------------------- | -| 0 | obj | 悄悄关注 1 | 见 [关系列表对象](#关系列表对象) | -| n | obj | 悄悄关注(n+1) | 按照操作顺序排列 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | --------------- | -------------------------------- | +| 0 | obj | 悄悄关注 1 | 见 [关系列表对象](#关系列表对象) | +| n | obj | 悄悄关注(n+1) | 按照操作顺序排列 | +| …… | obj | …… | …… | **示例:** @@ -1232,11 +1311,11 @@ curl -G 'https://api.bilibili.com/x/relation/whispers' \ `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ----------- | -------------------------------- | -| 0 | obj | 互关 1 | 见 [关系列表对象](#关系列表对象) | -| n | obj | 互关(n+1) | 按照添加顺序排列 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | ----------- | -------------------------------- | +| 0 | obj | 互关 1 | 见 [关系列表对象](#关系列表对象) | +| n | obj | 互关(n+1) | 按照添加顺序排列 | +| …… | obj | …… | …… | **示例:** @@ -1430,11 +1509,11 @@ curl -G 'https://api.bilibili.com/x/relation/friends' \ **url参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ---------- | ---- | -------------- | ------------ | --------- | -| access_key | str | APP 登录 Token | APP 方式必要 | | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ---------- | ---- | -------------- | ------------ | --------------------------------------- | +| access_key | str | APP 登录 Token | APP 方式必要 | | | ps | num | 每页项数 | 非必要 | 默认为 50,且最多为50,大于50则按50输出 | -| pn | num | 页码 | 非必要 | 默认为 1 | +| pn | num | 页码 | 非必要 | 默认为 1 | **json回复:** @@ -1457,11 +1536,11 @@ curl -G 'https://api.bilibili.com/x/relation/friends' \ `data`中的`list`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | -------------- | -------------------------------- | -| 0 | obj | 黑名单 1 | 见 [关系列表对象](#关系列表对象) | -| n | obj | 黑名单 (n+1) | 按照添加顺序排列 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | -------------- | -------------------------------- | +| 0 | obj | 黑名单 1 | 见 [关系列表对象](#关系列表对象) | +| n | obj | 黑名单 (n+1) | 按照添加顺序排列 | +| …… | obj | …… | …… | **示例:** @@ -1559,35 +1638,35 @@ curl -G 'https://api.bilibili.com/x/relation/blacks' \ **正文参数(application/x-www-form-urlencoded):** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ---------- | ---- | ------------------------- | --------------- | -------------------------------------------------------- | -| access_key | str | APP 登录 Token | APP 方式必要 | | -| fid | num | 目标用户mid | 必要 | | -| act | num | 操作代码 | 必要 | **操作代码见下表** | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ---------- | ---- | ------------------------- | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| access_key | str | APP 登录 Token | APP 方式必要 | | +| fid | num | 目标用户mid | 必要 | | +| act | num | 操作代码 | 必要 | **操作代码见下表** | | re_src | num | 关注来源代码 | 非必要 | 包月充电:1
个人空间:11
视频:14
评论区:15
视频播放器结束页面:17
H5推荐关注:58
H5关注列表:106
H5粉丝列表:107
专栏:115
私信:118
搜索:120
视频播放器左上角关注按钮:164
H5共同关注:167
创作激励计划:192
活动页面:222
联合投稿视频:229
消息中心点赞详情:235
视频播放器关注弹幕:245 | -| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | +| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | 操作代码`act`: -| 代码 | 含义 | 备注 | -| ---- | ------------ | ------------------------------------------------ | -| 1 | 关注 | 无法对已注销或不存在的用户进行此操作 | -| 2 | 取关 | | +| 代码 | 含义 | 备注 | +| ---- | ------------ | ---------------------------------------------------- | +| 1 | 关注 | 无法对已注销或不存在的用户进行此操作 | +| 2 | 取关 | | | 3 | 悄悄关注 | **现已下线**,使用本操作代码请求接口会提示“请求错误” | -| 4 | 取消悄悄关注 | | -| 5 | 拉黑 | 无法对已注销或不存在的用户进行此操作 | -| 6 | 取消拉黑 | | -| 7 | 踢出粉丝 | | +| 4 | 取消悄悄关注 | | +| 5 | 拉黑 | 无法对已注销或不存在的用户进行此操作 | +| 6 | 取消拉黑 | | +| 7 | 踢出粉丝 | | **json回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | code | num | 返回值 | 0:成功
-101:账号未登录
-102:账号被封停
-111:csrf校验失败
-400:请求错误
22001:不能对自己进行此操作
22002:因对方隐私设置,你还不能关注
22003:关注失败,请将该用户移除黑名单之后再试
22008:黑名单达到上限
22009:关注失败,已达关注上限
22013:账号已注销,无法完成操作
22014:已经关注用户,无法重复关注
22120:重复加入黑名单
40061:用户不存在 | -| message | str | 错误信息 | 默认为0 | -| ttl | num | 1 | | +| message | str | 错误信息 | 默认为0 | +| ttl | num | 1 | | **示例:** @@ -1627,24 +1706,24 @@ curl 'https://api.bilibili.com/x/relation/modify' \ **正文参数(application/x-www-form-urlencoded):** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ---------- | ---- | ------------------------- | --------------- | ------------------------------------------------- | -| access_key | str | APP 登录 Token | APP 方式必要 | | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ---------- | ---- | ------------------------- | --------------- | ----------------------------------------------------------- | +| access_key | str | APP 登录 Token | APP 方式必要 | | | fids | nums | 目标用户 mid 列表 | 必要 | 每个成员之间用 `,` 间隔,最多 50 个成员,不能包含自己的 mid | -| act | num | 操作代码 | 必要 | 同上
仅可为 1 或 5,故只能进行批量关注和拉黑 | -| re_src | num | 关注来源代码 | 非必要 | 同上 | -| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | +| act | num | 操作代码 | 必要 | 同上
仅可为 1 或 5,故只能进行批量关注和拉黑 | +| re_src | num | 关注来源代码 | 非必要 | 同上 | +| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | **json回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | -------------------------------------------------------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-101:账号未登录
-102:账号被封停
-111:csrf校验失败
-400:请求错误
22003:用户位于黑名单 | -| message | str | 错误信息 | 默认为0 | -| ttl | num | 1 | | -| data | obj | 数据本体 | | +| message | str | 错误信息 | 默认为0 | +| ttl | num | 1 | | +| data | obj | 数据本体 | | `data`对象: @@ -1654,11 +1733,11 @@ curl 'https://api.bilibili.com/x/relation/modify' \ `data`中的`failed_fids`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------------- | ---- | -| 0 | num | 操作失败的 mid 1 | | -| n | num | 操作失败的 mid(n+1) | | -| …… | num | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | --------------------- | ---- | +| 0 | num | 操作失败的 mid 1 | | +| n | num | 操作失败的 mid(n+1) | | +| …… | num | …… | …… | **示例:** @@ -1693,21 +1772,21 @@ curl 'https://api.bilibili.com/x/relation/batch/modify' \ ### 关系属性对象 -| 字段 | 类型 | 内容 | 备注 | -| --------- | --------------------------------------- | ------------ | -------------------------------------------------------- | -| mid | num | 目标用户 mid | | -| attribute | num | 关系属性 | 0:未关注
~~1:悄悄关注(已弃用)~~
2:已关注
6:已互粉
128:已拉黑 | -| mtime | num | 关注对方时间 | 时间戳
未关注为 0 | -| tag | 默认分组:null
存在至少一个分组:array | 分组 id | | -| special | num | 特别关注标志 | 0:否
1:是 | +| 字段 | 类型 | 内容 | 备注 | +| --------- | ------------------------------------------- | ------------ | --------------------------------------------------------------------------------------- | +| mid | num | 目标用户 mid | | +| attribute | num | 关系属性 | 0:未关注
~~1:悄悄关注(已弃用)~~
2:已关注
6:已互粉
128:已拉黑 | +| mtime | num | 关注对方时间 | 时间戳
未关注为 0 | +| tag | 默认分组:null
存在至少一个分组:array | 分组 id | | +| special | num | 特别关注标志 | 0:否
1:是 | `tag`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------------- | ---- | -| 0 | num | 位于分组 1 的分组 | | -| n | num | 位于分组(n+1)的分组 | | -| …… | num | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | --------------------- | ---- | +| 0 | num | 位于分组 1 的分组 | | +| n | num | 位于分组(n+1)的分组 | | +| …… | num | …… | …… | ### 查询用户与自己关系(仅关注) @@ -1925,10 +2004,10 @@ curl -G 'https://api.bilibili.com/x/relation/relations' \ 分组 id 特殊值: -| id | 含义 | -| ---- | -------- | -| 0 | 默认分组 | -| -10 | 特别关心 | +| id | 含义 | +| --- | -------- | +| 0 | 默认分组 | +| -10 | 特别关心 | ### 查询关注分组列表 @@ -1948,29 +2027,29 @@ curl -G 'https://api.bilibili.com/x/relation/relations' \ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ------ | -------- | ----------------------------- | -| code | num | 返回值 | 0:成功
-101:账号未登录 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ----- | -------- | ----------------------------- | +| code | num | 返回值 | 0:成功
-101:账号未登录 | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | | data | array | 分组列表 | | `data`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ----------- | ---- | -| 0 | obj | 分组 1 | | -| n | obj | 分组(n+1) | | -| …… | num | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | ----------- | ---- | +| 0 | obj | 分组 1 | | +| n | obj | 分组(n+1) | | +| …… | num | …… | …… | 数组`data`中的对象: -| 字段 | 类型 | 内容 | 备注 | -| ----- | ---- | ---------- | ---- | +| 字段 | 类型 | 内容 | 备注 | +| ----- | ---- | ---------- | ------------------------------ | | tagid | num | 分组 id | -10:特别关注
0:默认分组 | -| name | str | 分组名称 | | -| count | num | 分组成员数 | | -| tip | str | 提示信息 | | +| name | str | 分组名称 | | +| count | num | 分组成员数 | | +| tip | str | 提示信息 | | **示例:** @@ -2045,48 +2124,48 @@ curl 'https://api.bilibili.com/x/relation/tags' \ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ----- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ----- | -------- | -------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-101:账号未登录
-400:请求错误
22104:该分组不存在 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | -| data | array | 成员列表 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | +| data | array | 成员列表 | | `data`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------- | --------------------------------------- | -| 0 | obj | 成员信息 1 | 与[关系列表对象](#关系列表对象)**不同** | -| n | obj | 成员信息(n+1) | 按照添加顺序排序 | -| …… | obj | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | --------------- | --------------------------------------- | +| 0 | obj | 成员信息 1 | 与[关系列表对象](#关系列表对象)**不同** | +| n | obj | 成员信息(n+1) | 按照添加顺序排序 | +| …… | obj | …… | …… | `data` 数组中的对象: -| 字段 | 类型 | 内容 | 备注 | -| --------------- | ---- | --------------- | -------------- | -| mid | num | 用户mid | | -| attribute | num | 关系属性 | 恒为 `0` | -| tag | null | 关注分组id | 恒为 `null` | -| special | num | 是否特别关注 | 恒为 `0` | -| contract_info | obj | 契约计划信息 | | -| uname | str | 用户昵称 | | -| face | str | 用户头像url | | -| sign | str | 用户签名 | | -| face_nft | num | 是否为 NFT 头像 | | -| official_verify | obj | 认证信息 | 具体见下 | -| vip | obj | 会员信息 | | -| live | obj | 直播状态 | 具体见下 | -| nft_icon | str | (?) | | -| rec_reason | str | (?) | | -| track_id | str | (?) | | -| follow_time | str | (?) | | +| 字段 | 类型 | 内容 | 备注 | +| --------------- | ---- | --------------- | ----------- | +| mid | num | 用户mid | | +| attribute | num | 关系属性 | 恒为 `0` | +| tag | null | 关注分组id | 恒为 `null` | +| special | num | 是否特别关注 | 恒为 `0` | +| contract_info | obj | 契约计划信息 | | +| uname | str | 用户昵称 | | +| face | str | 用户头像url | | +| sign | str | 用户签名 | | +| face_nft | num | 是否为 NFT 头像 | | +| official_verify | obj | 认证信息 | 具体见下 | +| vip | obj | 会员信息 | | +| live | obj | 直播状态 | 具体见下 | +| nft_icon | str | (?) | | +| rec_reason | str | (?) | | +| track_id | str | (?) | | +| follow_time | str | (?) | | `data`中的对象中的`official_verify`对象: -| 字段 | 类型 | 内容 | 备注 | -| ---- | ---- | ------------ | ------------------- | +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ------------ | ----------------------------------------- | | type | num | 用户认证类型 | -1:无
0:UP 主认证
1:机构认证 | -| desc | str | 用户认证信息 | 无为空 | +| desc | str | 用户认证信息 | 无为空 | `data`中的对象中的`vip`对象: @@ -2214,10 +2293,10 @@ curl -G 'https://api.bilibili.com/x/relation/tag' \ `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| ------------------- | ---- | --------- | ---- | +| 字段 | 类型 | 内容 | 备注 | +| --------------- | ---- | -------- | ---------------------------------- | | {加入的分组 id} | str | 分组名称 | 若目标用户存在默认分组中,则不显示 | -| …… | str | …… | 下同 | +| …… | str | …… | 下同 | **示例:** @@ -2273,11 +2352,11 @@ curl -G 'https://api.bilibili.com/x/relation/tag/user' \ `data`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | -------------- | ---- | -| 0 | num | 成员 1 mid | | -| n | num | 成员(n+1)mid | | -| …… | num | …… | …… | +| 项 | 类型 | 内容 | 备注 | +| --- | ---- | -------------- | ---- | +| 0 | num | 成员 1 mid | | +| n | num | 成员(n+1)mid | | +| …… | num | …… | …… | **示例:** @@ -2341,12 +2420,12 @@ curl 'https://api.bilibili.com/x/relation/tag/special' \ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-111:csrf校验失败
-101:账号未登录
-400:请求错误
22101:分组名称存在不允许的字符
22102:分组数量超过限制
22103:分组名过长
22106:该分组已经存在 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | -| data | obj | 信息本体 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | +| data | obj | 信息本体 | | `data`对象: @@ -2402,11 +2481,11 @@ curl 'https://api.bilibili.com/x/relation/tag/create' \ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-111:csrf校验失败
-101:账号未登录
-400:请求错误
22101:分组名称存在不允许的字符
22103:分组名过长
22104:该分组不存在 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | **示例:** @@ -2455,11 +2534,11 @@ curl 'https://api.bilibili.com/x/relation/tag/update' \ 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-111:csrf校验失败
-101:账号未登录
-400:请求错误 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | 示例: @@ -2499,22 +2578,22 @@ curl 'https://api.bilibili.com/x/relation/tag/del' \ **正文参数(application/x-www-form-urlencoded):** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ---------- | ---- | ------------------------ | -------------- | ------------------- | -| access_key | str | APP 登录 Token | APP 方式必要 | | -| fids | nums | 目标用户 mid 列表 | 必要 | 每个之间用`,`间隔 | -| tagids | nums | 分组 id 列表 | 必要 | 每个之间用`,`间隔 | -| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ---------- | ---- | ------------------------- | --------------- | ----------------- | +| access_key | str | APP 登录 Token | APP 方式必要 | | +| fids | nums | 目标用户 mid 列表 | 必要 | 每个之间用`,`间隔 | +| tagids | nums | 分组 id 列表 | 必要 | 每个之间用`,`间隔 | +| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | **json回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------------------------------------------------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-111:csrf校验失败
-101:账号未登录
-400:请求错误
22104:分组不存在
22105:未关注 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | **示例:** @@ -2551,22 +2630,22 @@ curl 'https://api.bilibili.com/x/relation/tags/addUsers' \ **正文参数(application/x-www-form-urlencoded):** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ---------- | ---- | ------------------------ | -------------- | ------------------- | -| access_key | str | APP 登录 Token | APP 方式必要 | | -| fids | nums | 待复制的用户 mid 列表 | 必要 | 每个之间用`,`间隔 | -| tagids | nums | 目标分组 id 列表 | 必要 | 每个之间用`,`间隔 | -| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ---------- | ---- | ------------------------- | --------------- | ----------------- | +| access_key | str | APP 登录 Token | APP 方式必要 | | +| fids | nums | 待复制的用户 mid 列表 | 必要 | 每个之间用`,`间隔 | +| tagids | nums | 目标分组 id 列表 | 必要 | 每个之间用`,`间隔 | +| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | **json回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------------------------------------------------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-111:csrf校验失败
-101:账号未登录
-400:请求错误
22104:分组不存在
22105:未关注 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | **示例:** @@ -2603,23 +2682,23 @@ curl 'https://api.bilibili.com/x/relation/tags/copyUsers' \ **正文参数(application/x-www-form-urlencoded):** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ------------ | ---- | ------------------------ | -------------- | ------------------- | -| access_key | str | APP 登录 Token | APP 方式必要 | | -| beforeTagids | nums | 原分组 id 列表 | 必要 | 每个之间用`,`间隔 | -| afterTagids | nums | 新分组 id 列表 | 必要 | 每个之间用`,`间隔 | -| fids | nums | 待移动的用户 mid 列表 | 必要 | 每个之间用`,`间隔 | -| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ------------ | ---- | ------------------------- | --------------- | ----------------- | +| access_key | str | APP 登录 Token | APP 方式必要 | | +| beforeTagids | nums | 原分组 id 列表 | 必要 | 每个之间用`,`间隔 | +| afterTagids | nums | 新分组 id 列表 | 必要 | 每个之间用`,`间隔 | +| fids | nums | 待移动的用户 mid 列表 | 必要 | 每个之间用`,`间隔 | +| csrf | str | CSRF Token(位于 Cookie) | Cookie 方式必要 | | **json回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------------------------------------ | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------------------------------------------------------------------------------------------------------------------- | | code | num | 返回值 | 0:成功
-111:csrf校验失败
-101:账号未登录
-400:请求错误
22104:分组不存在
22105:未关注 | -| message | str | 错误信息 | 默认为 0 | -| ttl | num | 1 | | +| message | str | 错误信息 | 默认为 0 | +| ttl | num | 1 | | **示例:**