429 Too Many Requests and does not run the request.
Limits
Notra keys each limit in one of three ways:- Per key. The bucket belongs to the API key making the request, so two keys in the same organization have separate budgets.
- Per organization. Every key in the organization shares one bucket.
- Per IP. The bucket belongs to the caller’s source address.
Content
Chats and agent
GEO
GEO limits apply across all projects in the organization, so four scans per hour is the total across every project, not four per project.
Feedback
Agents call
POST /v1/feedback/{organizationSlug} without credentials. Because it is the only such endpoint, Notra limits it per source IP address and per organization, and both limits apply at the same time. See Agent feedback.Response headers
Every response from a rate-limited endpoint, successful or not, includes both the IETF draft header names and the legacyX- names:
Endpoints that are not rate limited do not send these headers.
429 response
When the API rejects a request, it returns:reset is a Unix timestamp in milliseconds, while the Retry-After header gives the same moment as a number of seconds to wait and is the simplest field to act on.
A
429 with error: "API key rate limit exceeded" and a code field comes from the authentication layer rather than an endpoint bucket, and it means the authentication layer is throttling the key itself. See Authentication.Best practices
- Read
RateLimit-Remainingand slow down before you hit zero. - On
429, wait forRetry-Afterseconds before retrying instead of retrying immediately. - Use exponential backoff with jitter for
5xxresponses, but treat429as a hard wait rather than a retry signal. - GEO scans are the most expensive thing a key can trigger, so poll
GET /v1/projects/{projectId}/geo/scans/{scanId}for the result instead of re-triggering. - For bulk work (for example backfilling many posts), space requests evenly across the window instead of sending them in bursts.
Need higher limits?
If your workload needs higher limits, contact us via GitHub and describe the use case and expected volume.Next steps
Getting started
Explore the endpoint groups
Authentication
Scopes and auth errors