Expose detailed rate-limit reset credits in Codex supported surfaces

Resolved 💬 5 comments Opened Jun 23, 2026 by darlingm Closed Jul 7, 2026

Summary

Codex currently exposes earned usage-limit reset count and redemption in some supported surfaces, but not the detailed reset-credit rows needed to show expiry dates.

In rust-v0.142.0, app-server exposes:

  • account/rateLimits/read -> rateLimitResetCredits.availableCount
  • account/rateLimitResetCredit/consume -> redeem one reset by idempotencyKey

It does not expose per-credit details such as grant time, expiry time, status, reset type, or id.

Please expose detailed rate-limit reset credits through supported Codex surfaces, especially app-server, so Codex CLI/TUI and Codex app can show reset expiry information without relying on private backend endpoints.

Why this matters

Banked Codex resets expire. Users can see that they have N resets available, but supported Codex surfaces do not currently show when each reset expires. That makes it easy to lose a reset unintentionally.

Open-source tools are already using a private backend endpoint directly to fill this gap:

GET /backend-api/wham/rate-limit-reset-credits

That is uncomfortable for users and maintainers because it is not clear whether OpenAI wants clients calling that endpoint directly. It also pushes clients toward reading local auth files and constructing ChatGPT backend headers themselves, instead of letting Codex own auth refresh, account selection, and compatibility.

Some public tools report finding this endpoint in the official openai.chatgpt VS Code extension webview bundle (webview/assets/codex-api-*.js). Others describe it as the internal Codex Desktop endpoint used by the app. So this does not appear to require inventing a new backend capability from scratch; it would expose existing reset-credit detail through supported Codex product/protocol surfaces.

Requested behavior

Expose detailed reset-credit rows in a supported Codex API, either by expanding account/rateLimits/read or adding a dedicated app-server method.

Example shape:

{
  "rateLimitResetCredits": {
    "availableCount": 2,
    "credits": [
      {
        "id": "RateLimitResetCredit_...",
        "resetType": "codex_rate_limits",
        "status": "available",
        "grantedAt": "2026-06-17T00:00:00Z",
        "expiresAt": "2026-07-17T00:00:00Z"
      }
    ]
  }
}

Product surfaces

This would be useful in:

  • Codex CLI/TUI /usage
  • Codex app usage/account UI
  • app-server clients that want to show expiry warnings or explain reset availability
  • local tools that should avoid private backend calls

Notes

This request is not asking clients to depend on private wham endpoints. It is asking for a supported Codex surface so users and local tools do not need to call those endpoints directly.

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗