<commit_before># API de NosDéputés.fr & NosSénateurs.fr

Une API a été développée pour offrir un accès Open Data simplifié aux données de NosDéputés.fr et NosSénateurs.fr aux formats XML, JSON et CSV.


## Sommaire

- [Explications](#explications)
- [Liste des parlementaires](#liste-des-parlementaires)
- [Liste des organismes (commissions, groupes, etc)](#liste-des-organismes-commissions-groupes-etc)
- [Détails de chaque parlementaire](#détails-de-chaque-parlementaire)
- [Données d'activité des parlementaires](#données-dactivité-des-parlementaires)
- [Documents et débats parlementaires](#documents-et-débats-parlementaires)
- [Résultats du moteur de recherche](#résultats-du-moteur-de-recherche)
- [Outils d'accès simplifié à l'API](#outils-daccès-simplifié-à-lapi)
- [Librairie Python CPC-API](#librairie-python-cpc-api)
- [ParlAPI.fr : API sur l'OpenData officielle de l'AN et du Sénat](#parlapifr--api-sur-lopendata-officielle-de-lan-et-du-sénat)
- [Exemples de réutilisations basées sur l'API](#exemples-de-réutilisations-basées-sur-lapi)
- [Conditions d'utilisation](#conditions-dutilisation)


## Explications

- **Format :** La plupart des exemples fournis ci-dessous sont donnés au format XML pour permettre plus de lisibilité dans le navigateur web. Veuillez remplacer `xml` en `json` ou `csv` pour accéder aux autres formats. Pour forcer l'affichage dans le navigateur, vous pouvez utilisez l'option `?textplain=true`.

- **Encoding :** les données sont proposées en `utf-8`. Si vous vous retrouvez face à des caractères kabbalistiques, cela signifie qu'il vous faut régler l'encodage dans les options du logiciel avec lequel vous manipulez les données. Si votre tableur ne vous permet de spécifier l'encodage, vous pouvez rajouter l'option `?withBOM=true` à la fin des adresses des fichiers CSV que vous cherchez à télécharger.

- **Anciennes législatures Assemblée :** l'accès aux données de NosDéputés.fr pour les précédentes législatures est accessible de manière permanente en remplaçant www.nosdeputes.fr par les adresses suivantes :

  - pour la 13ème législature : 2007-2012.nosdeputes.fr
  - pour la 14ème législature : 2012-2017.nosdeputes.fr

- **Sénat :** les exemples donnés ci-dessous se réfèrent à NosDéputés.fr, mais vous pouvez utiliser l'API de NosSénateurs.fr suivant les mêmes schémas en remplaçant nosdeputes.fr par nossenateurs.fr dans chaque adresse.

- **SSL :** les exemples fournis utilisent les adresses sécurisées HTTPS de nos sites, mais vous pouvez remplacer https par http lorsque vous le souhaitez.

L'ensemble des données de ces différents sites est par ailleurs mis à disposition en bloc sous la forme de dumps SQL. Retrouvez les détails ainsi que d'autres [données parlementaires ici](opendata.md).


## Liste des parlementaires

- **Tous les députés en cours de mandat :**

  - format tableur (csv) : https://www.nosdeputes.fr/deputes/enmandat/csv 
  - XML : https://www.nosdeputes.fr/deputes/enmandat/xml 
  - JSON : https://www.nosdeputes.fr/deputes/enmandat/json

- **Tous les députés :**

  *Attention : Moins de champs sont disponibles avec cette version : autres mandats, commissions, ...*

  - format tableur (CSV) : https://www.nosdeputes.fr/deputes/csv
  - XML : https://www.nosdeputes.fr/deputes/xml
  - JSON : https://www.nosdeputes.fr/deputes/json


## Liste des organismes (commissions, groupes, etc)

- **Liste des groupes politiques :**

  https://www.nosdeputes.fr/organismes/groupe/xml

- **Liste des organes parlementaires** (commissions, délégations, missions, offices) :

  https://www.nosdeputes.fr/organismes/parlementaire/xml

- **Liste des organes extra-parlementaires** (fonctions judiciaires, internationales ou autres) :

  https://www.nosdeputes.fr/organismes/extra/xml

- **Liste des groupes d'études et d'amitié :**

  https://www.nosdeputes.fr/organismes/groupes/xml

- **Liste des parlementaires membres d'un organisme :**

  - Pour les groupes politiques, il faut utiliser l'acronyme du groupe issu de la liste des groupes ou des détails d'un député.

    Par exemple pour les non inscrits (`NI`) : https://www.nosdeputes.fr/groupe/NI/xml

  - Pour les autres organes, il faut utiliser le `slug` de l'organisme souhaité issu d'une liste des organismes.

    Par exemple pour la Commission des Affaires Économiques : https://www.nosdeputes.fr/organisme/commission-des-affaires-economiques/xml

    *Remarque : les groupes politiques sont également accessibles ainsi via leur `slug`, par exemple pour les non-inscrits : https://www.nosdeputes.fr/organisme/deputes-non-inscrits/xml*

  *Note :* par défaut l'API ne renvoie que les députés actuellement membres du groupe ou de l'organisme souhaité. À partir de la 15<sup>ème</sup> législature il est possible d'inclure également les anciens membres de l'organisme en ajoutant `?includePast=true` à la fin de l'url. Les données renvoient alors également deux champs `fin_fonction` et `groupe_a_fin_fonction` indiquant la date de fin de la fonction et le groupe politique du député à cette date. Par exemple pour la commission des affaires européennes : https://www.nosdeputes.fr/organisme/commission-des-affaires-economiques/xml?includePast=true


## Détails de chaque parlementaire

Chaque parlementaire dispose d'un `slug`, identifiant unique proche du nom complet, employé dans les adresses d'accès aux données le ou la concernant.

Vous pouvez retrouver ces identifiants au sein des listes des parlementaires ou les deviner : par exemple pour <NAME> : `nathalie-appere` ou pour <NAME> : `pierre-morel-a-l-huissier`.

- **Infos biographiques, contacts et mandats :**

  Exemple pour Guy Teissier : https://www.nosdeputes.fr/guy-teissier/xml

- **Photo** (hauteur configurable) :

  Exemple pour Guy Teissier avec 60 pixels de hauteur : https://www.nosdeputes.fr/depute/photo/guy-teissier/60

- **Widget HTML** (graphe, barre d'activité et mots-clés) :

  Vous pouvez embarquer sur votre site les graphiques, barres d'activité et mots-clés des députés via le [widget d'activité](http://www.nosdeputes.fr/widget14) (pour NosDéputés.fr seulement).

  Voir les détails sur la [doc du widget](widget.md).


## Données d'activité des parlementaires

- **Synthèse des 12 derniers mois ou de toute la législature :**

  *(telle qu'affichée sur la page [synthèse](https://www.nosdeputes.fr/synthese)*

  - format tableur (CSV) : https://www.nosdeputes.fr/synthese/data/csv
  - XML : https://www.nosdeputes.fr/synthese/data/xml
  - JSON : https://www.nosdeputes.fr/synthese/data/json

- **Synthèse mensuelle :**

  *Attention : seuls les parlementaires ayant manifesté une activité sur la période sont renvoyés*
  
  Exemple pour le mois d'avril 2016 : https://www.nosdeputes.fr/synthese/201604/xml


## Documents et débats parlementaires

- **Contenu des travaux :**

  Tous les contenus textuels des différents travaux parlementaires (organismes, débats, amendements, questions, rapports, propositions de loi) sont indexés dans le moteur de recherche et peuvent donc être individuellement retrouvés et filtrés à travers cette API ([voir plus bas](#résultats-du-moteur-de-recherche)).

  Les résultats de la recherche renvoient les urls des données détaillées de chaque élément accessible via l'API.

  *Attention : l'Assemblée nationale n'ayant commencé à rendre publics les amendements déposés lors de l’examen des textes en commission qu'à partir de mai 2013 (un an après le début de la 14<sup>ème</sup> législature), seuls ceux déposés en hémicycle sont disponibles pour la 13<sup>ème</sup> législature et le début de la 14<sup>ème</sup>.*

- **Liste des dossiers législatifs** (à partir de la 15<sup>ème</sup> législature uniquement pour l'Assemblée) :

  - Triés dans l'ordre alphabétique : https://www.nosdeputes.fr/15/dossiers/nom/xml
  - Triés du plus récent au plus ancien : https://www.nosdeputes.fr/15/dossiers/date/xml
  - Triés du plus débattu au moins débattu : https://www.nosdeputes.fr/15/dossiers/plus/xml<commit_msg>clarification des indicateurs hémicycle + réorg de ce paragraphe<commit_after># API de NosDéputés.fr & NosSénateurs.fr

Une API a été développée pour offrir un accès Open Data simplifié aux données de NosDéputés.fr et NosSénateurs.fr aux formats XML, JSON et CSV.


## Sommaire

- [Explications](#explications)
- [Liste des parlementaires](#liste-des-parlementaires)
- [Liste des organismes (commissions, groupes, etc)](#liste-des-organismes-commissions-groupes-etc)
- [Détails de chaque parlementaire](#détails-de-chaque-parlementaire)
- [Données d'activité des parlementaires](#données-dactivité-des-parlementaires)
- [Documents et débats parlementaires](#documents-et-débats-parlementaires)
- [Résultats du moteur de recherche](#résultats-du-moteur-de-recherche)
- [Outils d'accès simplifié à l'API](#outils-daccès-simplifié-à-lapi)
- [Librairie Python CPC-API](#librairie-python-cpc-api)
- [ParlAPI.fr : API sur l'OpenData officielle de l'AN et du Sénat](#parlapifr--api-sur-lopendata-officielle-de-lan-et-du-sénat)
- [Exemples de réutilisations basées sur l'API](#exemples-de-réutilisations-basées-sur-lapi)
- [Conditions d'utilisation](#conditions-dutilisation)


## Explications

- **Format :** La plupart des exemples fournis ci-dessous sont donnés au format XML pour permettre plus de lisibilité dans le navigateur web. Veuillez remplacer `xml` en `json` ou `csv` pour accéder aux autres formats. Pour forcer l'affichage dans le navigateur, vous pouvez utilisez l'option `?textplain=true`.

- **Encoding :** les données sont proposées en `utf-8`. Si vous vous retrouvez face à des caractères kabbalistiques, cela signifie qu'il vous faut régler l'encodage dans les options du logiciel avec lequel vous manipulez les données. Si votre tableur ne vous permet de spécifier l'encodage, vous pouvez rajouter l'option `?withBOM=true` à la fin des adresses des fichiers CSV que vous cherchez à télécharger.

- **Anciennes législatures Assemblée :** l'accès aux données de NosDéputés.fr pour les précédentes législatures est accessible de manière permanente en remplaçant www.nosdeputes.fr par les adresses suivantes :

  - pour la 13ème législature : 2007-2012.nosdeputes.fr
  - pour la 14ème législature : 2012-2017.nosdeputes.fr

- **Sénat :** les exemples donnés ci-dessous se réfèrent à NosDéputés.fr, mais vous pouvez utiliser l'API de NosSénateurs.fr suivant les mêmes schémas en remplaçant nosdeputes.fr par nossenateurs.fr dans chaque adresse.

- **SSL :** les exemples fournis utilisent les adresses sécurisées HTTPS de nos sites, mais vous pouvez remplacer https par http lorsque vous le souhaitez.

L'ensemble des données de ces différents sites est par ailleurs mis à disposition en bloc sous la forme de dumps SQL. Retrouvez les détails ainsi que d'autres [données parlementaires ici](opendata.md).


## Liste des parlementaires

- **Tous les députés en cours de mandat :**

  - format tableur (csv) : https://www.nosdeputes.fr/deputes/enmandat/csv 
  - XML : https://www.nosdeputes.fr/deputes/enmandat/xml 
  - JSON : https://www.nosdeputes.fr/deputes/enmandat/json

- **Tous les députés :**

  *Attention : Moins de champs sont disponibles avec cette version : autres mandats, commissions, ...*

  - format tableur (CSV) : https://www.nosdeputes.fr/deputes/csv
  - XML : https://www.nosdeputes.fr/deputes/xml
  - JSON : https://www.nosdeputes.fr/deputes/json


## Liste des organismes (commissions, groupes, etc)

- **Liste des groupes politiques :**

  https://www.nosdeputes.fr/organismes/groupe/xml

- **Liste des organes parlementaires** (commissions, délégations, missions, offices) :

  https://www.nosdeputes.fr/organismes/parlementaire/xml

- **Liste des organes extra-parlementaires** (fonctions judiciaires, internationales ou autres) :

  https://www.nosdeputes.fr/organismes/extra/xml

- **Liste des groupes d'études et d'amitié :**

  https://www.nosdeputes.fr/organismes/groupes/xml

- **Liste des parlementaires membres d'un organisme :**

  - Pour les groupes politiques, il faut utiliser l'acronyme du groupe issu de la liste des groupes ou des détails d'un député.

    Par exemple pour les non inscrits (`NI`) : https://www.nosdeputes.fr/groupe/NI/xml

  - Pour les autres organes, il faut utiliser le `slug` de l'organisme souhaité issu d'une liste des organismes.

    Par exemple pour la Commission des Affaires Économiques : https://www.nosdeputes.fr/organisme/commission-des-affaires-economiques/xml

    *Remarque : les groupes politiques sont également accessibles ainsi via leur `slug`, par exemple pour les non-inscrits : https://www.nosdeputes.fr/organisme/deputes-non-inscrits/xml*

  *Note :* par défaut l'API ne renvoie que les députés actuellement membres du groupe ou de l'organisme souhaité. À partir de la 15<sup>ème</sup> législature il est possible d'inclure également les anciens membres de l'organisme en ajoutant `?includePast=true` à la fin de l'url. Les données renvoient alors également deux champs `fin_fonction` et `groupe_a_fin_fonction` indiquant la date de fin de la fonction et le groupe politique du député à cette date. Par exemple pour la commission des affaires européennes : https://www.nosdeputes.fr/organisme/commission-des-affaires-economiques/xml?includePast=true


## Détails de chaque parlementaire

Chaque parlementaire dispose d'un `slug`, identifiant unique proche du nom complet, employé dans les adresses d'accès aux données le ou la concernant.

Vous pouvez retrouver ces identifiants au sein des listes des parlementaires ou les deviner : par exemple pour <NAME> : `nathalie-appere` ou pour <NAME> : `pierre-morel-a-l-huissier`.

- **Infos biographiques, contacts et mandats :**

  Exemple pour <NAME> : https://www.nosdeputes.fr/guy-teissier/xml

- **Photo** (hauteur configurable) :

  Exemple pour <NAME> avec 60 pixels de hauteur : https://www.nosdeputes.fr/depute/photo/guy-teissier/60

- **Widget HTML** (graphe, barre d'activité et mots-clés) :

  Vous pouvez embarquer sur votre site les graphiques, barres d'activité et mots-clés des députés via le [widget d'activité](http://www.nosdeputes.fr/widget14) (pour NosDéputés.fr seulement).

  Voir les détails sur la [doc du widget](widget.md).


## Données d'activité des parlementaires

- **Synthèse des 12 derniers mois ou de toute la législature :**

  *(telle qu'affichée sur la page [synthèse](https://www.nosdeputes.fr/synthese)*

  - format tableur (CSV) : https://www.nosdeputes.fr/synthese/data/csv
  - XML : https://www.nosdeputes.fr/synthese/data/xml
  - JSON : https://www.nosdeputes.fr/synthese/data/json

- **Synthèse mensuelle :**

  Il est possible de récupérer les chiffres de la synthèse pour l'ensemble des députés actifs pour un mois donné en indiquant le mois concerné selon le format AAAAMM.
  
  Exemple pour le mois d'avril 2018 : https://www.nosdeputes.fr/synthese/201804/xml
  
   **Attention :**
   
   - seuls les parlementaires ayant manifesté une activité sur la période sont renvoyés
   - le nommage des indicateurs d'interventions en hémicycle est légèrement ambigu :  *hemicycle_interventions_courtes* se réfère aux interventions de 20 mots ou moins, et *hemicycle_interventions* à celles de plus de 20 mots. Pour connaitre le nombre d'interventions du parlementaire sur le mois donné, il faut donc sommer les deux indicateurs.


## Documents et débats parlementaires

- **Contenu des travaux :**

  Tous les contenus textuels des différents travaux parlementaires (organismes, débats, amendements, questions, rapports, propositions de loi) sont indexés dans le moteur de recherche et peuvent donc être individuellement retrouvés et filtrés à travers cette API ([voir plus bas](#résultats-du-moteur-de-recherche)).

  Les résultats de la recherche renvoient les urls des données détaillées de chaque élément accessible via l'API.

  *Attention : l'Assemblée nationale n'ayant commencé à rendre publics les amendements déposés lors de l’examen des textes en commission qu'à partir de mai 2013 (un an après le début de la 14<sup>ème</sup> législature), seuls ceux déposés en hémicycle sont disponibles pour la 13<sup>ème</sup> législature et le début de la 14<sup>ème</sup>.*

- **Liste des dossiers législatifs** (à partir de la 15<sup>ème</sup> législature uniquement pour l'Assemblée) :

  - Triés dans l'ordre alphabétique : https://www.nosdeputes.fr/15/dossiers/nom/xml
  - Triés du plus récent au plus ancien : https://www.nosdeputes.fr/15/dossiers/date/xml
  - Triés du plus débattu au moins débattu : https://www.nosdeputes.fr/15/dossiers/plus/xml
{'fraction_non_alphanumeric': 0.09486261903317765, 'fraction_numerical': 0.00739976951537575, 'mean_word_length': 4.557128412537917, 'pattern_counts': {'":': 0, '<': 29, '<?xml version=': 0, '>': 29, 'https://': 48, 'lorem ipsum': 0, 'www.': 52, 'xml': 34}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '162735', 'n_tokens_mistral': 5867, 'n_tokens_neox': 5622, 'n_words': 1759}