本文目录:
- 一、问题来源
- 二、几个查询余额的方案
- 1、后台直接查询
- 2、隐藏的接口【现在不好用了】
- 3、最新的方案
- 三、在线网页查询
一、问题来源
ChatGPT不断强大,用得人多。目前为止OpenAI还是会给新注册的用户送5美金,因此大部分应用还是直接用这类新注册的账号来调用API,撸点羊毛。
作为开发者,比较关注的一个问题,如何通过接口实时查询OpenAI账号的余额?
不过比较遗憾,目前OpenAI官方并没有提供直接的API来查询。
二、几个查询余额的方案
1、后台直接查询
最原始的可以通过OpenAI官方的后台查看,官方链接:https://platform.openai.com/account/usage
这种方式适合普通用户使用,不过前提是需要登录(免不了需要梯子。。。),对开发者来说没什么太大意义。
2、隐藏的接口【现在不好用了】
后面有些朋友发现了一个隐藏的接口:https://api.openai.com/dashboard/billing/credit_grants
直接GET请求,Header中带上Token(API key)就可以了
之前接口可以直接返回如下结果:
{"object": "credit_summary","total_granted": 18.0,"total_used": 0.6284545,"total_available": 17.3715455,"grants": {"object": "list","data": [{"object": "credit_grant","id": "bdb804***********************ff0132","grant_amount": 18.0,"used_amount": 0.6284545,"effective_at": 1673740800.0,"expires_at": 1682899200.0}]}
}
但是现在不行了,需要session key才行,所以这个方法也不合适了。
3、最新的方案
通过抓包分析,可以用另外的一些接口来实现
账单订阅信息:https://api.openai.com/v1/dashboard/billing/subscription
这个接口也是GET请求,Header中带上Token(API key)就可以了
返回结果如下:
{"object": "billing_subscription","has_payment_method": true,//OpenAI账号是否已经绑卡,绑卡后有120美金的额度"canceled": false,"canceled_at": null,"delinquent": null,"access_until": 1690848000,//key到期时间"soft_limit": 1600000,"hard_limit": 2000000,"system_hard_limit": 2000000,"soft_limit_usd": 96.0,"hard_limit_usd": 120.0,"system_hard_limit_usd": 120.0,"plan": {"title": "Pay-as-you-go","id": "payg"},"account_name": "xxdwe","po_number": null,"billing_email": null,"tax_ids": null,"billing_address": {},"business_address": null
}
账单明细:https://api.openai.com/v1/v1/dashboard/billing/usage?start_date=2023-05-01&end_date=2023-05-08
这个接口也是GET请求,Header中带上Token(API key)就可以了,查询指定日期范围内的使用明细
返回结果如下:
{"object": "list","daily_costs": [{"timestamp": 1681948800.0,"line_items": [{"name": "Instruct models","cost": 0.0},{"name": "Chat models","cost": 0.0},{"name": "GPT-4","cost": 0.0},{"name": "Fine-tuned models","cost": 0.0},{"name": "Embedding models","cost": 0.0},{"name": "Image models","cost": 0.0},{"name": "Audio models","cost": 0.0}]}],"total_usage": 5956.9476//合计费用,单位美分
}
结合这两个接口就可以达到查询余额的目标了!
三、在线网页查询
基于第三个方案,我做了一个在线的查询站点,方便大家使用,也不需要加梯子使用了。
https://gptbill.lonlie.cn/