返回提交历史
Modified
electric/Bcoin.md
+170
-4
XFEstudio/bilibili-API-collect
新增v2版本B币充电接口文档 (#120)
* 新增v2版本B币充电接口文档 * 给旧接口添加了折叠控件 Co-authored-by: SocialSisterYi <45892418+SocialSisterYi@users.noreply.github.com>
6906e43
代码差异
1 个文件
+170
-4
@@ -2,15 +2,180 @@
2
2
3
3
<img src="/imgs/battery-100.png" width="100" height="100"/>
4
4
5
**注:1B币折合10电池,一般地充电10电池可获得1经验**
5
**注:以前充电是电池的概念,1B币折合10电池,一般地充电10电池可获得1经验**
6
7
**目前(2020/12/02后)则是贝壳的概念,1B币折合1贝壳、1经验(如果存在小数点,则经验值向下取整,即2.5B币获得2经验)**
6
8
7
9
---
8
10
9
- [B币方式充电](#B币方式充电)
11
- [新版本接口](#新版本B币充电)
12
- [老版本接口](#老版本B币充电)
10
13
11
14
---
12
15
13
## B币方式充电
16
## 新版本B币充电
17
18
> https://api.bilibili.com/x/ugcpay/web/v2/trade/elec/pay/quick
19
20
*请求方式:POST*
21
22
认证方式:Cookie(SESSDATA)
23
24
**正文参数( application/x-www-form-urlencoded ):**
25
26
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
27
| -------- | ---- | ------------------------ | ------ | ------------------------------------------------- |
28
| bp_num | num | 贝壳数量 | 必要 | 必须在20-99990之间 |
29
| is_bp_remains_prior | bool | 是否优先扣除B币余额 | 必要 | [true,false],B币充电请选择true |
30
| up_mid | num | 充电对象用户UID | 必要 | |
31
| otype | str | 充电来源 | 必要 | up:空间充电<br />archive:视频充电 |
32
| oid | num | 充电来源代码 | 必要 | 空间充电:充电对象用户UID<br />视频充电:稿件avID |
33
| csrf | str | CSRF Token(位于cookie) | 必要 | |
34
35
**json回复:**
36
37
根对象:
38
39
| 字段 | 类型 | 内容 | 备注 |
40
| ------- | ---- | -------- | ------------------------------------------------------------ |
41
| code | num | 返回值 | 0:成功(并不代表充电成功) <br />-101:账号未登录<br />-111:csrf校验失败<br />-400:请求错误 |
42
| message | str | 错误信息 | 默认为0 |
43
| ttl | num | 1 | |
44
| data | obj | 信息本体 | |
45
46
`data`对象:
47
48
| 字段 | 类型 | 内容 | 备注 |
49
| -------- | ---- | ----------- | ------------------------------------------------ |
50
| mid | num | 本用户UID | |
51
| up_mid | num | 目标用户UID | |
52
| order_no | str | 留言token | 用于添加充电留言 |
53
| bp_num | num | 充电贝壳数 | |
54
| exp | num | 获得经验数 | |
55
| status | num | 返回结果 | 4:成功<br />-2:低于20电池下限<br />-4:B币不足 |
56
| msg | str | 错误信息 | 默认为空 |
57
58
**示例:**
59
60
以空间的方式向用户`UID=293793435`充了2贝壳,得到2经验,留言token为`BPRG5CEC3VUPOOANA540`
61
62
此时`data`.`status`=`4`
63
64
~~自己给自己冲QAQ~~
65
66
```shell
67
curl 'https://api.bilibili.com/x/ugcpay/web/v2/trade/elec/pay/quick' \
68
--data-urlencode 'bp_num=2' \
69
--data-urlencode 'is_bp_remains_prior=true' \
70
--data-urlencode 'up_mid=293793435' \
71
--data-urlencode 'otype=up' \
72
--data-urlencode 'oid=293793435' \
73
--data-urlencode 'csrf=xxx' \
74
-b 'SESSDATA=xxx'
75
```
76
77
<details>
78
<summary>查看响应示例:</summary>
79
80
```json
81
{
82
"code":0,
83
"message":"0",
84
"ttl":1,
85
"data":{
86
"mid":293793435,
87
"up_mid":293793435,
88
"order_no":"BPRG5CEC3VUPOOANA540",
89
"bp_num":2,
90
"exp":2,
91
"status":4,
92
"msg":""
93
}
94
}
95
```
96
97
</details>
98
99
当所充电贝壳数小于2时,充电不会成功
100
101
此时`data`.`status`=`-2`
102
103
```shell
104
curl 'https://api.bilibili.com/x/ugcpay/web/v2/trade/elec/pay/quick' \
105
--data-urlencode 'bp_num=1' \
106
--data-urlencode 'is_bp_remains_prior=true' \
107
--data-urlencode 'otype=up' \
108
--data-urlencode 'oid=293793435' \
109
--data-urlencode 'csrf=xxx' \
110
-b 'SESSDATA=xxx'
111
```
112
113
<details>
114
<summary>查看响应示例:</summary>
115
116
```json
117
{
118
"code":0,
119
"message":"0",
120
"ttl":1,
121
"data":{
122
"mid":0,
123
"up_mid":0,
124
"order_no":"",
125
"bp_num":0,
126
"exp":0,
127
"status":-2,
128
"msg":"elec raw order create failed: 88201"
129
}
130
}
131
```
132
133
</details>
134
135
当所充贝壳数折合的B币数不足时,充电也不会成功
136
137
此时`data`.`status`=`-4`
138
139
```shell
140
curl 'https://api.bilibili.com/x/ugcpay/web/v2/trade/elec/pay/quick' \
141
--data-urlencode 'bp_num=99' \
142
--data-urlencode 'is_bp_remains_prior=true' \
143
--data-urlencode 'up_mid=293793435' \
144
--data-urlencode 'otype=up' \
145
--data-urlencode 'oid=293793435' \
146
--data-urlencode 'csrf=xxx' \
147
-b 'SESSDATA=xxx'
148
```
149
150
<details>
151
<summary>查看响应示例:</summary>
152
153
```json
154
{
155
"code":0,
156
"message":"0",
157
"ttl":1,
158
"data":{
159
"mid":0,
160
"up_mid":0,
161
"order_no":"",
162
"bp_num":0,
163
"exp":0,
164
"status":-4,
165
"msg":"bp.to.battery http failed, invalid args, errNo=800409904: B 币余额不足"
166
}
167
}
168
```
169
170
</details>
171
172
173
## 老版本B币充电
174
175
老版本目前已过期,调用接口成功后(code返回0),data.status会返回0,且B币不会消耗,贝壳也不会增加。以下是历史信息:
176
177
<details>
178
<summary>查看折叠内容</summary>
14
179
15
180
> http://api.bilibili.com/x/ugcpay/trade/elec/pay/quick
16
181
@@ -57,7 +222,7 @@
57
222
58
223
此时`data`.`status`=`4`
59
224
60
~~自己冲自己QAQ~~
225
~~再次自己冲自己QAQ~~
61
226
62
227
```shell
63
228
curl 'http://api.bilibili.com/x/ugcpay/trade/elec/pay/quick' \
@@ -162,3 +327,4 @@ curl 'http://api.bilibili.com/x/ugcpay/trade/elec/pay/quick' \
162
327
```
163
328
164
329
</details>
330
</details>