Toute erreur a le même corps, avec un message français fixe et jamais de détail interne :
json
{ "error": { "code": "invalid_parameter", "message": "Paramètre invalide." } }| Code | Statut | Sens |
|---|---|---|
unauthorized | 401 | Clé absente, mal formée, inconnue ou révoquée (réponse identique dans tous les cas). |
forbidden | 403 | La clé existe, mais le compte n'est pas au plan Pro, ou la clé n'a pas le périmètre exigé par la route (voir Périmètres et usage de la clé). |
not_found | 404 | Avis ou fiche introuvable (une fiche non diffusible répond aussi 404). |
invalid_parameter | 400 | Paramètre inconnu, répété, mal formé ou hors bornes. Le message ne dit pas lequel (une seule exception, fixe : q de /contrats sans acheteur ni titulaire). |
filter_required | 400 | GET /contrats sans aucun filtre indexé (acheteur_siret, titulaire_siret, titulaire_siren, departement, cpv). |
page_too_deep | 400 | page × per_page dépasse 1 000. |
invalid_cursor | 400 | curseur illisible, ou employé avec d'autres filtres que ceux de la requête qui l'a produit (voir Synchroniser les avis ; même règle pour /attributions et /contrats). |
resync_required | 400 | updated_since remonte à plus de 30 jours : refaites une copie complète, sans updated_since. |
rate_limited | 429 | Trop de requêtes ; voir Retry-After. |
quota_exceeded | 429 | Quota journalier d'enregistrements atteint ; Retry-After donne les secondes jusqu'à minuit UTC. Voir Quota journalier. |
unavailable | 503 | Service momentanément indisponible, coupé, ou trop de requêtes simultanées (voir Protection du service) ; voir Retry-After (30 s, ou 1 s pour les requêtes simultanées), réessayez. |
Une panne de la base répond 503, jamais 401 : une erreur 401 signifie toujours un problème de clé. Chaque réponse, erreurs comprises, porte un X-Request-Id à citer au support.
Demander une clé
Avoir un compte Pro
La clé est réservée aux comptes au plan Pro.
Écrire au support
Nous vérifions votre compte Pro puis vous répondons par e-mail avec votre clé.