Rate limits
Auralith applique des rate limits via slowapi pour proteger l'API et les DB
introspectees.
Limites par defaut
| Plan | Requetes / minute | Requetes / heure | Notes |
|---|---|---|---|
| Starter | 60 | 1 000 | Suffisant pour usage manuel |
| Pro | 300 | 10 000 | Compatible CI / scripts modestes |
| Enterprise | custom | custom | Negociable |
Limites par endpoint plus stricte sur les operations couteuses :
| Endpoint | Limite |
|---|---|
POST /auth/login | 5 / minute / IP |
POST /patches/{id}/execute | 10 / minute / user |
POST /anonymize/configs/{id}/run | 5 / minute / user |
POST /bridge/run | 5 / minute / user |
Headers de reponse
Auralith retourne les headers standards :
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 47
X-RateLimit-Reset: 1714123200
Reponse en cas de depassement
HTTP/1.1 429 Too Many Requests
Retry-After: 30
Content-Type: application/json
{"detail": "Rate limit exceeded: 60 per 1 minute"}
Strategies recommandees
- Backoff exponentiel sur 429 : attendre
Retry-Aftersecondes, retry une fois, puis fail. - Eviter les listings sans pagination :
GET /projects?page_size=500consomme autant qu'une operation lourde. Paginer. - Cacher cote client quand possible. Les listings projets / connexions changent rarement.
Pieges courants
- IP partagee : les limits par IP (login) peuvent affecter une equipe
derriere un NAT. Configurer
TRUSTED_PROXIESpour respecterX-Forwarded-For. - CI parallele : 10 jobs CI qui demarrent en meme temps -> burst. Sequencer ou augmenter le plan.
- Webhook retries : Auralith envoie des webhooks avec retry exponentiel. Cote receiver, prevoir un endpoint qui supporte la rafale.