too_many_requests
Docs version v1 (main)Nauthera is pre-1.0, in a design-partner program
A throttle in a handler tripped; slow down and retry later (429).
Meaning
A handler's own throttle refused the request:
- sign-in and registration attempts from one IP (
auth.perbrute_ force. ip_ max_ attempts ip_window), failed sign-ins for one email address (identifier_max_attempts), or no password-hashing slot free withinverify_acquire_timeout; - a locked account while
auth.is off, even with the right password;brute_ force. reveal_ lockout - too many wrong second-factor codes (
mfa.max_failures), or too many emailed codes; - too many reset, verification or invitation emails for one user, including the admin API's resend operations.
Impact
The user sees "Too many requests" with a wait. Occasional hits are expected from guessing or from a user retrying quickly. Many legitimate users throttled at once usually means the server sees every request as coming from one address, a proxy.
Diagnosis
- Look the request id up on the Troubleshooting page. Throttles are recorded as
auth.withrate_ limit. triggered limit_scope(address,identifier,account_lock,verify_concurrency,mfa_shared,email_code,password_reset,invitationand others). nauthera_shows the fleet-wide rate.auth_ logins_ total{result="throttled"} - If one address dominates, check
security.client_ip.modeandsecurity.trusted_proxies; the dashboard's overview warns platform administrators when traffic seems to arrive through an unlisted proxy.
Mitigation
- As a user: wait, then try again; repeated attempts do not shorten the wait.
- As a client developer: do not retry automatically.
- As an operator: list your proxies in
security.trusted_proxies. A locked account is unlocked withPOST /or by setting its password.v1/ admin/ orgs/ {slug}/ users/ {id}/ unlock verify_concurrencythrottles mean too few hashing slots (auth.) for the load.brute_ force. max_ concurrent_ verifies
Escalation
Escalate when legitimate users are throttled with the proxies configured correctly,
or a throttle never clears. Open an issue with request ids, the limit_scope
values, the relevant auth.brute_force.* settings and the server version.
Problem code runbooks · Generated from internal/ in nauthera-server.