Les erreurs en un coup d'œil
| Vous recevez | Cela signifie | Que faire |
|---|---|---|
| 429 Too Many Requests | Tous les emplacements de votre adresse IP étaient occupés pendant 15 secondes. | Attendez avant la requête suivante, lancez une requête à la fois, vérifiez vos emplacements sur /api/status. |
| 504 Gateway Timeout | Le serveur n'a pas trouvé de place, en 15 secondes, pour le temps et la mémoire que déclare votre requête. | Demandez moins : un [timeout] ou un [maxsize] plus petit, une zone plus petite. Ou réessayez plus tard. |
200 avec une remarque runtime error sur le temps | La requête a duré plus que son [timeout] (180 secondes si vous ne le fixez pas) et a été arrêtée. | Réduisez la zone ou les filtres, ou augmentez le timeout ; un timeout plus élevé est plus difficile à faire admettre. |
200 avec une remarque runtime error sur la mémoire | La requête a eu besoin de plus que son [maxsize] (512 Mio si vous ne le fixez pas). | Réduisez la requête, affichez moins (out center au lieu de out geom), ou augmentez [maxsize]. |
Les erreurs avec le statut 200 passent facilement inaperçues : la réponse est un JSON valide sans éléments, et la raison se trouve seulement dans le champ remark. Vérifiez-le dans votre client.
Comment fonctionne la limite de débit
Overpass compte les requêtes par utilisateur, et l'utilisateur est votre adresse IP (pour l'IPv6, ses 64 premiers bits) tant que vous n'envoyez pas de clé d'utilisateur. Chaque utilisateur a quelques emplacements. Une requête occupe un emplacement pendant son exécution et pendant un délai de récupération qui suit. Ce délai représente une fraction du temps d'exécution quand le serveur est calme, et plusieurs fois ce temps quand il est occupé ; un même client fait donc passer moins de requêtes un jour de forte charge.
Une requête qui ne trouve aucun emplacement libre attend jusqu'à 15 secondes, puis reçoit 429. Les deux serveurs publics derrière overpass-api.de tiennent des comptes séparés.
Pour voir votre propre état, ouvrez la page d'état :
curl https://overpass-api.de/api/status
Sa troisième ligne, après « Rate limit: », donne le nombre d'emplacements dont vous disposez. À partir de la sixième ligne, elles indiquent quand vos emplacements occupés se libèrent.
Pourquoi une petite requête peut recevoir un 504
Avant d'exécuter une requête, le serveur contrôle le temps et la mémoire qu'elle déclare : [timeout] vaut 180 secondes par défaut et [maxsize] 512 Mio. Une requête n'est admise que si les deux tiennent dans la moitié de ce dont le serveur dispose à cet instant. Sinon, elle attend jusqu'à 15 secondes puis reçoit 504. Une requête qui déclare [timeout:900] par précaution peut donc être refusée sur un serveur chargé, alors que la même requête avec [timeout:60] s'exécute.
Corrections côté client
- Envoyez une requête à la fois. Le serveur principal n'autorise pas les scripts en parallèle.
- Après un 429 ou un autre statut d'erreur, faites une pause avant la requête suivante ; le wiki d'OpenStreetMap suggère 30 secondes.
- Mettez les réponses en cache. Pour la plupart des applications, les données cartographiques ne changent pas d'une minute à l'autre.
- Envoyez un
User-Agentqui nomme votre application, comme le demande la politique d'usage. - Déclarez un
[timeout]proche de ce dont la requête a besoin, pas la plus grande valeur. - Découpez une grande zone en rectangles plus petits, et demandez
out centerouout tagsquand vous n'avez pas besoin de la géométrie complète.
Ce que permet le serveur public
La politique d'usage du wiki d'OpenStreetMap considère qu'en dessous d'environ 10 000 requêtes et 1 Go de téléchargements par jour, les autres utilisateurs ne sont pas gênés, et demande qu'un usage régulier reste cent fois en dessous. Une application compte tous ses utilisateurs ensemble. Les usages commerciaux sont invités à passer à des serveurs payants ou auto-hébergés, et le wiki indique actuellement que le serveur principal est surchargé et qu'il ne faut pas compter sur sa fiabilité.
Si votre backend envoie des requêtes Overpass pour vos utilisateurs, ils se partagent tous les emplacements de votre serveur. C'est le moment habituel de chercher une autre solution.
Options quand le serveur public ne suffit pas
- Héberger votre propre Overpass. Langage de requête complet et mises à jour à la minute, mais vous gérez le serveur, son disque et ses mises à jour.
- Une instance Overpass payante. Le wiki en liste plusieurs, avec leurs prix et leurs limites.
- Notre endpoint. Votre propre clé et vos propres limites, avec 500 requêtes par jour gratuites. Il répond à un sous-ensemble d'Overpass QL à partir d'une base actualisée chaque mois, sans récursion ; la page alternative à l'API Overpass liste exactement ce qui est pris en charge, et les exemples montrent des requêtes courantes.
Sources : documentation d'Overpass API, « Commons » et la page Overpass API du wiki d'OpenStreetMap, consultées le 7 novembre 2026.