NudgeDocs
API et MCP

Limites de débit

Combien de requêtes accepte chaque endpoint Nudge, comment les limites sont comptées et comment gérer un 429.

Fonctionnement des limites

Nudge limite les requêtes par adresse IP sur les endpoints publics, par rendez-vous sur les endpoints qui agissent sur un rendez-vous, et par utilisateur sur le serveur MCP. Plusieurs limites peuvent s'appliquer au même appel ; la première atteinte l'emporte.

  • Les limites utilisent des fenêtres fixes : le compteur repart à zéro au début de chaque fenêtre (chaque minute, chaque tranche de cinq minutes…), pas de façon glissante.
  • Les limites sont partagées entre tous les serveurs de Nudge.
  • En cas de dépassement, Nudge répond 429 Too Many Requests avec un en-tête Retry-After en secondes. C'est une borne haute sûre : attendre cette durée fonctionne toujours.

Limites par endpoint

API de réservation IA

AppelsLimite
GET /api/ai (manifeste, jours, disponibilités, statut)20 par minute et par IP
POST /api/ai (réserver, annuler, déplacer)5 par minute et par IP

Gestion d'un rendez-vous

AppelsPar IPPar rendez-vous
GET /api/booking/{bookingId}/ics60 par 5 minutes—
GET /api/booking/{bookingId}/slots60 par 5 minutes30 par 5 minutes
POST /api/booking/{bookingId}/reschedule10 par 5 minutes5 par 5 minutes
POST /api/booking/{bookingId}/cancel15 par 5 minutes5 par 5 minutes

Serveur MCP

AppelsLimite
Toute requête vers https://mcp.asknudge.ai60 par minute et par utilisateur

Sur le serveur MCP, chaque requête JSON-RPC compte, y compris tools/list. Si la limite ne peut pas être vérifiée, la requête est refusée plutôt que laissée passer.

Endpoints publics des formulaires

GET /api/public/{orgSlug}/{formSlug} et /hosts n'ont pas de limite par IP publiée. Appelez-les quand vous avez besoin de données fraîches, pas en boucle : gardez le résultat en cache quelques minutes de votre côté.

Gérer un 429

API de réservation IA
{ "error": { "code": "rate_limited", "message": "Rate limited" } }
Gestion d'un rendez-vous
{ "error": "rate_limited" }
Serveur MCP
{ "error": "Rate limit exceeded" }

Bonnes pratiques :

  1. Lisez Retry-After et attendez au moins ce nombre de secondes avant de réessayer.
  2. Ne réessayez pas en boucle serrée : chaque appel refusé compte quand même dans la fenêtre en cours.
  3. Pour book, envoyez un en-tête Idempotency-Key afin qu'une nouvelle tentative après un délai dépassé ne réserve jamais deux fois (voir Réserver un rendez-vous).
  4. Mettez en cache ce qui change peu : le manifeste et la définition du formulaire ne changent que lorsque vous modifiez le formulaire.
  5. Pour les disponibilités, demandez la plage voulue avec date_from et date_to plutôt qu'un appel par jour.

Construire un agent pour de nombreux visiteurs

Les limites sont par IP. Si votre agent tourne sur un serveur et réserve pour de nombreuses personnes, tous ses appels partagent l'IP de ce serveur et ses 5 réservations par minute. Étalez les réservations dans le temps, mettez-les en file, et gardez chaque appel léger (un get_availability pour une semaine, puis un book).

Sur cette page