How It Works

Find out how our solution helps you turn browsers into buyers.


From Shopify to Klaviyo, explore over 80 integrations.


Access guides, troubleshooting, and expert assistance.

About Us

Hear our origin story and meet our team.


Become an official Partner.

Affiliate Program

Learn more about our Affiliate Program.


Explore career opportunities with


See upcoming events we’re hosting or attending.


Got a referral? Let us know here.

Product Support

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

Integrate using Generic Webhooks

Generic webhooks allow you to send contact data to a URL of your choosing in JSON format via a POST.

To view/test receiving the data we send, we recommend you test your webhook using a site like

Note: Webhooks does not offer automatic suppression. You will need to set up integration via API or manually upload your suppression file. (See Suppress Contacts below.)

1. To set up an integration using generic Webhooks, head to Integrations and click the Webhook option. Click on Integrations from the left navigation panel in Then, click Available Integrations at the top and choose the Webhook icon.

2. Type your test URL into Webhook URL. You can also enter custom JSON data in the box below it. This will be merged with the contact data we pass through to the webhook endpoint. If you get an error with credentials here, that error is coming from your URL's server.

3. Once you enter your URL and custom JSON data and connect, you will see a success confirmation - when this happens, we automatically send a test event with an email address:

4. Click Yes to upload collected contacts. Then, click Next.

5. Enable the integration, and click Finish.

6. You will be taken to the Integration Settings. You can view your API Details, Disable/Enable or Remove the integration, and turn Contact Sync on or off.

The data that will push to your webhook URL includes:

:first_name=>"First name",
:last_name=>"Last Name",
:clicked_at=>Thu, 26 Sep 2019 19:47:42 UTC +00:00,

Note: If you are on an email-only plan, you will not receive first name, last name, or address data.

Send a test event

Automatic Test Event: When you Connect the webhook, we will send a test event with an email address. We do not include all fields in the test; the test hook is a generic event to validate header/body type/etc.

Additional Test Events: To send additional test events, simply Disable/Enable your webhook integration, or open the integration settings and save/exit. Any edit action in your webhook will trigger an additional test event.

Suppress contacts

To prevent collecting contacts you already have, you will need to setup automatic suppression via API or manually suppress them by uploading a CSV file.

Suppression via API

You can set up daily suppression via our API. Find more information on that here.

Manual suppression

Suppression lists loaded as a CSV file are converted into encoded MD5s for security reasons. We do not use, share, or resell this data for any purpose other than to prevent users from collecting and paying for contacts they already have.

To upload a Suppression List, click on Suppression Lists in the left-hand navigation.

Here are the file requirements for upload:

  • Your file should only contain ONE column, labeled “email”.
  • You’ll also need to save it as an Excel .CSV file.
  • Maximum file size is 100MB. If your file is larger than this, split it up into several smaller files.

Once the file has uploaded, you will see a green box in the top-right corner that says your file has been uploaded and is in the queue to be processed. Once that’s complete, you’ll see the stored file listed under the corresponding date:


After you upload the initial file, you will need to continue uploading a CSV file to suppress contacts. How often you need to upload a CSV suppression list (ex. daily, weekly, bi-weekly, monthly) will depend on how many contacts you collect in your ESP.