[亲测有效] Codex 赠送的重置机会,有效期查询方法

查看 91|回复 10
作者:LonelyM   
🚀教大家一个方法,查询 Codex 赠送的重置机会什么时候到期!
方法很简单,将下面的提示词发送给 Codex 即可。
========🔥提示词==========
请使用本机 Codex 凭证查一下 rate-limit reset credits:
读取 ~/.codex/auth.json 里的 tokens.access_token ,请求接口:
https://chatgpt.com/backend-api/wham/rate-limit-reset-credits
要求:
[ol]
  • 不要打印 access_token 、refresh_token 、cookie 或完整唯一 ID
  • 只汇总 available_count 、每个 credit 的 status/title/granted_at/expires_at
  • 把 granted_at/expires_at 从 UTC 转成本地时间
  • 如果状态码返回 401 ,说明是凭证失效或没带对 Authorization header
    [/ol]
    ========🔥提示词==========

    Codex, 重置机会, 查询

  • plmsuper8   
    或者这个:
    ```
    python3 -  10_000_000_000:
                    value = value / 1000
                dt = datetime.fromtimestamp(value, tz=timezone.utc)
            else:
                s = str(value).replace("Z", "+00:00")
                dt = datetime.fromisoformat(s)
                if dt.tzinfo is None:
                    dt = dt.replace(tzinfo=timezone.utc)
            return dt.astimezone().strftime("%Y-%m-%d %H:%M:%S %Z")
        except Exception:
            return value
    with open(AUTH_PATH, "r", encoding="utf-8") as f:
        auth = json.load(f)
    token = auth.get("tokens", {}).get("access_token")
    if not token:
        raise SystemExit("未找到 tokens.access_token")
    req = urllib.request.Request(
        URL,
        headers={
            "Authorization": f"Bearer {token}",
            "Accept": "application/json",
        },
        method="GET",
    )
    try:
        with urllib.request.urlopen(req, timeout=20) as resp:
            status = resp.status
            body = resp.read().decode("utf-8")
    except urllib.error.HTTPError as e:
        status = e.code
        body = e.read().decode("utf-8", errors="replace")
    if status == 401:
        print("HTTP 401:凭证失效,或请求没有带正确的 Authorization header")
        raise SystemExit(1)
    if status = 300:
        print(f"HTTP {status}")
        print("请求失败;未输出敏感信息。")
        raise SystemExit(1)
    data = json.loads(body)
    available_count = data.get("available_count")
    credits = data.get("credits", [])
    print("available_count:", available_count)
    print()
    for i, c in enumerate(credits, 1):
        print(f"credit #{i}")
        print("  status:", c.get("status"))
        print("  title:", c.get("title"))
        print("  granted_at:", to_local_time(c.get("granted_at")))
        print("  expires_at:", to_local_time(c.get("expires_at")))
    PY
    ```
    unusualcat   
    试了,确实可以查询到每个 reset 的获得时间和过期时间。
    zls3201   
    cpa 不是自带么 搞这么麻烦
    littlefishzzz   
    @zls3201 问一下 codex 不是就行么 cpa 搞这么麻烦
    tylearymf   
    可以,很强👍
    Dream4U   
    @zls3201 codex 自带
    zls3201   
    @Dream4U 我用的 codex cli + pi
    zls3201   
    @littlefishzzz 我用的 codex cli + pi
    Jiannanzzz   
    我一直用的 omp,我的 /usage 就可以显示


    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部