查询OpenAI账号APIKey可用余额、使用量和使用明细接口,用python实现

闪电发卡3年前ChatGPT4431

现在可以使用以下接口进行实现


Python


apikey = ""
    subscription_url = "https://api.openai.com/v1/dashboard/billing/subscription"
    headers = {
        "Authorization": "Bearer " + apikey,
        "Content-Type": "application/json"
    }
    subscription_response = requests.get(subscription_url, headers=headers)
    if subscription_response.status_code == 200:
        data = subscription_response.json()
        total = data.get("hard_limit_usd")
    else:
        return subscription_response.text
 
    # start_date设置为今天日期前99天
    start_date = (datetime.datetime.now() - datetime.timedelta(days=99)).strftime("%Y-%m-%d")
    # end_date设置为今天日期+1
    end_date = (datetime.datetime.now() + datetime.timedelta(days=1)).strftime("%Y-%m-%d")
    billing_url = f"https://api.openai.com/v1/dashboard/billing/usage?start_date={start_date}&end_date={end_date}"
    billing_response = requests.get(billing_url, headers=headers)
    if billing_response.status_code == 200:
        data = billing_response.json()
        total_usage = data.get("total_usage") / 100
        daily_costs = data.get("daily_costs")
        days = min(5, len(daily_costs))
        recent = f"最近{days}天使用情况  \n"
        for i in range(days):
            cur = daily_costs[-i-1]
            date = datetime.datetime.fromtimestamp(cur.get("timestamp")).strftime("%Y-%m-%d")
            line_items = cur.get("line_items")
            cost = 0
            for item in line_items:
                cost += item.get("cost")
            recent += f"\t{date}\t{cost / 100} \n"
    else:
        return billing_response.text
 
    return f"\n总额:\t{total:.4f}  \n" \
                f"已用:\t{total_usage:.4f}  \n" \
                f"剩余:\t{total-total_usage:.4f}  \n" \
                f"\n"+recent

输出结果如下:


总额: 18.0000


已用: 0.4737


剩余: 17.5263


最近5天使用情况


2023-04-28 0.0


2023-04-27 0.0


2023-04-26 0.0


2023-04-25 0.0


2023-04-24 0.0


可访问 https://aichat.xingtupai.com 查看示例

余额查询方法可参考:https://www.chatgptzh.com/post/325.html


相关文章

AI在教育中的应用:大模型如何个性化学习体验

在现代社会,教育正在经历一场前所未有的变革,而这场变革的核心正是人工智能(AI)。尤其是大模型的引入,使得个性化学习体验成为可能。那么,AI到底是如何在教育中发挥作用的呢?让我们一起探讨一下。 首先,...

GPT-4o和GPT-4模型有什么区别?GPT-4o支持功能详解

GPT-4o目前Plus用户可用,普通用户会有有限的访问权限,无法使用GPTs,建议升级Plus用户使用。语音视频实时对话会在未来几周内开放使用,届时会完全免费。GPT-4o和GPT-4模型是Open...

如果让ChatGPT对线面试官会怎么样

如果让ChatGPT对线面试官会怎么样

ChatGPT工具人hello,大家好,我是java小面,今日上班摸鱼时突发奇想,如果说拿在本月突然爆火的ChatGPT,用来对线面试官的话,又会是怎么样的一个场景呢?ChatGPT的回答是否能够让面...

微软账户官网注册教程,使用自己的邮箱或手机号

微软账户官网注册教程,使用自己的邮箱或手机号

一、准备1、使用国内IP,正常网络就可以2、建议使用edge浏览器3、准备任意邮箱或任意手机号,也可以现注册微软outlook或hotmail邮箱二、开始注册1、打开微软账户官网,点击登录https:...

ChatGPT介绍和使用方法教程:ChatGPT完全上手指南,实用插件推荐

ChatGPT介绍和使用方法教程:ChatGPT完全上手指南,实用插件推荐

写在开头:本文旨在帮助未使用过ChatGPT,以及正在使用的朋友一些入门和进阶的指引。作者自ChatGPT上线就开始使用,已经有两个多月的使用经验。本文不讨论ChatGPT注册,网站上有不少教程,搜索...

ChatGPT账号被封,如何申诉找回

昨天还传言ChatGPT暂停注册,今天ChatGPT就大面积封号,哀鸿遍野,不管你是不是亚洲地区,不管你是普号还是Plus号,都有被封号的案例。目前还没有一个绝对封号的参考标准大家不要随意切IP,据说...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。