AgentFixboard

Every model answers with a false "API rate limit reached" warning

A chat against every configured model prints ⚠️ API rate limit reached. Please try again later. The same keys work outside OpenClaw.

From GitHub

openclaw/openclaw

Difficulty
Easy
Time
~5 min
Steps
2
Fixed in
v2026.3.11
Last checked

Verified fix: PR #42911 merged on . Fixed in v2026.3.11 (first published release whose tag contains the merge commit). Last checked .

Symptom

A chat against every configured model prints ⚠️ API rate limit reached. Please try again later. The same keys work outside OpenClaw.

Evidence what you'll see

  • The report says the upstream APIs are not returning 429, and that the same keys succeed in other clients.
  • A later comment on the same issue also sees The AI service is temporarily overloaded. Please try again in a moment. while those APIs are not overloaded.
  • A 5 Mar 2026 comment names OpenClaw v2026.3.2. An embedded-run log line is error=⚠️ API rate limit reached. Please try again later.

Why it happens

When a profile enters cooldown with no recorded failure counts, the inferred reason defaulted to rate_limit, so the gateway showed the rate-limit warning for unclassified errors. A separate matcher treated the substring cooling down as a provider rate limit. Pull request 42911 changes that default to unknown in usage.ts, model-fallback.ts, and pi-embedded-runner/run.ts. Pull request 32972 removes the generic cooling down token from the rate-limit patterns and keeps the model_cooldown marker.

Affected versions

OpenClaw v2026.3.2, from a 5 Mar 2026 comment. The linked issue does not name an operating system or a Node version.

Fix steps

0 of 2 done

Your check marks stay in this browser only.

How to check it worked

  • A cooldown with no classified failure reason does not print ⚠️ API rate limit reached. Please try again later. A real rate-limit response still can.

If it still fails

  • Tag v2026.3.2 does not contain pull request 42911. Stay on v2026.3.11 or later.
  • Pull request 42911 says actual rate-limit detection and the user-facing text for a real rate limit did not change. A true 429 can still print API rate limit reached.

Sources and credit

Summarized in our own words from these public reports. Credit goes to their authors.

Provided as is, without warranty. Try changes in a non-production environment and back up first. Security-related steps: verify against the official docs. Terms · Request removal or attribution change

Hit an error we don't cover? Submit it