{"version":"2.1.311","anchor":"credential-refresh-now-retries-with-a-firstresend-stage","canonical_anchor":"credential-refresh-now-retries-with-a-firstresend-stage","heading":"Requests rejected for bad credentials now get a second refresh attempt","tier":"notice","area":"Login","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.311\/e\/credential-refresh-now-retries-with-a-firstresend-stage","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.311","markdown":"### Requests rejected for bad credentials now get a second refresh attempt\n\nAfter a request is refused as unauthorised, Claude Code refreshes credentials and retries, then makes a quiet second refresh if the retry fails\n\n**What**\n\nWhen a server answers a request with a 401 error, which means it did not accept the credentials sent, Claude Code now handles it in two stages:\n\n- First, it refreshes the credentials. If that works, it sends the request again.\n\n- If the second attempt also gets a 401, it starts another credential refresh in the background and ignores any error from that refresh.\n\nPreviously there was a single refresh step with no second stage.\n\n**Why**\n\nThis makes it more likely that Claude Code recovers on its own when remote credentials go stale, instead of failing the request.\n\n- Area: Login\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}