Classified data without polling the API. In the Immoteur dashboard, open API → Webhooks and set the receiver URL for the service.
Choose the updates to receive
Immoteur sends a live listing notification when a listing is created or when an eligible normalized field changes. Ameta.lastSeenAt-only revisit is captured for delta-export reconciliation and does not create a direct live notification.
Use meta.lastModifiedAt to identify the latest normalized update and meta.lastSeenAt to identify the latest revisit. There is no periodic keep-alive webhook.
Configure the endpoint
Create the service in API → Webhooks in the Immoteur dashboard. Use an HTTPS endpoint that your service controls.Filter the stream
Each service has one filter object. Choose the filter type that matches the scope your integration is allowed to receive. The exact keys depend on that type:- Professional
- Geographic
- Global
type,transactionType,sourceDomains, andpublisherCompanyReference(required)
transactionType is always required and non-null, and a geographic filter requires a non-empty locationDepartments list. Other required keys may use null only where the schema permits it. For a global filter, nullable propertyTypes, publisherType, and sourceDomains values leave those dimensions unrestricted; transactionType still defines the scope.
Choose the payload type
Each service has one delivery mode. The dashboard offersclassified-notification-single by default, classified-notification-batch, and classified-export.
Use
classified-notification-single when your receiver needs one Classified object per notification. Use classified-notification-batch when it can process one to ten full snapshots for distinct listings and deduplicate a batch event. Use classified-export for a baseline or reconciliation export; it has a different envelope and lifecycle from live notifications.
Changing the delivery mode changes the body received by your endpoint. Confirm that its receiver supports the new contract before saving; the change cancels an active export. You can pause and resume a service without losing its configuration, but resuming does not promise delivery of a batch retained before the pause.
Test webhook delivery with the sandbox
The sandbox has one endpoint for each public delivery mode:
The
classified-notification-batch endpoint accepts the same strict batch body. It returns 200 for a valid body and 400 for an invalid body, while retaining the sandbox’s existing simulated response behavior.
Understand notification batches
A batch seals as soon as it contains ten distinct classified IDs. Otherwise, it becomes eligible when its first item has waited one hour; this non-sliding threshold is not a promised receipt time, because the minute scheduler, queue, and HTTP latency follow. If the same classified changes again while its batch is active, Immoteur replaces the full snapshot without increasing the item count or changing its first-seen order. The receiver therefore receives anitems array with one to ten complete Classified objects, and X-Immoteur-Event-Id is its stable batch identifier.
The batch body contains only items; it does not include batchId, exportId, exportType, isComplete, or type. Those fields belong to other delivery contracts.
Set onlyNew to false for either notification type when you need updates as well as creations.
For classified-export deliveries, exportType identifies the effective type delivered for the entire export: full for a Full export and delta for a Delta export. Its value is the same on every data batch and terminal completion message. When a requested Delta export falls back, deliveries use full; the receiver payload does not include the requested mode or the fallback reason.
An export can contain multiple deliveries. Do not rely on a fixed item count or delivery order.
To combine live notifications, a baseline, and delta reconciliation, create compatible but separate services: one classified-notification-single or classified-notification-batch service and one classified-export service. They can use the same receiver URL, but they are not one service.
See Mirror classified data for the full baseline, live update, and delta-reconciliation flow, then read Webhook delivery, retries, and idempotency before implementing the receiver.