添加老粉计划 (#537)

* 添加老粉计划

* 添加老粉计划

* 修改格式
This commit is contained in:
7rikka 2022-11-30 15:26:21 +08:00 committed by GitHub
parent 18060ddd12
commit c723ff9848
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 177 additions and 38 deletions

131
user/contract.md Normal file
View File

@ -0,0 +1,131 @@
# 加入老粉计划
> https://api.bilibili.com/x/v1/contract/add_contract
*请求方式POST*
是否需要登录:`是`
认证方式Cookie(SESSDATA)
**正文参数 (application/x-www-form-urlencoded)**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
|----------|-----|--------|-----|-----|
| aid | str | `空串` | | |
| up_mid | str | UP主UID | 必要 | |
| source | str | `4` | | |
| scene | str | `105` | | |
| platform | str | `web` | | |
| mobi_app | str | `pc` | | |
| csrf | str | 用户csrf | 必要 | |
**json回复**
根对象:
| 字段名 | 类型 | 内容 | 备注 |
|---------|-----|------|-------------------------|
| code | num | 响应码 | 0成功<br/>158001`不满足条件` |
| message | str | 0 | |
| ttl | num | 1 | |
| data | obj | 信息本体 | |
`data`对象
| 字段名 | 类型 | 内容 | 备注 |
|---------------|------|-----------------------------------|-----|
| allow_message | bool | `true` | |
| input_text | str | `UP主加油看好你噢` | |
| input_title | str | `感谢你对UP主的特别支持“老粉”可期私信留言鼓励下TA吧 ` | |
**示例:**
```shell
curl --location --request POST 'https://api.bilibili.com/x/v1/contract/add_contract' \
--header 'Cookie: SESSDATA=xxx' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'up_mid=2' \
--data-urlencode 'csrf=xxx'
```
<details>
<summary>点击查看</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"allow_message": true,
"input_text": "UP主加油看好你噢",
"input_title": "感谢你对UP主的特别支持“老粉”可期私信留言鼓励下TA吧 "
}
}
```
</details>
# 老粉计划发送留言
> https://api.bilibili.com/x/v1/contract/add_message
*请求方式POST*
认证方式Cookie (SESSDATA)
**正文参数 (application/x-www-form-urlencoded)**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
|---------|-----|--------|-----|-----|
| aid | str | `空串` | | |
| up_mid | str | UP主UID | 必要 | |
| source | str | `4` | | |
| scene | str | `105` | | |
| content | str | 留言内容 | 必要 | |
| csrf | str | 用户csrf | 必要 | |
**json回复**
根对象:
| 字段名 | 类型 | 内容 | 备注 |
|---------|-----|------|------------------------------|
| code | num | 响应码 | 0成功<br/>158005您跟up主还不是契约关系 |
| message | str | 0 | |
| ttl | num | 1 | |
| data | obj | 信息本体 | |
`data`对象
| 字段名 | 类型 | 内容 | 备注 |
|---------------|-----|------------------|-----|
| success_toast | str | `提交成功UP主已收到留言~` | |
**示例:**
```shell
curl --location --request POST 'https://api.bilibili.com/x/v1/contract/add_message' \
--header 'Cookie: SESSDATA=xxx' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'up_mid=2' \
--data-urlencode 'content=..' \
--data-urlencode 'csrf=xxx'
```
<details>
<summary>点击查看</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"success_toast": "提交成功UP主已收到留言~"
}
}
```
</details>

View File

@ -36,44 +36,45 @@
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
|------------------|------|------------|---------------------------------------------------------------|
| mid | num | mid | |
| name | str | 昵称 | |
| sex | str | 性别 | 男/女/保密 |
| face | str | 头像链接 | |
| face_nft | num | 是否为 nft 头像 | `0`不是nft头像<br />`1`是 nft 头像 |
| face_nft_type | num | | 0,1 |
| sign | str | 签名 | |
| rank | num | 用户权限等级 | 目前应该无任何作用<br/>50000级未答题<br/>10000普通会员<br/>20000字幕君<br/>25000VIP<br/>30000真·职人<br/>32000管理员 |
| level | num | 当前等级 | 0-6级 |
| jointime | num | 注册时间 | 此接口返回恒为`0` |
| moral | num | 节操值 | 此接口返回恒为`0` |
| silence | num | 封禁状态 | 0正常<br />1被封 |
| coins | num | 硬币数 | 需要登录(Cookie) <br />只能查看自己的<br />默认为0 |
| fans_badge | bool | 是否具有粉丝勋章 | false<br />true有 |
| fans_medal | obj | 粉丝勋章信息 | |
| official | obj | 认证信息 | |
| vip | obj | 会员信息 | |
| pendant | obj | 头像框信息 | |
| nameplate | obj | 勋章信息 | |
| user_honour_info | obj | | |
| is_followed | bool | 是否关注此用户 | true已关注<br />false未关注<br />需要登录(Cookie) <br />未登录恒为false |
| top_photo | str | 主页头图链接 | |
| theme | obj | 空 | **作用尚不明确** |
| sys_notice | obj | 系统通知 | 无内容则为空对象<br />主要用于展示如用户争议、纪念账号等等 |
| live_room | obj | 直播间信息 | |
| birthday | str | 生日 | MM-DD<br />如设置隐私为空 |
| school | obj | 学校 | |
| profession | obj | 专业资质信息 | |
| tags | null | 个人标签 | |
| series | obj | | |
| is_senior_member | num | 是否为硬核会员 | 0<br />1是 |
| mcn_info | null | | |
| gaia_res_type | num | | |
| gaia_data | null | | |
| is_risk | bool | | |
| elec | obj | 充电信息 | |
| 字段 | 类型 | 内容 | 备注 |
|------------------|------|------------|--------------------------------------------------------------------------------------------------|
| mid | num | mid | |
| name | str | 昵称 | |
| sex | str | 性别 | 男/女/保密 |
| face | str | 头像链接 | |
| face_nft | num | 是否为 nft 头像 | `0`不是nft头像<br />`1`是 nft 头像 |
| face_nft_type | num | | 0,1 |
| sign | str | 签名 | |
| rank | num | 用户权限等级 | 目前应该无任何作用<br/>50000级未答题<br/>10000普通会员<br/>20000字幕君<br/>25000VIP<br/>30000真·职人<br/>32000管理员 |
| level | num | 当前等级 | 0-6级 |
| jointime | num | 注册时间 | 此接口返回恒为`0` |
| moral | num | 节操值 | 此接口返回恒为`0` |
| silence | num | 封禁状态 | 0正常<br />1被封 |
| coins | num | 硬币数 | 需要登录(Cookie) <br />只能查看自己的<br />默认为0 |
| fans_badge | bool | 是否具有粉丝勋章 | false<br />true有 |
| fans_medal | obj | 粉丝勋章信息 | |
| official | obj | 认证信息 | |
| vip | obj | 会员信息 | |
| pendant | obj | 头像框信息 | |
| nameplate | obj | 勋章信息 | |
| user_honour_info | obj | | |
| is_followed | bool | 是否关注此用户 | true已关注<br />false未关注<br />需要登录(Cookie) <br />未登录恒为false |
| top_photo | str | 主页头图链接 | |
| theme | obj | 空 | **作用尚不明确** |
| sys_notice | obj | 系统通知 | 无内容则为空对象<br />主要用于展示如用户争议、纪念账号等等 |
| live_room | obj | 直播间信息 | |
| birthday | str | 生日 | MM-DD<br />如设置隐私为空 |
| school | obj | 学校 | |
| profession | obj | 专业资质信息 | |
| tags | null | 个人标签 | |
| series | obj | | |
| is_senior_member | num | 是否为硬核会员 | 0<br />1是 |
| mcn_info | null | | |
| gaia_res_type | num | | |
| gaia_data | null | | |
| is_risk | bool | | |
| elec | obj | 充电信息 | |
| contract | obj | 是否显示老粉计划 | |
`rank`示例
@ -311,6 +312,13 @@
| icon | str | `空串` | |
| jump_url | str | `空串` | |
`data`中的`contract`对象:
| 字段名 | 类型 | 内容 | 备注 |
|-------------------|------|-----------|---------------------------|
| is_display | bool | | true/false<br/>在页面中未使用此字段 |
| is_follow_display | bool | 是否在显示老粉计划 | true显示<br/>false不显示 |
**示例:**
查询用户`mid=2`的详细信息