c0mm0.com — the continuously verified register of European data

Register record·API·FR·MUNICIPALITYVERIFIED · checked 26h ago
M

Real-estate transactions in Rennes Métropole (DVF)Mutations immobilières sur Rennes Métropole (DVF)

Mutations immobilières sur Rennes Métropole (DVF)Real-estate transactions in Rennes Métropole (DVF)

APIExecutable4/7Query nowOpen workbenchSubscribe🇫🇷France

This dataset, published by Rennes Métropole, provides a cadastral parcel layer displaying DVF (Demandes de Valeurs Foncières) data corresponding to recent property sales transactions within the metropolitan area. Release of the DVF database supports transparency in land and property markets by making recorded transaction values publicly accessible. The dataset covers real-estate mutations (sales) and can be used to analyze local property market trends, price levels, and transaction patterns across the Rennes Métropole territory.Cette couche de parcelles cadastrales permet de visualiser les données DVF (demandes de valeurs foncières) correspondant aux mutations à titre onéreux réalisées ces dernières années. La diffusion de la base DVF participe de la transparence des marchés fonciers et immobiliers. Les mutations immobi...

54
fair

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

Data schema (35 fields)

Filterable via the API (33)
gml_ididmutationanneedate_mutationtype_bientype_bien_precisionsurface_terrainsurface_batiesurface_batie_depvaleur_fonciereprix_bati_m2nb_parcellenb_locaux_mutesnb_maisonnb_appartnb_dependancenb_local_activitenature_mutationetage_maxannee_constr_minannee_constr_maxperiode_constructionvendeurplu_plui_mut_libelleplu_plui_mut_typezoneplui_libelleplui_typezonenom_communenom_quartiernom_sousquartierwms_timeacheteurprix_m2

Click a field to see example values.

FillFieldTypeDescription
—geo_point_2dGeo Pointgeo_point_2dGeographic coordinates (latitude/longitude) of the parcel centroid.Geographic coordinates (latitude/longitude) of the parcel centroid.
—geo_shapeShapegeo_shapeGeometric shape (polygon) of the cadastral parcel.Geometric shape (polygon) of the cadastral parcel.
—gml_idFilterable via the APIGml idtextUnique GML identifier for the spatial feature.Unique GML identifier for the spatial feature.
—idmutationFilterable via the APIintUnique identifier of the property transaction (mutation).Unique identifier of the property transaction (mutation).
—anneeFilterable via the APIintYear in which the property transaction took place.Year in which the property transaction took place.
—date_mutationFilterable via the APIDate mutationdatetimeDate on which the property transaction was recorded.Date on which the property transaction was recorded.
—type_bienFilterable via the APIType bientextGeneral category of the property involved in the transaction.General category of the property involved in the transaction.
—type_bien_precisionFilterable via the APIType bien precisiontextDetailed description of the property type.Detailed description of the property type.
—surface_terrainFilterable via the APISurface terraindoubleLand surface area of the parcel, in square metres.Land surface area of the parcel, in square metres.
—surface_batieFilterable via the APISurface batiedoubleBuilt floor area of the property, in square metres.Built floor area of the property, in square metres.
96.6%surface_batie_depFilterable via the APISurface batie depintBuilt surface area of outbuildings or dependencies, in square metres.Built surface area of outbuildings or dependencies, in square metres.
99.7%valeur_fonciereFilterable via the APIValeur foncieredoubleDeclared sale price of the property transaction, in euros.Declared sale price of the property transaction, in euros.
74.1%prix_bati_m2Filterable via the APIPrix bati m2doubleSale price per square metre of built floor area, in euros.Sale price per square metre of built floor area, in euros.
100%nb_parcelleFilterable via the APINb parcelleintNumber of cadastral parcels involved in the transaction.Number of cadastral parcels involved in the transaction.
100%nb_locaux_mutesFilterable via the APINb locaux mutesintNumber of premises (local units) transferred in the transaction.Number of premises (local units) transferred in the transaction.
100%nb_maisonFilterable via the APINb maisonintNumber of houses included in the transaction.Number of houses included in the transaction.
100%nb_appartFilterable via the APINb appartintNumber of apartments included in the transaction.Number of apartments included in the transaction.
100%nb_dependanceFilterable via the APINb dependanceintNumber of dependencies (outbuildings) included in the transaction.Number of dependencies (outbuildings) included in the transaction.
100%nb_local_activiteFilterable via the APINb local activiteintNumber of commercial/activity premises included in the transaction.Number of commercial/activity premises included in the transaction.
100%nature_mutationFilterable via the APINature mutationtextLegal nature of the transaction, e.g. sale or future-completion sale.Legal nature of the transaction, e.g. sale or future-completion sale.
74.4%etage_maxFilterable via the APIEtage maxintHighest floor level recorded for the building.Highest floor level recorded for the building.
96.6%annee_constr_minFilterable via the APIAnnee constr minintEarliest construction year among buildings in the transaction.Earliest construction year among buildings in the transaction.
96.6%annee_constr_maxFilterable via the APIAnnee constr maxintLatest construction year among buildings in the transaction.Latest construction year among buildings in the transaction.
71.6%periode_constructionFilterable via the APIPeriode constructiontextConstruction period category of the building.Construction period category of the building.
77.7%vendeurFilterable via the APItextType of seller involved in the transaction.Type of seller involved in the transaction.
66.3%plu_plui_mut_libelleFilterable via the APIPlu plui mut libelletextLocal urban plan zone label applicable at the time of the mutation.Local urban plan zone label applicable at the time of the mutation.
66.2%plu_plui_mut_typezoneFilterable via the APIPlu plui mut typezonetextLocal urban plan zone type applicable at the time of the mutation.Local urban plan zone type applicable at the time of the mutation.
97.9%plui_libelleFilterable via the APIPlui libelletextCurrent intercommunal urban plan (PLUi) zone label.Current intercommunal urban plan (PLUi) zone label.
97.9%plui_typezoneFilterable via the APIPlui typezonetextCurrent intercommunal urban plan (PLUi) zone type.Current intercommunal urban plan (PLUi) zone type.
100%nom_communeFilterable via the APICommune nametextName of the municipality where the property is located.Name of the municipality where the property is located.
53.2%nom_quartierFilterable via the APINom quartiertextName of the city district where the property is located.Name of the city district where the property is located.
51.2%nom_sousquartierFilterable via the APINom sousquartiertextName of the sub-district where the property is located.Name of the sub-district where the property is located.
0%wms_timeFilterable via the APIWms timedatetimeTimestamp used for WMS temporal display of the data.Timestamp used for WMS temporal display of the data.
79.5%acheteurFilterable via the APItextType of buyer involved in the transaction, e.g. individual or developer.Type of buyer involved in the transaction, e.g. individual or developer.
11.8%prix_m2Filterable via the APIPrix m2doubleSale price per square metre of land or property, in euros.Sale price per square metre of land or property, in euros.

Schema captured from opendatasoft 2 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)

These rows are ODbL-1.0: share-alike. Reusing them obliges you to license any derived database on the same terms.

Record 1annee: 2022 · gml_id: dvf_mutation.fid--2fb12420_1a1583569af_5
{
  "annee": 2022,
  "gml_id": "dvf_mutation.fid--2fb12420_1a1583569af_594e",
  "prix_m2": null,
  "vendeur": "PERSONNE PHYSIQUE",
  "acheteur": "PERSONNE PHYSIQUE",
  "wms_time": null,
  "etage_max": 81,
  "geo_shape": {
    "type": "Feature",
    "geometry": {
      "type": "MultiPolygon",
      "coordinates": [
        [
          [
            [
              -1.696838800004074,
              48.13353749999593
            ],
            [
              -1.696705199996367,
              48.13343329999953
            ],
            [
              -1.6960319000026,
              48.133246500003445
            ],
            [
              -1.696173300004527,
              48.13354789999963
            ],
            [
              -1.696420900005985,
              48.13374059999615
            ],
            [
              -1.696838800004074,
              48.13353749999593
            ]
          ]
        ]
      ]
    },
    "properties": {}
  },
  "nb_appart": 1,
  "nb_maison": 0,
  "type_bien": "Appartement",
  "idmutation": 15944226,
  "nb_parcelle": 1,
  "nom_commune": "Rennes",
  "geo_point_2d": {
    "lat": 48.13349638770284,
    "lon": -1.696414063852647
  },
  "nom_quartier": "Villejean / Beauregard",
  "plui_libelle": "UO1",
  "prix_bati_m2": 3313,
  "date_mutation": null,
  "nb_dependance": 2,
  "plui_typezone": "U",
  "surface_batie": 80,
  "nature_mutation": "Vente",
  "nb_locaux_mutes": 3,
  "surface_terrain": 0,
  "valeur_fonciere": 265000,
  "annee_constr_max": 2012,
  "annee_constr_min": 2012,
  "nom_sousquartier": "Beauregard",
  "nb_local_activite": 0,
  "surface_batie_dep": 111,
  "type_bien_precision": "UN APPARTEMENT ANCIEN T4",
  "periode_construction": "1990-2012",
  "plu_plui_mut_libelle": "UO1",
  "plu_plui_mut_typezone": "U"
}
Record 2annee: 2024 · gml_id: dvf_mutation.fid--2fb12420_1a15835efd9_-
{
  "annee": 2024,
  "gml_id": "dvf_mutation.fid--2fb12420_1a15835efd9_-595d",
  "prix_m2": null,
  "vendeur": "PERSONNE PHYSIQUE",
  "acheteur": "PERSONNE PHYSIQUE",
  "wms_time": null,
  "etage_max": 81,
  "geo_shape": {
    "type": "Feature",
    "geometry": {
      "type": "MultiPolygon",
      "coordinates": [
        [
          [
            [
              -1.700424599996451,
              48.12935929999765
            ],
            [
              -1.70043709999831,
              48.129713600003775
            ],
            [
              -1.700877600003476,
              48.12996210000326
            ],
            [
              -1.701411399998651,
              48.12989019999575
            ],
            [
              -1.70122269999692,
              48.1292506000015
            ],
            [
              -1.700424599996451,
              48.12935929999765
            ]
          ]
        ]
      ]
    },
    "properties": {}
  },
  "nb_appart": 1,
  "nb_maison": 0,
  "type_bien": "Appartement",
  "idmutation": 18813777,
  "nb_parcelle": 1,
  "nom_commune": "Rennes",
  "geo_point_2d": {
    "lat": 48.12960724110548,
    "lon": -1.7009155156162612
  },
  "nom_quartier": "Villejean / Beauregard",
  "plui_libelle": "UC1",
  "prix_bati_m2": 3077,
  "date_mutation": null,
  "nb_dependance": 1,
  "plui_typezone": "U",
  "surface_batie": 39,
  "nature_mutation": "Vente",
  "nb_locaux_mutes": 2,
  "surface_terrain": 0,
  "valeur_fonciere": 120000,
  "annee_constr_max": 2000,
  "annee_constr_min": 2000,
  "nom_sousquartier": "Beauregard",
  "nb_local_activite": 0,
  "surface_batie_dep": 51,
  "type_bien_precision": "UN APPARTEMENT ANCIEN T2",
  "periode_construction": "1990-2012",
  "plu_plui_mut_libelle": "UC1",
  "plu_plui_mut_typezone": "U"
}
Record 3annee: 2018 · gml_id: dvf_mutation.fid--2fb12420_1a15835b62f_a
{
  "annee": 2018,
  "gml_id": "dvf_mutation.fid--2fb12420_1a15835b62f_ab1",
  "prix_m2": null,
  "vendeur": null,
  "acheteur": null,
  "wms_time": null,
  "etage_max": null,
  "geo_shape": {
    "type": "Feature",
    "geometry": {
      "type": "MultiPolygon",
      "coordinates": [
        [
          [
            [
              -1.646451900004136,
              48.10984559999754
            ],
            [
              -1.646246399995503,
              48.10992379999691
            ],
            [
              -1.646469399994987,
              48.10992179999726
            ],
            [
              -1.646451900004136,
              48.10984559999754
            ]
          ]
        ]
      ]
    },
    "properties": {}
  },
  "nb_appart": 0,
  "nb_maison": 0,
  "type_bien": "Autres",
  "idmutation": 9855096,
  "nb_parcelle": 1,
  "nom_commune": "Rennes",
  "geo_point_2d": {
    "lat": 48.109897066663905,
    "lon": -1.6463892333315422
  },
  "nom_quartier": "Thabor / Saint-Hélier / Alphonse Guérin / Baud-Chardonnet",
  "plui_libelle": "UO1",
  "prix_bati_m2": null,
  "date_mutation": null,
  "nb_dependance": 0,
  "plui_typezone": "U",
  "surface_batie": 0,
  "nature_mutation": "Vente en l'état futur d'achèvement",
  "nb_locaux_mutes": 0,
  "surface_terrain": 0,
  "valeur_fonciere": 115000,
  "annee_constr_max": 0,
  "annee_constr_min": 0,
  "nom_sousquartier": "Plaine de Baud",
  "nb_local_activite": 0,
  "surface_batie_dep": 0,
  "type_bien_precision": "BATI - INDETERMINE : Vefa sans descriptif",
  "periode_construction": null,
  "plu_plui_mut_libelle": "UO",
  "plu_plui_mut_typezone": "U"
}
Record 4annee: 2010 · gml_id: dvf_mutation.fid--2fb12420_1a1583569af_-
{
  "annee": 2010,
  "gml_id": "dvf_mutation.fid--2fb12420_1a1583569af_-16c3",
  "prix_m2": null,
  "vendeur": "PERSONNE PHYSIQUE",
  "acheteur": null,
  "wms_time": null,
  "etage_max": 81,
  "geo_shape": {
    "type": "Feature",
    "geometry": {
      "type": "MultiPolygon",
      "coordinates": [
        [
          [
            [
              -1.698014000003538,
              48.0997840000006
            ],
            [
              -1.697974199998564,
              48.099745199999056
            ],
            [
              -1.697971000004147,
              48.099742000001754
            ],
            [
              -1.697676199993174,
              48.09975529999585
            ],
            [
              -1.6976740999959,
              48.09973300000313
            ],
            [
              -1.697615100004094,
              48.09973559999663
            ],
            [
              -1.697617200004353,
              48.09975800000134
            ],
            [
              -1.697518899997555,
              48.0997624999963
            ],
            [
              -1.697516600005566,
              48.09974010000018
            ],
            [
              -1.697457800000308,
              48.09974279999714
            ],
            [
              -1.69745989999964,
              48.09976520000195
            ],
            [
              -1.697244499997052,
              48.09977489999585
            ],
            [
              -1.697297100005768,
              48.100298000001544
            ],
            [
              -1.697514200002924,
              48.10028820000196
            ],
            [
              -1.697654799999928,
              48.10028170000128
            ],
            [
              -1.697935200004119,
              48.1003933000001
            ],
            [
              -1.698031499996929,
              48.10038889999713
            ],
            [
              -1.69803579999755,
              48.100432199996156
            ],
            [
              -1.698321199993027,
              48.100419399996376
            ],
            [
              -1.698304300004516,
              48.10025280000196
            ],
            [
              -1.698234800005344,
              48.100255999998986
            ],
            [
              -1.698206100005922,
              48.09997210000078
            ],
            [
              -1.698014000003538,
              48.0997840000006
            ]
          ]
        ]
      ]
    },
    "properties": {}
  },
  "nb_appart": 1,
  "nb_maison": 0,
  "type_bien": "Appartement",
  "idmutation": 345759,
  "nb_parcelle": 1,
  "nom_commune": "Rennes",
  "geo_point_2d": {
    "lat": 48.10006784659786,
    "lon": -1.69776693185968
  },
  "nom_quartier": "Cleunay / Arsenal - Redon / La Courrouze",
  "plui_libelle": "UO1",
  "prix_bati_m2": 3154,
  "date_mutation": null,
  "nb_dependance": 1,
  "plui_typezone": "U",
  "surface_batie": 65,
  "nature_mutation": "Vente en l'état futur d'achèvement",
  "nb_locaux_mutes": 2,
  "surface_terrain": 0,
  "valeur_fonciere": 205000,
  "annee_constr_max": 2009,
  "annee_constr_min": 2009,
  "nom_sousquartier": "Cleunay",
  "nb_local_activite": 0,
  "surface_batie_dep": 77,
  "type_bien_precision": "UN APPARTEMENT VEFA OU NEUF T3",
  "periode_construction": "1990-2012",
  "plu_plui_mut_libelle": null,
  "plu_plui_mut_typezone": null
}
Record 5annee: 2025 · gml_id: dvf_mutation.fid--2fb12420_1a15835b62f_3
{
  "annee": 2025,
  "gml_id": "dvf_mutation.fid--2fb12420_1a15835b62f_37d9",
  "prix_m2": null,
  "vendeur": null,
  "acheteur": null,
  "wms_time": null,
  "etage_max": 0,
  "geo_shape": {
    "type": "Feature",
    "geometry": {
      "type": "MultiPolygon",
      "coordinates": [
        [
          [
            [
              -1.674701799995368,
              48.11034100000403
            ],
            [
              -1.674699700001052,
              48.11025939999822
            ],
            [
              -1.674815000006601,
              48.11025860000151
            ],
            [
              -1.674816599993977,
              48.11036349999581
            ],
            [
              -1.674796400004243,
              48.110363299995925
            ],
            [
              -1.674850699995361,
              48.11048310000393
            ],
            [
              -1.674759700006483,
              48.110503100003356
            ],
            [
              -1.674711099997911,
              48.110392399995575
            ],
            [
              -1.674702800003936,
              48.110373800000694
            ],
            [
              -1.674702500001836,
              48.11036280000049
            ],
            [
              -1.674701799995368,
              48.11034100000403
            ]
          ]
        ]
      ]
    },
    "properties": {}
  },
  "nb_appart": 0,
  "nb_maison": 1,
  "type_bien": "Maison",
  "idmutation": 19323723,
  "nb_parcelle": 2,
  "nom_commune": "Rennes",
  "geo_point_2d": {
    "lat": 48.11037188231492,
    "lon": -1.6747671848701196
  },
  "nom_quartier": "Centre",
  "plui_libelle": null,
  "prix_bati_m2": 4429,
  "date_mutation": null,
  "nb_dependance": 0,
  "plui_typezone": null,
  "surface_batie": 210,
  "nature_mutation": "Vente",
  "nb_locaux_mutes": 1,
  "surface_terrain": 206,
  "valeur_fonciere": 930000,
  "annee_constr_max": 1900,
  "annee_constr_min": 1900,
  "nom_sousquartier": "Centre",
  "nb_local_activite": 0,
  "surface_batie_dep": 296,
  "type_bien_precision": "UNE MAISON ANCIENNE",
  "periode_construction": "< 1914",
  "plu_plui_mut_libelle": null,
  "plu_plui_mut_typezone": null
}

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

Verification Status

Using the API

Configuration

Base URL
https://data.rennesmetropole.fr/api/explore/v2.1/catalog/datasets/mutation_immobiliere_dvf_rm

License

  • ✓ Redistributable
  • ✓ Attribution required

Query examples

curl -s 'https://data.rennesmetropole.fr/api/explore/v2.1/catalog/datasets/mutation_immobiliere_dvf_rm/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.

Full API documentation ↗

Rate limits

7 000 req/day
per ipmeasured
observed 2 days ago

Dataset

Volume & freshness

Records
159k
158667
Last upstream update
3 days ago
2026-10-20

License

No license declared upstream.

○ Documentation○ Data dictionary○ Versioning

Source: opendatasoft

Machine-readable & source

Mutations immobilières sur Rennes Métropole (DVF) — live verification badge

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