सभी कुंजियाँ एक साझा, rolling 60-second account window इस्तेमाल करती हैं। Lifetime retained successful spend account tier तय करता है; IP और action-specific सुरक्षा पहले या अलग से request रोक सकती है। कोई hourly या per-key tier quota नहीं है।
20,000 requests / मिनट / IP addressकी वैलिडेशन से पहले लागू किया जाता है ताकि ब्रूट-फ़ोर्स की enumeration सीमित रहे। एक ही IP के पीछे की सभी की में शेयर किया जाता है। डिफ़ॉल्ट ग्लोबली सेट होता है और यूज़र-कॉन्फ़िगरेबल नहीं है।
Rolling 60 seconds में 120–2,400 requestsएक account की सभी active API कुंजियाँ एक ही counter इस्तेमाल करती हैं। Direct RPM override न होने पर lifetime successful-spend ladder limit देता है।
Action पर निर्भरकुछ sensitive actions में account का छोटा limit भी होता है। उदाहरण के लिए, cancel प्रति account 30 requests per minute स्वीकार करता है; उसका 429 action बताता है।
Qualification account के पूरे जीवन में retained successful spend पर आधारित है। Completed और partial delivery retained successful amount जोड़ती है; बाद के refunds इसे घटाते हैं। Effective limit किसी daily job के बिना stored total से update होता है। Earned tier और effective RPM देखने के लिए action=account_status इस्तेमाल करें।
| Tier | Minimum lifetime spend | Requests / मिनट |
|---|---|---|
| 0 | $0.00000000 | 120 |
| 1 | $10.00000000 | 300 |
| 2 | $50.00000000 | 600 |
| 3 | $100.00000000 | 900 |
| 4 | $500.00000000 | 1,200 |
| 5 | $1000.00000000 | 1,800 |
| 6 | $2500.00000000 | 2,400 |
| हेडर | विवरण |
|---|---|
| X-RateLimit-Limit | सामान्य response में account का effective shared requests-per-minute limit। 429 पर rejecting layer द्वारा बताया गया limit। |
| X-RateLimit-Remaining | सामान्य response में shared account window की बची requests। 429 पर rejecting layer द्वारा बताई गई remaining value। |
| X-RateLimit-Reset | बताई window reset होने तक relative seconds; यह Unix timestamp नहीं है। |
| X-RateLimit-Tier | Lifetime successful spend से मिला tier (0–6)। Custom RPM override इस value को नहीं बदलता। |
| X-RateLimit-Source | Fixed ladder से effective RPM मिलने पर "tier"; admin के direct override से मिलने पर "custom"। |
| X-RateLimit-DeniedBy | जब कोई named limiter call रोकता है, 429 response में भेजा जाता है: "ip", "api_requests_per_minute" या "action"। |
| Retry-After | Retryable 429 या 503 में Retry-After के बताए seconds से कम नहीं प्रतीक्षा करें। action=add के लिए प्रतीक्षा के बाद वही idempotency key फिर इस्तेमाल करें। |
ip, api_requests_per_minute और action rejecting layer बताते हैं; कुंजी बदलने से shared account, IP या action limit bypass नहीं होती।action=status से reconcile करनी चाहिए।