CLAIR DocsCLAIR Docs
  • clair.vote
  • GitHub
  • Nous soutenir
Nous soutenir
  • Accueil
  • Plateforme & Guide
  • Données & Base de Données
  • Explorateur API
CLAIR

Plateforme citoyenne de transparence politique. Données 100% publiques, 0% d'opinion.

Explorer

  • Députés
  • Sénateurs
  • Groupes politiques
  • Sujets
  • Dossiers législatifs
  • Scrutins
  • Agenda
  • Lobbying

Ressources

  • Nous soutenir
  • À propos
  • Méthodologie
  • Contact
  • Comprendre
  • Guide pratique
  • API ouverte

Légal

  • Mentions légales
  • Confidentialité
  • CGU

© 2026 CLAIR. Sources : Assemblée nationale · Sénat · HATVP · Ministère de l'Intérieur · DILA

Vue d'ensembleCommandes CLIEnrichissement IAModèle PrismaOrchestrateur d'IngestionQualité des DonnéesSchémas ERDSources Open DataSuivi des Modifications
Données & Base de Données

Sources de Données Publiques

Toutes les données de CLAIR viennent de sources publiques. Aucune n'exige de clé d'API, à l'exception des deux services d'IA (Mistral, Tavily). Chaque source a un client dédié dans services/ingestion/src/sources/.


📊 Sources suivies (source_states)

Chaque source est identifiée par une clé organisme:type, définie dans services/ingestion/src/utils/source-freshness.ts et reprise comme clé dans la table source_states. Les 24 premières lignes du tableau sont lues par le batch nocturne, dans l'ordre donné sur la page Orchestrateur d'ingestion.

« Toujours » signifie que la source n'expose aucun en-tête exploitable (ETag, Last-Modified) : elle est relue à chaque passage.

CléRessourceFormatCe qui est ingéré
assemblee_nationale:commissionsdata.assemblee-nationale.fr, AMO30_tous_acteurs_tous_mandats_tous_organes_historique.json.zip (organes actifs et clos), plus l'AMO10 pour les mandats en coursZIP / JSONOrganes : commissions, délégations, offices, missions, groupes d'études et d'amitié…
assemblee_nationale:deputesdata.assemblee-nationale.fr, AMO10_deputes_actifs_mandats_actifs_organes.json.zipZIP / JSONDéputés, mandats, groupes politiques, circonscriptions
assemblee_nationale:scrutinsScrutins.json.zipZIP / JSONScrutins publics et votes nominatifs
assemblee_nationale:amendementsAmendements.json.zipZIP / JSONAmendements, auteurs, cosignataires, métadonnées de séance
assemblee_nationale:dossiersDossiers_Legislatifs.json.zipZIP / JSONDossiers législatifs, actes, saisines de commissions
assemblee_nationale:interventionssyseron.xml.zip (comptes rendus de séance)ZIP / XMLPrises de parole en séance, situées dans le débat (article, amendements nommés, orateur)
assemblee_nationale:reunionsAgenda.json.zipZIP / JSONAgenda : réunions de commission et séances
assemblee_nationale:seances_odjseances_publique_excel.csvCSVOrdre du jour des séances publiques
assemblee_nationale:videosvideos.assemblee-nationale.frHTMLLiens vers les vidéos des séances et réunions
senat:senateurssenat.fr/api-senat/senateurs.jsonJSONSénateurs en exercice et groupes. Ses commissions du jour servent de contrôle à senat:fonctions
senat:senateurs_histodata.senat.fr ODSEN (ODSEN_ELUSEN.csv et fichiers associés)CSVAnciens sénateurs, mandats clos, groupe d'époque
senat:fonctionsexport_sens.zip de data.senat.fr (dump de la base des sénateurs)ZIP (dump SQL)Fonctions datées : bureau du Sénat, commissions permanentes et affaires européennes (membre, président, rapporteur général…), fonctions de groupe
assemblee_nationale:gouvernementsmême archive AMO30 que les commissions, téléchargée une seule fois pour les deuxZIP / JSONGouvernements depuis 2007, postes ministériels, présidences de la République et de l'Assemblée
senat:scrutinspages scrutin-public de senat.fr, dosleg.zip de data.senat.frHTML + dump SQLScrutins publics et votes nominatifs
senat:amendementsameli.zip de data.senat.fr, puis un CSV par texte sur senat.frZIP + CSVAmendements, cosignataires et article visé (colonne « Subdivision » du CSV, sinon amd.subid → sub d'AMELI)
senat:dossiersdosleg.zip de data.senat.frZIP (dump SQL)Dossiers législatifs
senat:interventionscri.zip de data.senat.fr et comptes rendus HTML de senat.frZIP + HTMLPrises de parole en séance
senat:agendaAPI agenda de senat.fr (/api/v1/agenda/events)JSONSéances publiques et réunions de commission
senat:reunionscomptes rendus de commission sur senat.frHTML (toujours)Comptes rendus rattachés aux réunions, sénateurs cités
senat:dossier_commissionspages dossier législatif de senat.frHTML (toujours)Commissions saisies des dossiers du Sénat
senat:videosvideos.senat.frHTML (toujours)Liens vers les vidéos des séances et réunions
hatvp:lobbyisteshatvp.fr, répertoire des représentants d'intérêtsZIP / CSVReprésentants d'intérêts, actions déclarées, secteurs
interieur:candidaturesdata.gouv.fr, jeu « élections sénatoriales 2026, candidatures » publié par le ministère de l'IntérieurCSV (toujours)Listes et candidats aux sénatoriales 2026
dila:legiechanges.dila.gouv.fr, base LEGI (droit consolidé, Licence Ouverte) : un dump global, puis un incrément par jourTAR.GZ / XMLIndex des textes et des articles de loi : identifiants Légifrance, numéros, dates de vigueur, titres. Ni le contenu ni la structure des textes. Sert à lier les références des amendements à Légifrance. Son état (dernière archive appliquée) est tenu par sync-index-legi, pas par source-freshness.ts ; le premier chargement, celui du dump global (1,1 Go), se lance à la main
dila:interventionsechanges.dila.gouv.frTAR / XMLAncienne source des débats de l'Assemblée. Plus rien n'y est publié depuis janvier 2026 : elle est sortie du batch nocturne et n'est plus lue que par la commande manuelle sync --in

Le batch nocturne ne lit que la législature courante de l'Assemblée (17e) et une fenêtre récente des sessions du Sénat. L'historique (15e et 16e législatures, Sénat depuis la session 2006) a été chargé par des commandes ponctuelles et ne bouge plus : voir Commandes CLI.


🔍 Sources lues par le batch sans suivi de fraîcheur

SourceRessourceUsage
HATVP, déclarationshatvp.fr/livraison/opendata/liste.csvDéclarations d'intérêts et de patrimoine des parlementaires. Relue à chaque batch où au moins une source a changé
Assemblée, pages de scrutinassemblee-nationale.fr/dyn/<législature>/scrutins/<uid>Scrutins des 30 derniers jours encore sans amendement rattaché, pour relier scrutin et amendements
Sénat, pages de scrutinsenat.fr/scrutin-public/...Même rôle, pour les nouveaux scrutins du Sénat
Assemblée, comptes rendus de commissionpage de notice assemblee-nationale.fr/dyn/docs/<ref>.html, puis le PDF qu'elle référence (lu avec pdftotext)Débats de commission et avis de commission sur les amendements, pour les réunions des 60 derniers jours
Assemblée, textes législatifsassemblee-nationale.fr/dyn/opendata/<texteRef>.htmlTexte des articles de chaque nouvelle version de texte, fourni au modèle pour les résumés de scrutins. Une version déjà ingérée n'est pas relue
Wikipedia FR et WikidataAPI MediaWiki de fr.wikipedia.org et wikidata.orgBiographie et faits datés, en entrée des fiches parlementaires générées par IA
Tavilyapi.tavily.com, recherche restreinte au domaine vie-publique.frTrouver la page vie-publique.fr d'un sujet (liens « contexte »). Chaque nuit ne dépense qu'une part du crédit restant du mois, au prorata des jours restants ; les sujets en attente passent à la nuit suivante
Mistralapi.mistral.aiGénération des résumés (mistral-small-latest) et embeddings (mistral-embed). Voir Enrichissement IA

🗳️ Élections sénatoriales 2026

SourceRessourceCommandeUsage
Ministère de l'Intérieur, candidaturesdata.gouv.fr (CSV ; XLSX pour les éditions 2020 et 2023)batch nocturne (interieur:candidatures) ou sync-candidaturesListes et candidats
Ministère de l'Intérieur, résultatsresultats-elections.interieur.gouv.fr/Senatoriales2026/ (HTML ; l'adresse distingue la casse)sync-resultats-senatoriales, lancée à la main le soir du scrutin, en boucleParticipation par tour, voix, sièges, élus
Répertoire national des élusdata.gouv.fr, republié chaque trimestre (CSV)sync-mandats-locauxMandats locaux des candidats titulaires
Résultats des sénatoriales 2020 et 2023data.gouv.frgenerer-reference-hemicycleComposition du Sénat par nuance avant le scrutin, figée dans apps/api/src/modules/senatoriales/hemicycle-reference.json

Les résultats et les mandats locaux ne font partie d'aucun batch planifié.


🛠️ Sources lues seulement par des commandes manuelles

SourceCommandeUsage
Sénat, index des débats (debats.zip de data.senat.fr)segmenter-debats-senatSituer les prises de parole du Sénat dans la structure du débat
DILA, comptes rendus de l'Assembléesync --inSource morte depuis janvier 2026 (voir plus haut)

📰 Source lue à la demande par l'API

L'onglet presse d'un sujet (GET /api/v1/sujets/:slug/presse) interroge le flux RSS de Google Actualités au moment de la requête ; le résultat est mis en cache 3 h (15 min s'il est vide). Rien n'est stocké en base.


🆔 Identifiants de la source

Les identifiants des sources sont conservés pour permettre de remonter à l'original :

DonnéeColonneExemple
Députéparlementaires.source_idPA795828
Sénateurparlementaires.source_id (matricule)14133K
Dossier législatifdossiers_legislatifs.uidDLR5L17N50168
Amendementamendements.uid (tel que publié) et uid_canonique (clé de dédoublonnage)
Organe ANcommissions.uidPO59048
Gouvernement, présidence de la Républiquegouvernements.uid, presidences.uidPO873634
Présidence de l'Assemblée (mandat au bureau)presidences_assemblee.uidPM845400
Poste ministériel (mandat MINISTERE de l'AN)postes_ministeriels.uidPM873637
Membre du gouvernementmembres_gouvernement.acteur_uidPA643210
Intervention ANinterventions.source_uid (id_syceron du paragraphe)
Lobbyistelobbyistes.identifiant_national (SIREN, RNA…)

Le contenu brut reçu de la source est conservé dans les colonnes source_data (JSON) de parlementaires, mandats_parlementaires, dossiers_legislatifs, scrutins et lobbyistes.

Schémas ERDSuivi des Modifications
On this page
  • 📊 Sources suivies (source_states)
  • 🔍 Sources lues par le batch sans suivi de fraîcheur
  • 🗳️ Élections sénatoriales 2026
  • 🛠️ Sources lues seulement par des commandes manuelles
  • 📰 Source lue à la demande par l'API
  • 🆔 Identifiants de la source