API REST / Historique d'un bien

Historique d'un bien

Retrouvez toutes les transactions enregistrées pour une adresse ou une parcelle cadastrale depuis 2014.

GET/v1/property-history20 crédits

Retourne l'historique complet des mutations DVF pour un bien immobilier, avec l'évolution des prix entre la première et la dernière transaction connue.

Deux modes de recherche
  • Par adresse : address + code_postal — correspondance floue sur le nom de rue.
  • Par parcelle cadastrale : section + no_plan + code_commune — correspondance exacte, plus précise pour les immeubles multi-lots.

Paramètres

ParamètreTypeDéfautDescription
addressstringAdresse du bien (ex. 15 rue de la Paix). Utilisez avec code_postal.
code_postalstringCode postal (ex. 75002). Requis avec address.
sectionstringSection cadastrale (ex. AB). Utilisez avec no_plan et code_commune.
no_planstringNuméro de plan cadastral (ex. 0042). Utilisez avec section et code_commune.
code_communestringCode INSEE de la commune à 5 chiffres (ex. 75102). Requis pour la recherche cadastrale.

Exemple — recherche par adresse

curl "https://mcp.normi.fr/v1/property-history?address=15+rue+de+la+Paix&code_postal=75002" \
  -H "X-API-Key: normi_votre_token"

Exemple — recherche cadastrale

# Recherche par parcelle cadastrale (plus précise)
curl "https://mcp.normi.fr/v1/property-history?section=AB&no_plan=0017&code_commune=75102" \
  -H "X-API-Key: normi_votre_token"

Réponse

{
  "query": {
    "address": "15 rue de la Paix",
    "code_postal": "75002",
    "match_type": "address_fuzzy"
  },
  "property": {
    "commune": "PARIS 02",
    "code_postal": "75002",
    "section": "AB",
    "no_plan": "0017",
    "type_local": "Appartement",
    "surface_reelle_bati": 95
  },
  "transactions": [
    {
      "id": 1872341,
      "date_mutation": "2023-06-14",
      "valeur_fonciere": 1250000,
      "prix_m2": 13158,
      "surface_reelle_bati": 95,
      "nombre_pieces_principales": 4,
      "type_local": "Appartement"
    },
    {
      "id": 1124890,
      "date_mutation": "2018-03-22",
      "valeur_fonciere": 980000,
      "prix_m2": 10316,
      "surface_reelle_bati": 95,
      "nombre_pieces_principales": 4,
      "type_local": "Appartement"
    }
  ],
  "price_evolution": {
    "first_transaction": { "date": "2018-03-22", "prix_m2": 10316 },
    "last_transaction": { "date": "2023-06-14", "prix_m2": 13158 },
    "total_change_pct": 27.5,
    "annualized_change_pct": 4.9
  },
  "_credits": { "used": 20, "remaining": 40 },
  "query_time_ms": 89
}
20 crédits — endpoint le plus coûteux
  • Préférez la recherche cadastrale quand vous avez le numéro de parcelle : elle est plus précise et évite les faux positifs.
  • La recherche par adresse utilise une correspondance floue sur le nom de voie (type de voie ignoré).
  • Voir aussi get_property_history pour l'équivalent MCP.