webhook_url, Clustr sends a POST request to your URL once processing completes.
If your workspace already has imports in progress, a new job may be queued before it starts, so its webhook can arrive later than usual. Nothing is lost while it waits, and Get Job Status shows QUEUED until it begins.
Payload format
The webhook payload contains the full results for all processed connectors.Each result names the imported connector under the
client key. That key is part of the existing
webhook contract and is unchanged by the contacts → connectors rename on the import endpoint.Fields
Person (client and prospect)
Every person field except
name is left out when it has no value.
Company
The prospect’s current company. The wholecompany object is left out when Clustr has no company for the prospect. When it is present, every field below is included, set to "" when unknown.
Relationship
summary.processing_time_seconds is rounded to whole seconds.
Full history
Pass"full_history": true in the import request to add each relationship’s full history to the webhook payload:
relationship.shared_experience_history: every company they shared, in the same shape asshared_experience.relationship.shared_education_experience_history: every school they shared, in the same shape asshared_education_experience.relationship.engagement.history: every engagement, with duplicates removed.total_engagementsthen counts the entries inhistory.
PROSPECT_COMMENTED, PROSPECT_LIKED, PROSPECT_REACTED, PROSPECT_RECOMMENDED, CLIENT_COMMENTED, CLIENT_LIKED, CLIENT_RECOMMENDED.
Custom data passthrough
Any data you send in thecustom field of the import request is passed through to the webhook payload unchanged. Use this to correlate webhook responses with your internal records.
Error payloads
When processing fails,status is "failed", results is left out and an error object is included:
See the full webhook payload schema in the OpenAPI spec.