API REST / Comparables

Comparables

Trouvez des biens similaires pour estimer la valeur d'un bien immobilier.

GET/v1/comparables10 crédits

Retourne les transactions les plus similaires à un bien cible, classées par proximité et similarité de surface. Utilisez cet endpoint pour construire une estimation de valeur marché : fourchette basse / médiane / haute basée sur des comparables réels.

Paramètres requis
latitude, longitude, type_local, surface_min et surface_max sont tous obligatoires.

Paramètres

ParamètreTypeDéfautDescription
latitude*numberLatitude GPS du bien cible (ex. 48.8566)
longitude*numberLongitude GPS du bien cible (ex. 2.3522)
type_local*enumMaison | Appartement
surface_min*numberSurface minimum en m² (ex. surface cible × 0.8)
surface_max*numberSurface maximum en m² (ex. surface cible × 1.2)
piecesnumberNombre de pièces (tolérance ±1)
radius_mnumber500Rayon de recherche en mètres (100–2000)
max_age_monthsnumber12Ancienneté max des transactions (1–36 mois)
limitnumber10Nombre maximum de comparables (1–20)
exclude_bulk_salesbooleantrueExclure les ventes en lot

Exemple — estimer un appartement de 65m² à Paris 11

curl "https://mcp.normi.fr/v1/comparables?latitude=48.8581&longitude=2.3790&type_local=Appartement&surface_min=52&surface_max=78&radius_m=500&max_age_months=12" \
  -H "X-API-Key: normi_votre_token"

Réponse

{
  "comparables": [
    {
      "address": "15 RUE DE LA ROQUETTE, 75011, PARIS 11",
      "date_mutation": "2024-11-15",
      "type_local": "Appartement",
      "surface_carrez": 63.5,
      "nombre_pieces": 3,
      "valeur_fonciere": 598000,
      "prix_m2": 9417,
      "distance_m": 187,
      "similarity_score": 0.94
    },
    {
      "address": "8 RUE OBERKAMPF, 75011, PARIS 11",
      "date_mutation": "2024-09-03",
      "type_local": "Appartement",
      "surface_carrez": 71.2,
      "nombre_pieces": 3,
      "valeur_fonciere": 672000,
      "prix_m2": 9438,
      "distance_m": 312,
      "similarity_score": 0.89
    }
  ],
  "summary": {
    "count": 8,
    "price_m2": { "min": 8950, "median": 9413, "max": 10120 },
    "estimated_range": {
      "low": 581750,
      "median": 611845,
      "high": 658000
    }
  },
  "_credits": { "used": 10, "remaining": 75 },
  "query_time_ms": 287
}
Interpréter les résultats
  • similarity_score : 1.0 = comparable parfait, score basé sur distance + écart de surface.
  • estimated_range : fourchette basse/médiane/haute calculée sur l'ensemble des comparables.
  • Si moins de 3 comparables sont trouvés, augmentez radius_m ou max_age_months.