Skip to main content

Webhooks

Webhook subscriptions let you receive real-time notifications when new leads are discovered. Primarily used by the Zapier integration but works with any system that accepts webhook POSTs. When a sync completes, Catch The Good Ones sends a POST request to each registered webhook URL with the newly discovered leads. Filter changes in v2 amendment-12: segmentId has been removed (segments are not first-class in the public filter surface); streamId is the new way to filter by campaign. trackedAccountId renamed to accountId. Existing subscriptions with the old segmentId filter silently match nothing post-deploy - re-subscribe with streamId if you want filtering.

Subscribe

Register a webhook URL to receive notifications.

Headers

Body

Example

Response

Returns the subscription ID. Save this - you need it to unsubscribe.

Notes

  • Subscribing the same URL twice updates the filter config (idempotent).
  • Different URLs can have different filter configs, so you can set up multiple Zaps with different filters.

Unsubscribe

Remove a webhook subscription.

Headers

Body

Example

Response

Unsubscribing a non-existent subscription returns 200 (idempotent).

Webhook payload format

When a sync completes, each registered webhook URL receives a POST request with an array of leads. The payload format is identical to the List leads response. Payloads are chunked into batches of 50 leads per request. Each lead is a separate item, so if 120 leads are discovered, you receive 3 webhook calls (50 + 50 + 20). Delivery retries up to 3 times with exponential backoff if the target URL is unreachable.