bilibili-API-collect/user/vip.md
2022-10-08 16:41:16 +08:00

169 lines
5.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 大会员兑换福利
- [大会员兑换福利](#大会员兑换福利)
- [卡券状态查询](#卡券状态查询)
- [兑换卡券](#兑换卡券)
---
## 卡券状态查询
> http://api.bilibili.com/x/vip/privilege/my
*请求方式:GET*
认证方式CookieSESSDATA或APP
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
|---------|-----|------|-------------------------------------|
| code | num | 返回值 | -101账号未登录<br />-400请求错误<br />0成功 |
| message | str | 错误信息 | |
| ttl | num | 1 | |
| data | obj | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
|-----------------|-------|--------|-----|
| list | array | 卡券信息列表 | |
| is_short_vip | bool | (?) | |
| is_freight_open | bool | (?) | |
`list`数组:
| 字段 | 类型 | 内容 | 备注 |
|-----|-----|-------------|-----|
| 0 | obj | B币兑换状态 | |
| 1 | obj | 会员购优惠券兑换状态 | |
| 2 | obj | 漫画福利券兑换状态 | |
| 3 | obj | 会员购包邮券兑换状态 | |
| 4 | obj | 漫画商城优惠券兑换状态 | |
`list`中的对象:
| 字段 | 类型 | 内容 | 备注 |
|-------------------|-----|------------|--------------------------------------------------------------|
| type | num | 卡券类型 | 1B币券<br />2会员购优惠券<br />3漫画福利券<br />4会员购包邮券<br/>5漫画商城优惠券 |
| state | num | 兑换状态 | 0当月未兑换<br />1已兑换 |
| expire_time | num | 本轮卡券过期时间戳 | 当月月底 |
| vip_type | num | | 2年度大会员可兑换 |
| next_receive_days | num | 距下一轮兑换剩余天数 | |
| period_end_unix | num | 下一轮兑换开始时间戳 | 秒级时间戳 |
**示例:**
```shell
curl -G 'http://api.bilibili.com/x/vip/privilege/my' \
-b "SESSDATA=xxx"
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"list": [
{
"type": 1,
"state": 0,
"expire_time": 1667231999,
"vip_type": 2,
"next_receive_days": 29,
"period_end_unix": 1667491200
},
{
"type": 2,
"state": 0,
"expire_time": 1667231999,
"vip_type": 2,
"next_receive_days": 29,
"period_end_unix": 1667491200
},
{
"type": 3,
"state": 0,
"expire_time": 1667231999,
"vip_type": 2,
"next_receive_days": 29,
"period_end_unix": 1667491200
},
{
"type": 4,
"state": 0,
"expire_time": 1667231999,
"vip_type": 2,
"next_receive_days": 29,
"period_end_unix": 1667491200
},
{
"type": 5,
"state": 0,
"expire_time": 1667231999,
"vip_type": 2,
"next_receive_days": 29,
"period_end_unix": 1667491200
}
],
"is_short_vip": false,
"is_freight_open": true
}
}
```
</details>
## 兑换卡券
> http://api.bilibili.com/x/vip/privilege/receive
*请求方式:POST*
认证方式Cookie(SESSDATA)
**正文参数:**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
|------|-----|------------|-----|--------------------------------------------------------------|
| type | num | 兑换类型 | 必要 | 1B币券<br />2会员购优惠券<br />3漫画福利券<br />4会员购包邮券<br/>5漫画商城优惠券 |
| csrf | num | CSRF token | 必要 | Cookie bili_jct字段 |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
|---------|-----|------|---------------------------------------------------------------------------------------------------|
| code | num | 返回值 | -101账号未登录<br />-111csrf 校验失败<br />-400请求错误<br />69800网络繁忙 请稍后再试<br />69801你已领取过该权益<br />0成功 |
| message | str | 错误信息 | |
| ttl | num | 1 | |
**示例:**
```shell
curl 'http://api.bilibili.com/x/vip/privilege/receive' \
-b 'SESSDATA=xxx' \
--data-urlencode 'type=1' \
--data-urlencode 'csrf=csrf_token'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1
}
```
</details>