---
title: "rate_limit_exceeded — key request rate exceeded"
url: https://lumean.app/en/developers/docs/errors/rate-limit-exceeded
locale: en
description: "The request was not performed. The body has `reason: \"rate_limit_exceeded\"` (the same code in `error_code`) and `retry_after` in seconds; the headers carry `Retry-After` and `X-RateLimit-*`."
generated: 2026-10-18
---

# rate_limit_exceeded — key request rate exceeded

- HTTP: `429`

- `reason`: `rate_limit_exceeded`

- `Retry-After` header: yes

## What happened

The request was not performed. The body has `reason: "rate_limit_exceeded"` (the same code in `error_code`) and `retry_after` in seconds; the headers carry `Retry-After` and `X-RateLimit-*`.

## Why

The key exceeded one of its request-rate windows `limits.requests.per_minute` / `per_hour` / `per_day`. Requests are counted, not work volume: a light and a heavy request weigh the same. By default a key has no request-rate limit — the windows are set in the key settings.

## What to do

Wait `retry_after` seconds and retry. If you hit it constantly, lower the rate: replace order status polling with realtime events, and pause between catalog pages.

## Next request

The same request after `retry_after` seconds. The key's active windows are visible in the developer dashboard.

## Related

- [Guide: limits and the 429 code](https://lumean.app/en/developers/docs/guide/limits)
- [Guide: realtime instead of polling](https://lumean.app/en/developers/docs/guide/realtime)
- [Dashboard: key windows](https://lumean.app/en/developers)

---

- This page in the browser: https://lumean.app/en/developers/docs/errors/rate-limit-exceeded
- Full machine-readable reference: https://api.lumean.app/docs/llm.md
