Aller au contenu principal

API publique VigiCité

Accédez aux données croisées des élus, marchés publics et déclarations HATVP en JSON. Conçue pour le data journalism et les projets citoyens.

Endpoints disponibles

⚠️ Pour les journalistes / investigateurs

Commencez par /cas-qualifies — tableau filtré des croisements signal fort : élus dirigeants d'entités privées avec marchés publics dans leur territoire.

Export JSON : /api/v2/cas-qualifies?min_score=80&format=json · CSV : ?format=csv · Filtre dpt : &departement=XX

v2 — Recommandée stable

MéthodeEndpointDescription
GET /api/v2/cas-qualifies Croisements filtrés (score ≥ 60). Params : min_score, departement, format=json|csv
GET/api/v2/elu/{id}/narrativeRésumé narratif d'un élu (faits + sources)
GET/api/v2/departement/{code}/resumeRésumé départemental enrichi
GET/api/v2/croisements/topTop croisements par montant brut. Params : limit, departement
GET/api/v2/search?q=...Recherche unifiée élus + entreprises

v1 — Légacy stable

MéthodeEndpointDescription
GET/api/v1/elusListe paginée des élus avec score composite
GET/api/v1/elus/{id}Fiche complète d'un élu (scores, déclarations, relations)
GET/api/v1/elus/{id}/scoresScores détaillés par dimension
GET/api/v1/entreprises/{siren}Profil entreprise (marchés, élus déclarants)
GET/api/v1/search?q=...Recherche multi-entités (élus + entreprises)
GET/api/v1/statsCompteurs globaux de la base
GET/api/v1/healthHealth check avec métriques

Bulk bulk

MéthodeEndpointDescription
GET/api/v1/elus/bulk?ids=1,2,3Fiches complètes de plusieurs élus (max 50)
GET/api/v1/departement/{code}/elusTous les élus d'un département, paginé

Graphes stable

MéthodeEndpointDescription
GET/api/elus/{id}/graphe.jsonGraphe de relations d'un élu (D3.js ready)
GET/api/departements/{code}/graphe.jsonGraphe départemental multi-élu

Exports stable

MéthodeEndpointDescription
GET/api/elus/{id}/export.jsonExport JSON complet d'un élu
GET/api/elus/{id}/export.csvExport CSV d'un élu
GET/api/export/dataset.jsonDataset anonymisé complet

Exemples

Rechercher un élu :

curl "https://vigicite.org/api/v1/search?q=dupont"

Fiche complète d'un élu :

curl "https://vigicite.org/api/v1/elus/42"

Récupérer plusieurs élus en bulk :

curl "https://vigicite.org/api/v1/elus/bulk?ids=1,2,3,4,5"

Avec clé API (rate limit élevé) :

curl -H "X-API-Key: vc_votre_cle" "https://vigicite.org/api/v1/elus?per_page=500"

Rate limiting

Anonyme

60 req/min

Suffisant pour la navigation et les recherches ponctuelles.

Avec clé API

600 req/min

Pour le scraping responsable et le data journalism. Envoyez un email à api@vigicite.org pour obtenir une clé.

Les headers X-RateLimit-Limit, X-RateLimit-Remaining et X-RateLimit-Reset sont inclus dans chaque réponse.

Principes

  • Uniquement des données issues de sources publiques légales
  • Scores de cohérence factuels, pas de jugements
  • Méthodologie transparente et reproductible
  • Licence AGPL-3.0 (open source, copyleft fort)
  • Pas de tracking, pas de cookies, pas de données personnelles
Ces données sont issues exclusivement de sources publiques. Les scores mesurent la cohérence des données, pas l'intégrité des personnes. Le citoyen tire ses conclusions.