[2026 Municipal Election - 2nd round] Results by municipality[Élection Municipale 2026 - 2nd tour] Résultats par commune
[Élection Municipale 2026 - 2nd tour] Résultats par commune[2026 Municipal Election - 2nd round] Results by municipality
This API provides provisional results by municipality for the second round of the 2026 French municipal elections, covering only municipalities where a second round took place. Data is published for fully counted polling stations, subject to possible corrections and rulings by the relevant judicial authority. Because percentages are rounded to two decimal places, the sum of percentages may not equal exactly 100%. The dataset is made available via the Grand Paris Sud open-data portal and is intended for tracking electoral outcomes at the municipal level in France.En raison des arrondis à la deuxième décimale, la somme des pourcentages peut ne pas être égale à 100%. N'apparaisse que les communes ayant eu un second tour. Résultats provisoires - pour les bureaux de vote intégralement dépouillés sous réserve d'éventuelles corrections et de décisions du juge d...
Trust score
How is this computed?Weighted across five axes. Tap a ring for what it measures.
Data schema (11 fields)
Click a field to see example values.
| Fill | Field | Type | Description |
|---|---|---|---|
| 100% | nom_villeCommune | text | Name of the municipality (commune).Name of the municipality (commune). |
| 100% | code_postalCode Postale | int | Postal code of the municipality.Postal code of the municipality. |
| 100% | liste_des_candidaturesListe des candidatures | text | Name of the candidate list in the election.Name of the candidate list in the election. |
| 100% | conduite_parConduite par | text | Name of the person heading the candidate list.Name of the person heading the candidate list. |
| 100% | nuance | text | Political affiliation code of the candidate list.Political affiliation code of the candidate list. |
| 100% | voix | int | Number of votes received by the list.Number of votes received by the list. |
| 100% | inscrits | double | Percentage of registered voters represented by the list's votes.Percentage of registered voters represented by the list's votes. |
| 100% | exprimes% Exprimés | double | Percentage of valid votes cast received by the list.Percentage of valid votes cast received by the list. |
| 100% | sieges_au_conseil_municipalSièges au Conseil municipal | int | Number of seats won on the municipal council.Number of seats won on the municipal council. |
| 100% | sieges_au_conseil_communautaireSièges au Conseil communautaire | int | Number of seats won on the intercommunal council.Number of seats won on the intercommunal council. |
| 100% | code_hexa_htmlCode hexa html | text | Hexadecimal HTML color code associated with the list.Hexadecimal HTML color code associated with the list. |
Schema captured from opendatasoft 3 days ago.
Query the data
Pick columns and a sort, then fetch a live preview straight from the source. Choose an API-filterable column (marked ▾) under “Where” to pick from its list of values.
Sample data (5 records)
Record 1voix: 3763 · nuance: LUG
{
"voix": 3763,
"nuance": "LUG",
"exprimes": 43.07,
"inscrits": 20.7,
"nom_ville": "Savigny-le-Temple",
"code_postal": 91250,
"conduite_par": "Mme Marie-Line PICHERY",
"code_hexa_html": "F50AA7",
"liste_des_candidatures": "SAVIGNY TOUT SIMPLEMENT",
"sieges_au_conseil_municipal": 28,
"sieges_au_conseil_communautaire": 6
}Record 2voix: 492 · nuance: LDVD
{
"voix": 492,
"nuance": "LDVD",
"exprimes": 6.41,
"inscrits": 3.21,
"nom_ville": "Ris-Orangis",
"code_postal": 91130,
"conduite_par": "M. Claude STILLEN",
"code_hexa_html": "7C93C2",
"liste_des_candidatures": "Ris en avant",
"sieges_au_conseil_municipal": 1,
"sieges_au_conseil_communautaire": 0
}Record 3voix: 773 · nuance: LDVD
{
"voix": 773,
"nuance": "LDVD",
"exprimes": 17.3,
"inscrits": 10.2,
"nom_ville": "Bondoufle",
"code_postal": 91070,
"conduite_par": "M. Arnaud BARROUX",
"code_hexa_html": "7C93C2",
"liste_des_candidatures": "BONDOUFLE RASSEMBLEE",
"sieges_au_conseil_municipal": 3,
"sieges_au_conseil_communautaire": 0
}Record 4voix: 1655 · nuance: LDIV
{
"voix": 1655,
"nuance": "LDIV",
"exprimes": 51.13,
"inscrits": 29.4,
"nom_ville": "Lisses",
"code_postal": 91090,
"conduite_par": "M. Jean-Marc MORIN",
"code_hexa_html": "F5E4E9",
"liste_des_candidatures": "SERVIR LISSES 2026",
"sieges_au_conseil_municipal": 22,
"sieges_au_conseil_communautaire": 1
}Record 5voix: 3387 · nuance: LUG
{
"voix": 3387,
"nuance": "LUG",
"exprimes": 44.15,
"inscrits": 22.12,
"nom_ville": "Ris-Orangis",
"code_postal": 91130,
"conduite_par": "M. Stéphane RAFFALLI",
"code_hexa_html": "F50AA7",
"liste_des_candidatures": "UNIS POUR AGIR",
"sieges_au_conseil_municipal": 8,
"sieges_au_conseil_communautaire": 1
}Live sample captured at profiling time — values may have changed upstream.
Verification Status
Using the API
Configuration
- Base URL
- https://data.grandparissud.fr/api/explore/v2.1/catalog/datasets/election-municipale-2026-2nd-tour-resultats-par-commune
License
- ✓ Redistributable
- ✓ Attribution required
Query examples
curl -s 'https://data.grandparissud.fr/api/explore/v2.1/catalog/datasets/election-municipale-2026-2nd-tour-resultats-par-commune/records?limit=20' -H 'Accept: application/json'First 20 records of the dataset as JSON.
Uses the Opendatasoft Explore v2.1 syntax — supports select, where, group_by and order_by.
Rate limits
Dataset
Volume & freshness
License
No license declared upstream.
Source: opendatasoft
Machine-readable & source
Embed this badge in a README or wiki — it always shows the latest verification state and quality tier.