c0mm0.com — the continuously verified register of European data

Register record·API·FR·AGENCYVERIFIED · checked 59m ago
D

Geolocated Property Value Declarations (DVF)Demandes de valeurs foncières géolocalisées (DVF)

Demandes de valeurs foncières géolocalisées (DVF)Geolocated Property Value Declarations (DVF)

APIReproducible6/7Query nowOpen workbenchSubscribe🇫🇷France

Dataset of notarized real estate sales in France from 2021 onward, geolocated by Etalab, the French government's open data agency. Each record includes the property's declared value, address, cadastral parcel, surface area, and type of premises (e.g. house, apartment). Data is provided as CSV files, organized by commune (using INSEE municipality codes) and by annual edition, allowing analysis of property price trends and transactions at the local level across France.Ventes immobilières notariées en France (2021→) géolocalisées par Etalab : valeur foncière, adresse, parcelle cadastrale, surfaces, type de local. Servi en CSV par commune (code INSEE) et par édition annuelle.

59
fair

Weighted across five axes. Tap a ring for what it measures.

Data schema (41 fields)

Click a field to see example values.

FieldTypeDescription
code_communeCommune codestringINSEE commune code selecting the per-commune file (Paris/Lyon/Marseille: use arrondissement codes).
anneeintegerYearly edition of the register (defaults to the newest).
id_mutationId mutationtext
date_mutationDate mutationdate
numero_dispositionNumero dispositionint
nature_mutationNature mutationtext
valeur_fonciereValeur fonciereint
adresse_numeroAdresse numeroint
adresse_suffixeAdresse suffixetext
adresse_nom_voieAdresse nom voietext
adresse_code_voieAdresse code voietext
code_postalPostal codeint
nom_communeCommune nametext
code_departementDépartement codeint
ancien_code_communeAncien code communetext
ancien_nom_communeAncien nom communetext
id_parcelleId parcelletext
ancien_id_parcelleAncien id parcelletext
numero_volumeNumero volumetext
lot1_numeroLot1 numeroint
lot1_surface_carrezLot1 surface carreznumber
lot2_numeroLot2 numeroint
lot2_surface_carrezLot2 surface carreznumber
lot3_numeroLot3 numeroint
lot3_surface_carrezLot3 surface carreztext
lot4_numeroLot4 numerotext
lot4_surface_carrezLot4 surface carreztext
lot5_numeroLot5 numerotext
lot5_surface_carrezLot5 surface carreztext
nombre_lotsNombre lotsint
code_type_localCode type localint
type_localType localtext
surface_reelle_batiSurface reelle batiint
nombre_pieces_principalesNombre pieces principalesint
code_nature_cultureCode nature culturetext
nature_cultureNature culturetext
code_nature_culture_specialeCode nature culture specialetext
nature_culture_specialeNature culture specialetext
surface_terrainSurface terrainint
longitudeLongitudenumber
latitudeLatitudenumber

Schema captured from geodvf 9 hours 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 (8 records)

Record 1latitude: 43.569089 · longitude: 1.452999
{
  "latitude": "43.569089",
  "longitude": "1.452999",
  "type_local": "Appartement",
  "code_postal": "31400",
  "id_mutation": "2025-352264",
  "id_parcelle": "31555812AK0297",
  "lot1_numero": "8",
  "lot2_numero": null,
  "lot3_numero": null,
  "lot4_numero": null,
  "lot5_numero": null,
  "nom_commune": "Toulouse",
  "nombre_lots": "1",
  "code_commune": "31555",
  "date_mutation": "2025-01-02",
  "numero_volume": null,
  "adresse_numero": "23",
  "nature_culture": null,
  "adresse_suffixe": null,
  "code_type_local": "2",
  "nature_mutation": "Vente",
  "surface_terrain": null,
  "valeur_fonciere": "135000",
  "adresse_nom_voie": "AV DES COTEAUX",
  "code_departement": "31",
  "adresse_code_voie": "2328",
  "ancien_id_parcelle": null,
  "ancien_nom_commune": null,
  "numero_disposition": "000001",
  "ancien_code_commune": null,
  "code_nature_culture": null,
  "lot1_surface_carrez": "47.45",
  "lot2_surface_carrez": null,
  "lot3_surface_carrez": null,
  "lot4_surface_carrez": null,
  "lot5_surface_carrez": null,
  "surface_reelle_bati": "47",
  "nature_culture_speciale": null,
  "nombre_pieces_principales": "2",
  "code_nature_culture_speciale": null
}
Record 2latitude: 43.569089 · longitude: 1.452999
{
  "latitude": "43.569089",
  "longitude": "1.452999",
  "type_local": "Dépendance",
  "code_postal": "31400",
  "id_mutation": "2025-352264",
  "id_parcelle": "31555812AK0297",
  "lot1_numero": "82",
  "lot2_numero": null,
  "lot3_numero": null,
  "lot4_numero": null,
  "lot5_numero": null,
  "nom_commune": "Toulouse",
  "nombre_lots": "1",
  "code_commune": "31555",
  "date_mutation": "2025-01-02",
  "numero_volume": null,
  "adresse_numero": "23",
  "nature_culture": null,
  "adresse_suffixe": null,
  "code_type_local": "3",
  "nature_mutation": "Vente",
  "surface_terrain": null,
  "valeur_fonciere": "135000",
  "adresse_nom_voie": "AV DES COTEAUX",
  "code_departement": "31",
  "adresse_code_voie": "2328",
  "ancien_id_parcelle": null,
  "ancien_nom_commune": null,
  "numero_disposition": "000001",
  "ancien_code_commune": null,
  "code_nature_culture": null,
  "lot1_surface_carrez": null,
  "lot2_surface_carrez": null,
  "lot3_surface_carrez": null,
  "lot4_surface_carrez": null,
  "lot5_surface_carrez": null,
  "surface_reelle_bati": null,
  "nature_culture_speciale": null,
  "nombre_pieces_principales": "0",
  "code_nature_culture_speciale": null
}
Record 3latitude: 43.603182 · longitude: 1.452292
{
  "latitude": "43.603182",
  "longitude": "1.452292",
  "type_local": "Dépendance",
  "code_postal": "31000",
  "id_mutation": "2025-352265",
  "id_parcelle": "31555821AC0324",
  "lot1_numero": "30",
  "lot2_numero": "31",
  "lot3_numero": null,
  "lot4_numero": null,
  "lot5_numero": null,
  "nom_commune": "Toulouse",
  "nombre_lots": "2",
  "code_commune": "31555",
  "date_mutation": "2025-01-03",
  "numero_volume": null,
  "adresse_numero": "9",
  "nature_culture": null,
  "adresse_suffixe": null,
  "code_type_local": "3",
  "nature_mutation": "Vente",
  "surface_terrain": null,
  "valeur_fonciere": "113000",
  "adresse_nom_voie": "RUE D'AUBUISSON",
  "code_departement": "31",
  "adresse_code_voie": "0608",
  "ancien_id_parcelle": null,
  "ancien_nom_commune": null,
  "numero_disposition": "000001",
  "ancien_code_commune": null,
  "code_nature_culture": null,
  "lot1_surface_carrez": null,
  "lot2_surface_carrez": null,
  "lot3_surface_carrez": null,
  "lot4_surface_carrez": null,
  "lot5_surface_carrez": null,
  "surface_reelle_bati": null,
  "nature_culture_speciale": null,
  "nombre_pieces_principales": "0",
  "code_nature_culture_speciale": null
}
Record 4latitude: 43.603182 · longitude: 1.452292
{
  "latitude": "43.603182",
  "longitude": "1.452292",
  "type_local": "Appartement",
  "code_postal": "31000",
  "id_mutation": "2025-352265",
  "id_parcelle": "31555821AC0324",
  "lot1_numero": "30",
  "lot2_numero": "31",
  "lot3_numero": null,
  "lot4_numero": null,
  "lot5_numero": null,
  "nom_commune": "Toulouse",
  "nombre_lots": "2",
  "code_commune": "31555",
  "date_mutation": "2025-01-03",
  "numero_volume": null,
  "adresse_numero": "9",
  "nature_culture": null,
  "adresse_suffixe": null,
  "code_type_local": "2",
  "nature_mutation": "Vente",
  "surface_terrain": null,
  "valeur_fonciere": "113000",
  "adresse_nom_voie": "RUE D'AUBUISSON",
  "code_departement": "31",
  "adresse_code_voie": "0608",
  "ancien_id_parcelle": null,
  "ancien_nom_commune": null,
  "numero_disposition": "000001",
  "ancien_code_commune": null,
  "code_nature_culture": null,
  "lot1_surface_carrez": null,
  "lot2_surface_carrez": null,
  "lot3_surface_carrez": null,
  "lot4_surface_carrez": null,
  "lot5_surface_carrez": null,
  "surface_reelle_bati": "34",
  "nature_culture_speciale": null,
  "nombre_pieces_principales": "1",
  "code_nature_culture_speciale": null
}
Record 5latitude: 43.614273 · longitude: 1.409462
{
  "latitude": "43.614273",
  "longitude": "1.409462",
  "type_local": "Maison",
  "code_postal": "31200",
  "id_mutation": "2025-352268",
  "id_parcelle": "31555801AB0042",
  "lot1_numero": null,
  "lot2_numero": null,
  "lot3_numero": null,
  "lot4_numero": null,
  "lot5_numero": null,
  "nom_commune": "Toulouse",
  "nombre_lots": "0",
  "code_commune": "31555",
  "date_mutation": "2025-01-02",
  "numero_volume": null,
  "adresse_numero": "23",
  "nature_culture": "sols",
  "adresse_suffixe": null,
  "code_type_local": "1",
  "nature_mutation": "Vente",
  "surface_terrain": "278",
  "valeur_fonciere": "457000",
  "adresse_nom_voie": "RUE MIRAMAR",
  "code_departement": "31",
  "adresse_code_voie": "5980",
  "ancien_id_parcelle": null,
  "ancien_nom_commune": null,
  "numero_disposition": "000001",
  "ancien_code_commune": null,
  "code_nature_culture": "S",
  "lot1_surface_carrez": null,
  "lot2_surface_carrez": null,
  "lot3_surface_carrez": null,
  "lot4_surface_carrez": null,
  "lot5_surface_carrez": null,
  "surface_reelle_bati": "80",
  "nature_culture_speciale": null,
  "nombre_pieces_principales": "3",
  "code_nature_culture_speciale": null
}
Record 6latitude: 43.602851 · longitude: 1.459104
{
  "latitude": "43.602851",
  "longitude": "1.459104",
  "type_local": "Dépendance",
  "code_postal": "31500",
  "id_mutation": "2025-352269",
  "id_parcelle": "31555807AB0801",
  "lot1_numero": "4",
  "lot2_numero": null,
  "lot3_numero": null,
  "lot4_numero": null,
  "lot5_numero": null,
  "nom_commune": "Toulouse",
  "nombre_lots": "1",
  "code_commune": "31555",
  "date_mutation": "2025-01-03",
  "numero_volume": null,
  "adresse_numero": "14",
  "nature_culture": null,
  "adresse_suffixe": null,
  "code_type_local": "3",
  "nature_mutation": "Vente",
  "surface_terrain": null,
  "valeur_fonciere": "199500",
  "adresse_nom_voie": "RUE DE LA BLANCHISSERIE",
  "code_departement": "31",
  "adresse_code_voie": "1200",
  "ancien_id_parcelle": null,
  "ancien_nom_commune": null,
  "numero_disposition": "000001",
  "ancien_code_commune": null,
  "code_nature_culture": null,
  "lot1_surface_carrez": "51.72",
  "lot2_surface_carrez": null,
  "lot3_surface_carrez": null,
  "lot4_surface_carrez": null,
  "lot5_surface_carrez": null,
  "surface_reelle_bati": null,
  "nature_culture_speciale": null,
  "nombre_pieces_principales": "0",
  "code_nature_culture_speciale": null
}
Record 7latitude: 43.602851 · longitude: 1.459104
{
  "latitude": "43.602851",
  "longitude": "1.459104",
  "type_local": "Dépendance",
  "code_postal": "31500",
  "id_mutation": "2025-352269",
  "id_parcelle": "31555807AB0801",
  "lot1_numero": "4",
  "lot2_numero": null,
  "lot3_numero": null,
  "lot4_numero": null,
  "lot5_numero": null,
  "nom_commune": "Toulouse",
  "nombre_lots": "1",
  "code_commune": "31555",
  "date_mutation": "2025-01-03",
  "numero_volume": null,
  "adresse_numero": "14",
  "nature_culture": null,
  "adresse_suffixe": null,
  "code_type_local": "3",
  "nature_mutation": "Vente",
  "surface_terrain": null,
  "valeur_fonciere": "199500",
  "adresse_nom_voie": "RUE DE LA BLANCHISSERIE",
  "code_departement": "31",
  "adresse_code_voie": "1200",
  "ancien_id_parcelle": null,
  "ancien_nom_commune": null,
  "numero_disposition": "000001",
  "ancien_code_commune": null,
  "code_nature_culture": null,
  "lot1_surface_carrez": "51.72",
  "lot2_surface_carrez": null,
  "lot3_surface_carrez": null,
  "lot4_surface_carrez": null,
  "lot5_surface_carrez": null,
  "surface_reelle_bati": null,
  "nature_culture_speciale": null,
  "nombre_pieces_principales": "0",
  "code_nature_culture_speciale": null
}
Record 8latitude: 43.602851 · longitude: 1.459104
{
  "latitude": "43.602851",
  "longitude": "1.459104",
  "type_local": "Appartement",
  "code_postal": "31500",
  "id_mutation": "2025-352269",
  "id_parcelle": "31555807AB0801",
  "lot1_numero": "4",
  "lot2_numero": null,
  "lot3_numero": null,
  "lot4_numero": null,
  "lot5_numero": null,
  "nom_commune": "Toulouse",
  "nombre_lots": "1",
  "code_commune": "31555",
  "date_mutation": "2025-01-03",
  "numero_volume": null,
  "adresse_numero": "14",
  "nature_culture": null,
  "adresse_suffixe": null,
  "code_type_local": "2",
  "nature_mutation": "Vente",
  "surface_terrain": null,
  "valeur_fonciere": "199500",
  "adresse_nom_voie": "RUE DE LA BLANCHISSERIE",
  "code_departement": "31",
  "adresse_code_voie": "1200",
  "ancien_id_parcelle": null,
  "ancien_nom_commune": null,
  "numero_disposition": "000001",
  "ancien_code_commune": null,
  "code_nature_culture": null,
  "lot1_surface_carrez": "51.72",
  "lot2_surface_carrez": null,
  "lot3_surface_carrez": null,
  "lot4_surface_carrez": null,
  "lot5_surface_carrez": null,
  "surface_reelle_bati": "50",
  "nature_culture_speciale": null,
  "nombre_pieces_principales": "3",
  "code_nature_culture_speciale": null
}

Live sample captured at profiling time — values may have changed upstream.

Verification Status

Using the API

Configuration

Base URL
https://files.data.gouv.fr/geo-dvf/latest/csv/

License

Terms stated by the source (not a recognized license):

Licence Ouverte / Open Licence version 2.0

Query examples

curl -s 'https://files.data.gouv.fr/geo-dvf/latest/csv/2025/communes/31/31555.csv'

Complete 2025 sales for INSEE commune 31555 as CSV. Pattern: https://files.data.gouv.fr/geo-dvf/latest/csv/{annee}/communes/{dept}/{code_commune}.csv (dept = first 2 chars of the code; 3 for overseas 97x).

Full API documentation ↗

Machine-readable & source

Demandes de valeurs foncières géolocalisées (DVF) — live verification badge

Embed this badge in a README or wiki — it always shows the latest verification state and quality tier.