OpenBB-finance/OpenBB · error · OpenBBError
FRED API rate limit exceeded (HTTP 429). Please wait a momen
Error message
FRED API rate limit exceeded (HTTP 429). Please wait a moment and try again.
What it means
Error "FRED API rate limit exceeded (HTTP 429). Please wait a moment and try again." thrown in OpenBB-finance/OpenBB.
Source
Thrown at openbb_platform/providers/fred/openbb_fred/utils/rate_limiter.py:193
)
raise _RateLimitedResponse(retry_after)
if response_callback is not None:
return await response_callback(response, session)
payload = await response.json()
_check_payload_rate_limit(payload)
return payload
attempt = 0
while True:
await acquire()
try:
return await amake_request(
url, response_callback=_wrapped_callback, **kwargs
)
except _RateLimitedResponse as rl:
attempt += 1
if attempt > retries:
raise OpenBBError(ValueError(_RATE_LIMIT_MESSAGE)) from rl
backoff = (
rl.retry_after
if rl.retry_after is not None
else min(
DEFAULT_BACKOFF_SECONDS * (2 ** (attempt - 1)),
MAX_BACKOFF_SECONDS,
)
)
await asyncio.sleep(max(backoff, MIN_INTERVAL_SECONDS))
def _is_cacheable(value: Any) -> bool:
"""Don't cache empty / falsy payloads — they're usually transient errors."""
if value is None:
return False
return not (isinstance(value, (list, dict, str, bytes)) and len(value) == 0)
View on GitHub (pinned to 3e071fcc2c)
Solutions
- Wait a moment and retry the request.
- Reduce the frequency and size of FRED API requests.
- Verify you are using a valid FRED API key to get higher rate limits.
When it happens
Trigger: Thrown at openbb_platform/providers/fred/openbb_fred/utils/rate_limiter.py:193 when the library encounters an invalid state.
Common situations: See trigger scenarios.
Understand the failure class
- HTTP status errors: handling 4xx and 5xx responses — how to handle 4xx and 5xx responses properly.
AI-assisted analysis of OpenBB-finance/OpenBB@3e071fcc2c (2026-08-14).
Data as JSON: /api/errors/2ca9e42507d6b17c.
Report an issue: GitHub.