Le rate limiting distribué, en un seul appel atomique.

Detent est un rate limiter as-a-service. Une requête HTTP, une décision correcte — sans race condition, sans prendre votre app en otage. Hébergé dans l'UE.

Une vérification = un appel.
curl -X POST https://api.detent.fr/v1/limit \
  -H "Authorization: Bearer dt_live_…" \
  -d '{"namespace":"checkout","key":"user_42","algorithm":"sliding_window","limit":100,"window_ms":60000}'

{ "allowed": true, "remaining": 87, "reset_ms": 41230 }

Un rate limiter distribué correct est un champ de mines.

Deux instances incrémentent le même compteur au même instant, et votre limite saute. La plupart des implémentations maison sur-admettent sous charge — le bug ne se voit qu'en production, au pire moment.

Detent exécute chaque algorithme comme une seule opération atomique, sur une horloge unique et faisant autorité. Pas de fenêtre de course, pas de sur-admission.

Quatre algorithmes, une seule garantie : l'atomicité.

Sliding window

Fenêtre glissante précise, sans à-coups en bordure de fenêtre.

Token bucket

Autorise les rafales jusqu'à une capacité, se recharge à débit constant.

Fixed window

Le compteur le plus simple et le moins cher, par intervalle fixe.

Concurrence (leases)

Limite les requêtes en vol : acquérir un lease, le libérer à la fin.

Trois façons d'appeler Detent.

curl, TypeScript ou Python — même verdict, même contrat.

curl -X POST https://api.detent.fr/v1/limit \
  -H "Authorization: Bearer dt_live_…" \
  -d '{"namespace":"checkout","key":"user_42","algorithm":"sliding_window","limit":100,"window_ms":60000}'

Conçu pour ne jamais faire tomber votre app.

Fail-open

Si notre infrastructure est momentanément indisponible, Detent autorise et vous alerte. Notre panne ne devient jamais la vôtre.

Le verdict est une donnée

POST /v1/limit renvoie toujours 200 avec allowed: true/false. Detent ne renvoie jamais 429 à votre place — vous décidez.

Codes d'erreur stables

Chaque erreur porte un code machine stable, pour une gestion et une localisation côté client sans parser du texte.

Observable

Métriques exposées sur /metrics : décisions, fail-open, quotas — compatibles avec vos outils de monitoring. Branchez vos dashboards en minutes.

Un prix fixe par palier. Vous savez exactement ce que vous payez.

Starter

Pour les side projects et l'early-stage.

€29 / mois

  • 5M requêtes / mois
  • 3 namespaces
  • Sliding window + Fixed window
  • Dashboard basique
  • Région UE (Paris)
  • Support email
Commencer
Le plus choisi

Pro

Pour les SaaS avec une API publique.

€89 / mois

  • 50M requêtes / mois
  • Namespaces illimités
  • Tous les algorithmes + concurrence
  • Webhook on-limit
  • Analytics 30 jours
  • Support prioritaire
  • Latence <5ms p99 (à venir)
Commencer

Scale

Pour les APIs à fort trafic.

€249 / mois

  • 500M requêtes / mois
  • Tous les algorithmes + concurrence
  • Règles dynamiques via API
  • Analytics temps réel
  • Onboarding dédié
  • Multi-région (à venir)
  • SLA 99.9% (à venir)
Commencer

Jusqu'à 22× moins cher qu'un pricing à la requête comme Upstash — et hébergé dans l'UE.

Prêt à arrêter de réinventer le rate limiting ?

Créer un compte gratuit