Skip to content
# niddamour — Nid d'Amour / Karen Cadet inc.
- Liste API (inchangé) : statut AVAILABLE + for_rent + RESIDENTIAL, prix rent structuré, chambres -> type d'unité, ville/quartier via dictionnaire (« Montréal (Le Plateau-Mont-Royal) »), filtre régions CMM, lat/lng structurés.
- Fiche API (désormais via self.detail, cache BD) :
- adresse civique + app. + code postal (nouveau : postal_code) ;
- description + addendum HTML (DÉTAILS / SERVICES À PROXIMITÉ, balises retirées) + nombre de sdb -> description enrichie (nouveau) ;
- champ structuré
inclusions -> amenities brutes (lignes) + details.inclusions{…: true} ;
- champ structuré
exclusions -> details.inclusions{…: false} explicites (nouveau — « Électricité, chauffage et eau chaude » exclus ne deviennent plus positifs même si l'addendum les mentionne) ;
- étage de l'unité principale (
units[].level) -> details.floor (nouveau).
# Champs indisponibles à la source
- Superficie :
dimension toujours vide (building/land/units) — seule la description la mentionne parfois (4/14 dérivées par la normalisation).
- Date de disponibilité précise (seulement le statut AVAILABLE -> « Disponible »), animaux, fumeur ;
attributes et rooms vides chez ce compte.
- 4/14 annonces sans texte
inclusions à la source -> amenities vides.
# Fragilités
- Dépend de la config publique source.immo lue sur la page d'accueil (
config_path) : si le site WordPress change, plus de clés API.
- API non documentée (entêtes x-si-*) ; le format des dictionnaires (city/region/subcategory) peut évoluer.
- L'URL publique /propriete// est une route Angular (404 serveur) — inchangée pour garder les uid stables.
# Améliorations apportées
- Fiches détaillées via self.detail(...) (cache BD, clé = hash JSON de l'item de liste) + plafond de 150 vraies requêtes/sync (avant : 40 fetchs directs à chaque sync).
- Adresse avec code postal ; description enrichie (addendum + sdb) ; details.inclusions structurés avec négatifs (exclusions) ; details.floor.
# Échantillon avant/après
- Avant : « 5453 Rue Saint-Urbain » — 2500 $, 5½, details
{"inclusions": {"internet": true}, "appliances": {"fridge": true}} (électricité/chauffage/eau chaude exclus non signalés), pas d'étage, adresse sans code postal.
- Après : « 5453 Rue Saint-Urbain, H2T 2W8 » — details
{"inclusions": {"internet": true, "electricity": false, "heating": false, "hot_water": false}, "appliances": {"fridge": true}, "laundry": true, "storage": true, "floor": 1}, description enrichie (détails de l'appartement, services à proximité, 2 sdb).
# Lacunes génériques de normalisation observées
- Aucune nouvelle propre à cette source (les champs
exclusions sont traités structurellement dans le connecteur, comme prévu par l'architecture).