主题
余额查询
用令牌查询账户还剩多少钱。返回的数字是人民币。字段名沿用 OpenAI 的 usd,不要再乘汇率。
两个接口
都是 GET,请求头带 Authorization: Bearer sk-你的令牌。
https://api.52pay.com/v1/dashboard/billing/subscription:累计额度,读hard_limit_usdhttps://api.52pay.com/v1/dashboard/billing/usage:已用金额,读total_usage
soft_limit_usd 和 system_hard_limit_usd 与 hard_limit_usd 是同一个数,计算时用 hard_limit_usd 即可。
剩余金额怎么算
剩余金额 = hard_limit_usd − total_usage / 100。
hard_limit_usd 是累计额度,等于现在剩余的加上已经用掉的。total_usage 是已用金额乘 100。先把 total_usage 除以 100,再从 hard_limit_usd 里减去,得到现在还能用的余额,单位是元。
示例
hard_limit_usd 为 12.5,total_usage 为 320。已用 3.2 元,剩余 12.5 − 3.2 = 9.3 元。
start_date 和 end_date 不会按日期过滤。total_usage 一直是累计已用。
完整示例
把 sk-你的令牌 换成自己的密钥,保存为 balance.py,然后执行 python balance.py。
python
import jsonimport urllib.requestkey = "sk-你的令牌"base = "https://api.52pay.com"def get(path): req = urllib.request.Request( base + path, headers={"Authorization": "Bearer " + key}, ) with urllib.request.urlopen(req, timeout=20) as resp: return json.loads(resp.read().decode())subscription = get("/v1/dashboard/billing/subscription")usage = get("/v1/dashboard/billing/usage")total = float(subscription["hard_limit_usd"])used = float(usage["total_usage"]) / 100remain = total - usedprint("累计额度: %.4f 元" % total)print("已用金额: %.4f 元" % used)print("剩余余额: %.4f 元" % remain)只想看原始 JSON 时,用这两条命令:
bash
curl https://api.52pay.com/v1/dashboard/billing/subscription \ -H "Authorization: Bearer sk-你的令牌"curl https://api.52pay.com/v1/dashboard/billing/usage \ -H "Authorization: Bearer sk-你的令牌"注意
- 返回的是整个账户的余额,不是某一把令牌单独的剩余额度。令牌设了额度上限时,这两个接口仍然返回账户余额。
- 代理商名下用户在控制台看到的余额,可能按售价系数放大。这个接口不乘系数,返回的是实际扣费用的金额。
