Skip to main content

Documentation Index

Fetch the complete documentation index at: https://doc.fluximmo.io/llms.txt

Use this file to discover all available pages before exploring further.

Un match est l’événement métier qu’émet Fluximmo lorsqu’une advert ou une property satisfait les critères d’une alerte. Chaque match est livré au webhook de l’alerte. Le type de match indique la nature de l’événement : nouveau bien découvert, fusion, ou événement sur un bien déjà matché.

Match types — Adverts

Type (souscription match[])QuandBranche du webhook canonique
ALERT_MATCH_CREATEDUne nouvelle advert vient d’être ingérée et qualifiée par l’alerte. Émis une seule fois par advert.data.created[]AdvertDto complet.
ALERT_MATCH_ADVERT_EVENTUne advert historiquement matchée par cette alerte a évolué (prix, status).data.updated[] — DTO réduit (flxId, currentPrice, isOnline). Type d’event (PRICE / REPUBLISHED / UNPUBLISHED) dérivé côté client par diff vs état local.

Match types — Properties

TypeQuandPayload (webhook)
ALERT_MATCH_CREATEDUne property vient d’être créée et qualifiée par l’alerte.IDs uniquement → refetch.
ALERT_MATCH_MERGEDUne nouvelle advert vient d’être fusionnée dans une property déjà matchée. Émis uniquement à la fusion (pas à la création de la property elle-même).IDs uniquement → refetch.

Comparatif Adverts vs Properties

AdvertsProperties
CREATEDOuiOui
MERGEDNon — pas de fusion d’advertsOui — fusion = nouveau matching
Events post-création (PRICE, etc.)Oui via ADVERT_EVENTNon — pas d’event natif sur Property
Si vous avez besoin d’événements granulaires (variation de prix, online/offline), utilisez les alertes Adverts. Les alertes Properties ne livrent que des notifications de découverte/fusion.

Events ADVERT — à dériver côté client

Le webhook ADVERT pousse les advert evolved dans data.updated[] avec un DTO minimal (flxId, currentPrice {value, valuePerArea}, isOnline). Il n’y a pas de champ event_type côté serveur — vous reconstituez l’événement par comparaison avec votre état stocké local :
Event dérivéRègle de détection (côté client)Note
PRICEadvert.currentPrice.value ≠ valeur précédemment stockéeToute variation, même 1 €. Pas de seuil serveur. Filtrez côté client si vous voulez ignorer les micro-variations.
REPUBLISHEDadvert.isOnline passe de false à trueAnnonce remise en ligne.
UNPUBLISHEDadvert.isOnline passe de true à falseAnnonce retirée.
Pré-requis : maintenez localement (flxId{ price, isOnline }) à jour à chaque webhook (data.created ET data.updated) pour pouvoir comparer au prochain. Sans état local, impossible de dériver les events.CHECK non émis. Les vérifications périodiques sans changement réel ne déclenchent aucun webhook — pas de bruit.

Pas de backfill à la création

Une alerte ne match que les annonces ingérées après sa création (createdAt). Les annonces déjà présentes dans le catalogue qui rempliraient les critères ne déclencheront pas de match. Pattern recommandé pour couvrir passé + futur :
  1. Côté PROPERTIES : POST /v2/protected/properties/search one-shot avec vos critères pour récupérer les biens déjà ingérés ; en parallèle, créez une alerte property pour le flux continu.
  2. Côté ADVERTS : créez l’alerte ADVERT pour le flux continu, et demandez par mail à [email protected] la réception du backfill historique sur votre webhook (volume + dates précisés).
  3. Dédupliquez côté client : un même flxId peut réapparaître si ingéré à nouveau (rare). Utilisez flxId comme clé d’idempotence.

Pour aller plus loin