惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

宝玉的分享
宝玉的分享
Engineering at Meta
Engineering at Meta
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 聂微东
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Last Week in AI
Last Week in AI
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 三生石上(FineUI控件)
T
Tailwind CSS Blog
Apple Machine Learning Research
Apple Machine Learning Research
Hugging Face - Blog
Hugging Face - Blog
爱范儿
爱范儿
博客园 - 司徒正美
人人都是产品经理
人人都是产品经理
Jina AI
Jina AI
博客园 - 叶小钗
雷峰网
雷峰网
罗磊的独立博客
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - Franky
WordPress大学
WordPress大学
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
阮一峰的网络日志
阮一峰的网络日志
量子位

明明如月成长笔记

个人数据的开源备份:从明清档案之殇想到的 简体字的双重优势:打字效率与扫盲成效全解析 四小时深圳书城奇遇:那些藏在书架间的偶然与必然 正式把我的笔记系统迁移到 Obsidian,为了和 AI 配合 Gemini CLI 登录踩坑记录:GOOGLE_CLOUD_PROJECT_ID 的坑与解法 在 MacOS 上,成功恢复存储卡上被误删的照片 AI CLI 工具:Claude Code, Codex, Gemini CLI, Qwen code, CodeBuddy cli, cursor-agent 我的常用命令 港漂日记62:父亲节独自带娃,室内游戏、香港公园探展、观鸟、品味米其林餐厅 南航随心飞机票爬虫解密 acw_sc__v2 港漂日记61:香港私立诊所首诊:商业医保如何改变我的就医体验? 香港历史博物馆:看秦始皇兵马俑,还能和孔子比身高? 港漂日记59:母亲节礼物!AI 涂色小技巧,让孩子的爱跃然纸上 港漂日记60:西营盘网红旧书店 Book & Go 淘书记 港漂日记58:萌娃中环学体操,课后老师狂点赞 五一游记D4:深圳笔架山儿童乐园,邂逅无人机送外卖 我的400篇博客都写了些什么 珊瑚海兔四岁啦 港漂日记D159:亲子同乐日:一场精彩的幼儿园嘉年华 蛇年春节自驾D10:东莞-深圳-香港 DeepSeek教我如何收拾行李箱 福田取逗留签 回港新方式 蛇年春节自驾D9:江门-顺德-东莞 中国侨都华侨华人博物馆 东莞迎宾馆 蛇年春节自驾D8:茂名-开平-江门 挥春作业 粤西堵车 开平碉楼 迎财神 茂名博物馆参观记 蛇年春节自驾D7:茂名 中国第一摊 茂名博物馆 亚朵酒店 蛇年春节自驾D6:南宁-茂名 发财树 青秀山 路途亲子游戏 蛇年春节自驾D5:南宁过大年 醒狮贺岁 三街两巷 特色美食 骑行穿城 琅西夜市 打铁花 新春好!我用DeepSeek写祝福,顺便送你三款红包封面 蛇年春节自驾D4:钦州-南宁 钦州老街,万丽年夜饭 蛇年春节自驾D3:海陵岛-钦州 绝美悬崖餐厅,海景房租赁行情 明明如月成长笔记2024年公众号创作回顾(含免费红包封面🧧) 蛇年春节自驾D2:深圳-阳江-海陵岛
OpenAI修改了查询API余额的方式(附Python代码)
lmm333 · 2023-04-04 · via 明明如月成长笔记

TL;DR

OpenAI修改了查询API余额的方式,原来使用api_key的方式已经失效,现在需要使用session key

背景

新注册的 OpenAI 账号会赠送 18 美金的免费API用量,可以用来学(bai)习(piao),如何查询余额呢?

登陆网页 https://platform.openai.com/account/usage 是标准查询方式,但是如果多账号多 api key 轮流使用的话,挨个登陆网页比较麻烦,是否可以通过 API 查询呢?

答案是肯定的

旧的API是 https://api.openai.com/dashboard/billing/credit_grants 把api_key加入到header中即可, curl 和 python 参考代码如下

curl -X GET https://api.openai.com/dashboard/billing/credit_grants \
         -H "Content-Type: application/json" \
         -H "Authorization: Bearer sk-xxxxxxxxxxxx"
import requests

api_key = "sk-xxxxxxxxxxxx"
url = "https://api.openai.com/dashboard/billing/credit_grants"
headers = {
    "Content-Type": "application/json",
    f"Authorization": f"Bearer {api_key}"
}

response = requests.get(url, headers=headers)
print( response.json())

4月份之前,上面的curl命令和python代码都可以正常返回余额信息,也可以侧面用来检测账号是否被封(被封会返回 This key is associated with a deactivated account.),但是这几天突然就报403错误了:

{
  'error': {
    'message': 'Your request to GET /dashboard/billing/credit_grants must be made with a session key (that is, it can only be made from the browser). You made it with the following key type: secret.',
    'type': 'server_error',
    'param': None,
    'code': None
  }
}

报错的意思是”只能使用 session key 请求,也就意味着只能用浏览器网页打开”。

按照它的说法,以后只能在网页 https://platform.openai.com/account/usage 上查询API的余额了,那么真的不能使用API了吗?

答案是否定的

新 API 用法

经过一番尝试,发现只要把api_key换成session key就可以了

session key 如何获取?

session key可以在 https://platform.openai.com/account/usage 网页的请求里抓包得到。

在浏览器按 F12 打开调试模式,在【网络】里找到 credit_grants 请求

然后在【标头】里找到 authorization ,后面的 Bearer sess-xxxx 就是 session key 了

ps: 【响应】里可以看到余额,格式和后面api返回是一样的

session key 如何获取

新 API 参考代码: shell

curl -X GET https://api.openai.com/dashboard/billing/credit_grants \
         -H "Content-Type: application/json" \
         -H "Authorization: Bearer sess-xxxx"

新 API 参考代码: python

import requests

session_key = "Bearer sess-xxxx"
url = "https://api.openai.com/dashboard/billing/credit_grants"
headers = {
    "Content-Type": "application/json",
    f"Authorization": f"Bearer {session_key}"
}

response = requests.get(url, headers=headers)
print(response.json())

亲测可用,参考返回

{
  "object": "credit_summary",
  "total_granted": 0.0,
  "total_used": 0.0,
  "total_available": 0.0,
  "grants": {
    "object": "list",
    "data": []
  }
}

AIGC 正式进入全面收费时代了么?

我有个上周新注册的账号,理应有 $18 的免费API用量,但事与愿违,API返回如上面的参考返回所示: “total_granted”: 0.0, 总授予额度为0,网页查询如下图,Free trial usage 也是 $0

网页查询余额

OpenAI的论坛上查了一下,有多种说法:

  1. 有人说是因为用同一台机器注册了多个账号,后面的号都没api quota
  2. 有人说是因为收验证码的手机之前注册过其他账号,后面的能用chatgpt但是没api quota
  3. 还有人说是4月1日之后大量封号,有的账号4/1之前有 $18 并且能用,4/1之后突然变成0了
  4. 此外现在及时是正常的新账号,也没有 $18 的免费额度了,只有 $5 的免费额度

看来和最近的大量封号有关,结合画图的AI服务 Midjourney 开始收费,OpenAI 突然加强封控,也许白嫖时代正式结束,AIGC正式进入全面收费时代了,且行且珍惜吧~

StackOverflow 问题

本文已回答StackOverflow的问题:《API to get current balance $$/tokens》 欢迎点赞,帮助到更多的人~