HTTP 429 Too Many Requests

Ralentissez : le client a envoyé plus de requêtes que ce que le serveur autorise sur une fenêtre de temps donnée.

Ce que signifie HTTP 429

HTTP 429 Too Many Requests signifie que le client a dépassé une limite de débit — par IP, par clé d'API, par utilisateur ou par endpoint. Les serveurs bien conçus incluent un en-tête Retry-After (secondes ou date) et souvent des en-têtes X-RateLimit-* décrivant le quota.

Pour les clients, la réaction correcte est toujours la même : ralentir. Réessayer immédiatement aggrave la situation et peut transformer une limitation temporaire en bannissement.

Causes courantes des erreurs 429

  • Un client d'API interroge trop fréquemment ou envoie des rafales au-dessus de son quota.
  • Du web scraping sans délais entre les requêtes.
  • Un bug : une boucle de réessai sans backoff martelant le même endpoint.
  • IP partagée (NAT de bureau, VPN, sortie serverless) où le trafic combiné dépasse la limite.
  • Des endpoints de connexion limitant les tentatives répétées comme protection anti-brute-force.

Comment la corriger en tant que client/développeur

  • Respectez exactement Retry-After ; en son absence, utilisez un backoff exponentiel avec jitter (par exemple 1s, 2s, 4s, 8s…).
  • Lisez les en-têtes X-RateLimit-Remaining/Réinitialiser de l'API et cadencez les requêtes de manière proactive.
  • Groupez les requêtes et mettez en cache les réponses au lieu de rerécupérer des données identiques.
  • Répartissez la charge dans le temps, pas sur des IP jetables — contourner les limites viole généralement les conditions d'utilisation de l'API.

Comment la corriger en tant que propriétaire d'API

  • Envoyez toujours Retry-After et les en-têtes de quota afin que les clients puissent bien se comporter.
  • Limitez le débit par clé/utilisateur plutôt que par simple IP quand c'est possible, pour éviter de pénaliser des réseaux partagés.

Exemple de réponse

HTTP/1.1 429 Too Many Requests
Retry-After: 30
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 0

{"error":"rate_limited","retry_after":30}

FAQ

Combien de temps dois-je attendre après un 429 ?

Ce que dit Retry-After. En son absence, commencez par une ou deux secondes et doublez le délai à chaque 429 consécutif (backoff exponentiel).

429 signifie-t-il que je suis banni ?

Non — c'est une limitation temporaire. L'ignorer de manière répétée peut cependant conduire à de vrais bannissements d'IP ou de clé.

Pourquoi j'obtiens 429 dès ma première requête ?

La limite est probablement partagée : votre IP (VPN, réseau de bureau) ou votre clé d'API a déjà consommé le quota ailleurs.