请求体类型:所有接口均使用 application/json。
HTTP 状态码:正常业务响应均返回 HTTP 200;限流返回 HTTP 429;安全校验暂不可用返回 HTTP 503。
业务状态码:响应体 code=200 表示业务成功,code=0 表示业务失败。
错误信息:业务失败时读取响应体 error 字段,调用方可将该字段展示给用户。
商品类型:Codex Credits 商品在相关响应中返回 product_type=codex_credits 和大于 0 的 credit_quantity;普通订阅商品省略这两个字段,调用方可按订阅商品处理。
Credits 账号资格:Codex Credits 仅支持 OpenAI 个人付费账号。账号需存在有效订阅,套餐类型为 Plus、Go、Pro 5x 或 Pro 20x,并且 credit_purchase_eligible=true。
Credits 重复提交:同一账号已有 Credits 订单处于 processing 时,redeem 返回业务失败;调用方应等待 原订单结束后再提交。
Credits 支付金额:Credits 成功订单中的 amount_minor 和 currency 表示支付确认后的实际支付金额与币种。
兑换流程请求标识:verifyCdk 支持可选的 request_nonce。建议每次新兑换流程生成一个随机 Base64URL 字符串,并在该流程的页面刷新、网络重试和重复提交期间复用;解码后长度必须为 16~64 字节。相同 CDK 与相同 request_nonce 在锁定有效期内会恢复原锁定和原 activation_token,不会延长原过期时间。
兑换登录态 token:precheckAccount 和 redeem 使用的 token 是调用方把订阅账号登录态通过 zstd 压缩并 base64 编码后的字符串,格式为 zstd64:<base64>。
ChatGPT Token 自动刷新:precheckAccount 检测到 Access Token 过期时,会尝试使用完整 Session JSON 中的 sessionToken 自动刷新。刷新并预检成功时响应包含 refreshed_token,调用方必须用它替换原 token 后再调用 redeem。仅提交原始 access token、缺少 sessionToken、Claude 场景或未触发刷新时不返回该字段。
预检响应缓存:precheckAccount 返回 Cache-Control: no-store 和 Pragma: no-cache,调用方也不应记录或长期保存 token、refreshed_token。
ChatGPT 账单查询 token:queryBilling 使用的 token 也是 zstd64:<base64>;压缩前内容可为完整 ChatGPT session JSON、原始 access token,或 Bearer <access token>。
账单查询请求大小:queryBilling 请求体最大 3MB。超出限制或 JSON 解析失败时,按业务失败处理,错误信息以响应体 error 为准。
兑换执行方式:redeem 当前为异步提交任务。接口成功后通常返回 status=processing、order_no 和 order_query_token,最终成功或失败需要调用 redeemResult 轮询查询。
兑换维护提示:当兑换服务维护中时,verifyCdk、precheckAccount、redeem 可能返回 code=0,error=当前兑换服务正在维护中,请稍后再试。如有疑问,请联系管理员。。
公开限流:verifyCdk、queryOrder 和 queryBilling 会按访问频率进行保护。触发限流时返回 HTTP 429,响应头包含 Retry-After,调用方应等待指定秒数后再重试。
安全校验暂不可用:当安全校验暂时不可用时,相关接口返回 HTTP 503,调用方应稍后重试。
批量查询建议:queryOrder 推荐使用 cdks 数组批量查询,单次最多 50 个有效 CDK;cdk 单个查询字段仅为兼容旧调用保留,后续会取消。
1.
每次开始新的兑换流程时,调用方生成一个随机 request_nonce;同一流程内必须持续复用该值。
2.
用户输入 CDK,调用方携带 CDK、期望服务商和 request_nonce 调用 verifyCdk。
3.
verifyCdk 成功后,调用方保存 activation_token、expires_in、expires_at、resumed、provider、product_name 和 plan。如果响应包含 product_type=codex_credits,还需保存 credit_quantity 并按 Credits 兑换流程展示。
4.
用户提供订阅账号登录态后,调用方将登录态压缩成 zstd64 token。
5.
调用方调用 precheckAccount 校验账号。只有 eligible=true 时允许继续;Credits 商品还应检查 credit_purchase_eligible=true。如果响应包含 refreshed_token,立即用它替换当前 token。
6.
调用方使用预检后的有效 token 调用 redeem 提交订阅或 Credits 兑换任务;收到过 refreshed_token 时必须提交刷新后的值。
7.
redeem 成功后,调用方保存 order_query_token,并调用 redeemResult 轮询订单状态;如果订单仍是 processing,页面继续等待或提示用户稍后再查。
8.
用户后续手动查询订单时,调用方调用 queryOrder,推荐使用 cdks 数组查询一个或多个 CDK 的最近订单。
9.
ChatGPT 账单查询是独立流程,调用方可直接使用 queryBilling 查询账号账单信息,不需要先调用 CDK 兑换相关接口。