location est un tableau (multi-zones combinées en OR) ; côté Advert, location est un objet unique. D’autres clés racine peuvent également différer. Il n’existe pas d’endpoint search ADVERT public ; les annonces brutes passent toujours par une alerte webhook.
Chaque sous-objet est optionnel ; les filtres absents ne contraignent pas le résultat. Tous les filtres top-level sont combinés en AND logique. Quand un filtre prend une array d’objets (ex. côté Property : location[], offer[]), les éléments de l’array sont combinés en OR. Côté Advert, location est un objet unique → pas de OR possible sur les zones.
location[] — zones géographiques
location est un tableau : plusieurs zones sont combinées en OR (ex. Paris OU 92 OU 93). Chaque entrée accepte exactement un des modes ci-dessous.
Détails complets, exemples par mode et logique multi-zones : Recherche géographique.
offer[].type — type d’offre
offer est un tableau. Le champ type est un enum :
price — prix
habitation — caractéristiques du logement
Note :
habitation.floor n’est pas un champ direct du DTO — il fait partie de habitation.characteristics ou habitation.features selon le modèle. Utilisez surface, bedroomCount, roomCount pour les filtres usuels.
type[] — classe de bien
Tableau d’enum EnumPropertyClassDto :
meta — métadonnées de cycle de vie
Filtres spécifiques Adverts (alerte)
Au-delà des filtres communs ci-dessus, les alertes ADVERTS exposent :isOnline (équivalent advert de meta.isTotallyOffline côté property), isPro, isExclusive, source (portail d’origine), seller[], firstSeenAt. Voir Advert — modèle complet.
Pour aller plus loin
- Recherche géographique — détail des modes de zone et multi-zones OR.
- Property — modèle complet
- Advert — modèle complet
- Search Properties

