POST to the endpoint configured in your dashboard.
Delivery semantics
- Notifications are sent when a classified is created or when any normalized field is updated.
- We also send a notification when we revisit (crawl) a classified, even if nothing changed; the average revisit cadence is ~24h. You can distinguish a revisit from an update by comparing
meta.lastModifiedAt(unchanged on revisit) andmeta.lastSeenAt(updated on revisit).
Configure the endpoint
Create a webhook from the Service → Webhooks section of the Immoteur dashboard. Point it to an HTTPS endpoint that you control and confirm the secret header configuration before saving.
Filtering the stream
The events you receive depend on the filters configured on your exporter. Combine transaction, geography, and publisher filters to keep the payload focused on relevant markets.- Professional
- Geographic
- Global
- Transaction type (Required)
- Domain source
- Property type
- SIREN / SIRET (Required)
Notification types
- Classified notification: delivers a single classified snapshot (schema
components.schemas.Classified, webhookwebhooks.classified-notification). Use it to track listing‑level lifecycle and price changes. - Property notification: delivers an aggregated property snapshot (schema
components.schemas.Property, webhookwebhooks.property-notification) including the current set of associated classifieds and price history. - Classifieds notification: delivers batched classifieds during a bulk export (schema
components.schemas.ClassifiedsExport, webhookwebhooks.classifieds). Each delivery includes anexportIdto correlate chunks and up to 500 entries initems, making it ideal to hydrate large datasets or backfill after downtime.
Classifieds export delivery
The classifieds export webhook streams classifieds sequentially and waits for your HTTP response before sending the next batch. Failure responses (non-2xx or timeout) trigger up to three retries with 10-second delays. If the third attempt still fails, the export job stops and must be restarted manually from the dashboard. Active exports are automatically triggered every day at midnight, so a healthy endpoint should receive at least one classifieds export delivery per day.
Payload structure
The example below shows a classified notification body aligned with the OpenAPI specification.For quality, Immoteur permanently filters out classifieds missing any of the following fields:
- location.city.inseeCode
- location.city.name
- location.postcode
- location.country
- property.type
- transaction.price.current
- transaction.type
- publisher.isProfessional
Circuit breaker
Immoteur uses a per‑service circuit breaker to protect your servers when retries pile up.- Threshold: opens when 1,000 distinct webhook events are in retry for a single service.
- Cooldown: 10 minutes. Deliveries for that service are skipped during the cooldown (no backlog).
- Retries: up to 3 attempts with exponential backoff (30s, 60s, 120s) by default;
Retry-After/RateLimit-Resetoverrides the delay. - Max retry delay: 5 minutes, including
Retry-After/RateLimit-Reset.
2xx quickly; deliveries resume automatically after the cooldown. Classifieds export batches follow their own retry rules described above.
Delivery best practices
- Respond with
2xxquickly after persisting the payload; non-success responses are retried with exponential backoff. - Use the
idfield as an idempotency key to avoid duplicates on retries. - Log delivery timestamps to monitor throughput and detect stalls; contact Immoteur support if the stream stops unexpectedly.