Live App →

Rate Limits

Sentinel uses sliding-window rate limiting to ensure fair usage and platform stability.


Limits by Endpoint Category

Category Limit Window Scope
Auth 10 requests 1 minute IP
Upload 20 requests 1 minute User
Chat 60 messages 1 minute User
General API 300 requests 1 minute User
Export 10 requests 1 minute User
Webhook 100 deliveries 1 minute Webhook

Response Headers

Every response includes rate limit metadata:

X-RateLimit-Limit: 300
X-RateLimit-Remaining: 247
X-RateLimit-Reset: 1715769600
X-RateLimit-Retry-After: 45
Header Meaning
X-RateLimit-Limit Maximum requests allowed in window
X-RateLimit-Remaining Requests remaining in current window
X-RateLimit-Reset Unix timestamp when window resets
X-RateLimit-Retry-After Seconds until you can retry (only on 429)

429 Too Many Requests

When exceeded:

{
  "status_code": 429,
  "error": "Rate limit exceeded",
  "detail": "You have exceeded 300 requests per minute. Retry after 45 seconds.",
  "retry_after": 45
}

Handling:

import time

response = requests.get(url, headers=headers)
if response.status_code == 429:
    retry_after = int(response.headers.get("X-RateLimit-Retry-After", 60))
    time.sleep(retry_after)
    response = requests.get(url, headers=headers)

Burst Behavior

Sentinel allows short bursts up to 2× the limit for 5 seconds. This accommodates:

  • Batch uploads
  • Page load sequences
  • Report generation spikes

Sustained traffic above the limit triggers 429s.


Increasing Limits

Contact your Admin or support@centricity.co.in to request limit increases. Include:

  • Use case description
  • Expected peak traffic
  • Current usage metrics

Premium and Dedicated tier partners receive higher default limits.