429 Too Many Requests JSON response example
Last updated 2026-05-20
Example JSON
Returned by a rate-limited endpoint when the caller exhausts their quota.
{
"status": 429,
"error": "Too Many Requests",
"message": "Rate limit exceeded for ip 203.0.113.10",
"code": "rate_limit_exceeded",
"retryAfter": 30,
"limit": 600,
"remaining": 0,
"reset": 1700000030
}Request examples
const res = await fetch('https://jsonexamples.com/http/429/Rate+limit+exceeded');
if (!res.ok) {
const err = await res.json();
console.error(res.status, err.message);
}Try the live endpoint
Click below to call /http/429/Rate+limit+exceeded from your browser.
GET
/http/429/Rate+limit+exceeded{
"hint": "Click 'Run' to call the live endpoint"
}Common variations
Per-user limit
{
"status": 429,
"error": "Too Many Requests",
"message": "User exceeded plan limit",
"code": "plan_quota_exceeded",
"retryAfter": 3600
}Convert this JSON
Generated starting points for TypeScript, JSON Schema, and Zod. Refine before shipping to production.
export interface 429RateLimit {
"status": number;
"error": string;
"message": string;
"code": string;
"retryAfter": number;
"limit": number;
"remaining": number;
"reset": number;
}