第三方接口参考
写给做第三方软件的人或兼容插件类开发。使用 sk- 密钥,就能在自己的软件里调用模型、读取账号余额。
认证
每个请求在请求头里带上密钥:
密钥在站点「个人资料 → 令牌」里创建,默认令牌即可。
Tip
本页所有接口都只认 sk- 密钥。密钥管理、日志、订阅、系统设置这类管理接口需要另一种凭据(「访问令牌」),不在本页范围。
一、调用模型(OpenAI 兼容)
完全按 OpenAI 的格式,现成客户端不需要改代码。常用端点:
模型的实际端点前往模型广场详情页具体查看。
二、读取账号余额
方式 A:站点接口(推荐自研软件用,非开发通用接口)
响应(成功时):
字段含义:
注意:user_quota 和 user_used_quota 在个别情况下可能不出现在响应里,客户端请做兜底,不要直接取值。另外这个接口返回 200 即代表密钥可用,也可以拿来做连通性检查。
「实际还能用多少」不等于余额。 服务端对账号余额和密钥余额都会校验,任一见底就不能再用:
方式 B:OpenAI billing 接口(兼容现成客户端)
Chatbox 这类现成客户端习惯用下面这对接口显示余额,同样认 sk- 密钥:
余额 = hard_limit_usd − total_usage / 100。
Warning
这两条是 OpenAI 的历史遗留接口,有两个坑:
- 返回的是「账号口径」还是「密钥口径」,取决于站点设置,日后可能变化。
- 密钥不限额度时(默认创建的密钥就是),
hard_limit_usd是一个固定的大数,不代表真实余额。 照着算会得到一个离谱的数字。
自己写软件建议用方式 A。
三、把额度换算成钱
接口返回的额度是原始单位,不是金额。金额怎么算,从站点的公开配置里读(这个接口不需要认证):
用到的字段:
四、注意事项
有速率限制。 请求过于频繁会返回 429,响应头里带 Retry-After(秒)。请把结果缓存起来、按 Retry-After 退避,不要轮询。
跨域(CORS)已放开。 纯网页可以直接 fetch 上面的接口,不需要自己搭后端代理。
错误响应格式:
未带密钥或密钥无效时返回 401。
