API BODACC : authentification et limites

Accès public gratuit

L'API BODACC est ouverte sans clé sur tous les endpoints de données : annonces, entreprises, personnes, annuaire, statistiques. Vous pouvez interroger les données publiques immédiatement :

curl "https://bodacc.io/api/bodacc/annonces?q=boulangerie&limit=5"

Obtenir une clé API

Les offres Pro et Enterprise fournissent des clés API (préfixe sk_bodacc_) depuis votre espace Mon compte → API (/{locale}/mon-compte/api). La clé débloque l'accès aux endpoints documentés qui l'exigent.

Passer la clé

Deux en-têtes acceptés :

# En-tête X-API-Key
curl "https://bodacc.io/api/bodacc/annonces?q=boulangerie" \
  -H "X-API-Key: sk_bodacc_..."

# Ou Authorization Bearer
curl "https://bodacc.io/api/bodacc/annonces?q=boulangerie" \
  -H "Authorization: Bearer sk_bodacc_..."

Une clé invalide ou révoquée renvoie 401 avec un corps JSON explicite. L'absence de clé laisse l'accès public ouvert (aucune erreur).

Codes d'erreur

CodeSignification
400Paramètre invalide (ex. rôle d'annuaire inconnu)
401Clé API invalide ou révoquée
404Ressource introuvable (annonce, SIREN, personne)
429Trop de requêtes ou quota dépassé — respectez Retry-After

Limites et bonnes pratiques

  • Rate limit : 60 requêtes/minute par IP sans clé, 600 avec une clé valide
  • Quota journalier : 10 000 requêtes/jour par IP sans clé, 100 000 avec clé — il bloque l'itération systématique des filtres (dump complet de la base) ; le compteur se réinitialise chaque jour
  • Bornes anti-dump : limit ≤ 500, offset ≤ 10 000 sur annonces/entreprises/cabinets ; annuaire et acteurs bornés à 200 pages de 100
  • Pagination systématique : itérez sur offset (ou page/per_page pour l'annuaire) au lieu de demander de gros volumes
  • Retry-After : sur 429, attendez la durée indiquée avant de réessayer
  • Totaux : préférez stats/counts et stats/daily (matérialisés) aux COUNT(*) pour les tableaux de bord
  • Données temps réel : les données sont rafraîchies après chaque parution du BODACC
  • Cache : les recherches courantes sont servies par le cache edge Cloudflare (300s) — vos requêtes répétées ne comptent pas dans le quota

Aller plus loin

FAQ

Une question ?

Notre équipe vous répond rapidement. Votre demande sera transmise avec la catégorie API.