Setup, environment variables, available actions, and CLI flags for all 24 integrations.
Two Ways to Use BounceZero
Batch Mode — List Cleaners
Run manually or schedule via cron
Each list cleaner connects directly to your ESP/CRM, pulls all contacts, sends them to BounceZero for bulk verification, then automatically removes or flags the bad ones.
--dry-run flag — preview before taking actionpip install httpx python-dotenv
BZ_API_KEY=bz_live_... python bz_mailchimp_cleaner.py --dry-run
Real-time Mode — Webhooks
Docker Compose, always-on
Each ESP sends a webhook event when a new subscriber is added. The webhook handler immediately verifies the email and removes or flags it before your first send.
docker compose up starts all 21 handlerscp .env.example .env && nano .env
docker compose up -d
Universal Flags (all list cleaners)
--dry-run
Preview mode — fetch and verify but take no action in the platform
--days N
Only process contacts added in the last N days (e.g. --days 30)
--min-score N
Score threshold below which a contact is considered invalid (default: 50)
--action X
What to do with invalid contacts (unsubscribe / delete / both / etc.)
--output FILE
Save results to a CSV or JSON file (e.g. --output results.csv)
--concurrency N
How many emails to verify in parallel (default: 10)
Email Service Providers
Fetches all list members, bulk-verifies them, then unsubscribes or deletes contacts with bad email addresses.
Environment Variables
MC_API_KEY
Mailchimp API key
MC_LIST_ID
Audience list ID (e.g. abc123)
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Set status to unsubscribed (default)
delete
Permanently remove member
both
Unsubscribe + delete
CLI Flags
--mc-key
--list-id
--action
--tag
--min-score
--days
--dry-run
--output
Pulls all profiles from a Klaviyo list, verifies addresses, then suppresses or deletes invalid profiles.
Environment Variables
KLAVIYO_API_KEY
Klaviyo private API key
KLAVIYO_LIST_ID
List ID (e.g. XXXXXX)
BZ_API_KEY
BounceZero API key
Available Actions
suppress
Add to global suppression list (default)
delete
Hard-delete the profile
both
Suppress + delete
CLI Flags
--klaviyo-key
--list-id
--action
--min-score
--days
--dry-run
--output
Fetches all contacts from ActiveCampaign, verifies them, then unsubscribes or deletes invalid contacts.
Environment Variables
AC_API_URL
Your account URL (e.g. https://youracccount.api-us1.com)
AC_API_KEY
ActiveCampaign API key
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Set contact status to unsubscribed (default)
delete
Permanently delete contact
both
Unsubscribe + delete
CLI Flags
--ac-url
--ac-key
--action
--min-score
--days
--dry-run
--output
Fetches all contacts from Brevo (formerly Sendinblue), verifies them, and blacklists or deletes bad addresses.
Environment Variables
BREVO_API_KEY
Brevo API key
BZ_API_KEY
BounceZero API key
Available Actions
blacklist
Add to Brevo blocklist (default)
delete
Permanently delete contact
both
Blacklist + delete
CLI Flags
--brevo-key
--action
--min-score
--days
--dry-run
--output
Iterates over all SendGrid contacts, verifies each email, and adds invalid ones to the global suppression (unsubscribe) list.
Environment Variables
SENDGRID_API_KEY
SendGrid API key (Full Access)
BZ_API_KEY
BounceZero API key
Available Actions
suppress
Add to global unsubscribe list (default)
delete
Delete from all lists + account
CLI Flags
--sg-key
--action
--min-score
--days
--dry-run
--output
Fetches contacts from Constant Contact, verifies them, and unsubscribes or removes bad email addresses.
Environment Variables
CC_ACCESS_TOKEN
OAuth access token
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Set status to OPTOUT (default)
delete
Hard-delete contact
CLI Flags
--cc-token
--action
--min-score
--days
--dry-run
--output
Fetches all subscribers from ConvertKit, verifies them, then unsubscribes or removes contacts with bad addresses.
Environment Variables
CK_API_KEY
ConvertKit API key
CK_API_SECRET
ConvertKit API secret
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Unsubscribe from all sequences/forms (default)
delete
Permanently delete subscriber
CLI Flags
--ck-key
--ck-secret
--action
--min-score
--days
--dry-run
--output
Fetches all contacts from GetResponse, verifies them, then marks invalid contacts as spam or deletes them.
Environment Variables
GR_API_KEY
GetResponse API key
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Mark as unsubscribed (default)
delete
Delete contact from account
CLI Flags
--gr-key
--action
--min-score
--days
--dry-run
--output
Fetches subscribers from an AWeber list, verifies them, and unsubscribes or deletes invalid contacts via OAuth.
Environment Variables
AWEBER_CLIENT_ID
OAuth client ID
AWEBER_CLIENT_SECRET
OAuth client secret
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Set subscriber status to unsubscribed (default)
delete
Remove from list entirely
CLI Flags
--client-id
--client-secret
--list-id
--action
--min-score
--days
--dry-run
--output
Pulls all subscribers from a Campaign Monitor list, verifies them, and unsubscribes or removes bad addresses.
Environment Variables
CM_API_KEY
Campaign Monitor API key
CM_LIST_ID
Subscriber list ID
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Unsubscribe (keeps record, default)
delete
Permanently delete subscriber
CLI Flags
--cm-key
--list-id
--action
--min-score
--days
--dry-run
--output
Fetches all contacts from Omnisend, verifies their email addresses, and unsubscribes or deletes invalid contacts.
Environment Variables
OMNISEND_API_KEY
Omnisend API key
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Set contact status to nonSubscribed (default)
delete
Hard-delete contact
CLI Flags
--omnisend-key
--action
--min-score
--days
--dry-run
--output
Fetches all subscribers from MailerLite, verifies them, and unsubscribes or deletes contacts with bad addresses.
Environment Variables
MAILERLITE_API_KEY
MailerLite API key (v3)
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Set status to unsubscribed (default)
delete
Permanently delete subscriber
CLI Flags
--ml-key
--group-id
--action
--min-score
--days
--dry-run
--output
Fetches all subscribers from a Drip account, verifies them, and unsubscribes or deletes invalid contacts.
Environment Variables
DRIP_API_KEY
Drip API key
DRIP_ACCOUNT_ID
Drip account ID (numeric)
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Set subscriber status to unsubscribed (default)
delete
Hard-delete subscriber
CLI Flags
--drip-key
--account-id
--action
--min-score
--days
--dry-run
--output
Fetches all subscribers from a Moosend mailing list, verifies them, and unsubscribes or removes invalid addresses.
Environment Variables
MOOSEND_API_KEY
Moosend API key
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Unsubscribe from mailing list (default)
delete
Remove subscriber permanently
CLI Flags
--moosend-key
--list-id
--action
--min-score
--days
--dry-run
--output
Exports all users from Iterable via NDJSON streaming, verifies them, then disables or deletes invalid users.
Environment Variables
IT_API_KEY
Iterable API key
BZ_API_KEY
BounceZero API key
Available Actions
disable
Disable user (opt out of all lists, default)
delete
Permanently delete user
CLI Flags
--it-key
--action
--min-score
--days
--dry-run
--output
CRM & Lifecycle
Fetches all contacts from HubSpot CRM, verifies their email, and unsubscribes or deletes invalid contacts via Private App token.
Environment Variables
HUBSPOT_TOKEN
HubSpot private app access token
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Set hs_email_optout = true (default)
delete
Permanently delete CRM contact
both
Unsubscribe + delete
CLI Flags
--hs-token
--action
--min-score
--days
--dry-run
--output
Fetches all contacts from Intercom (v2.10), verifies them, and archives or tags contacts with bad email addresses.
Environment Variables
IC_ACCESS_TOKEN
Intercom access token (Settings → Integrations → API keys)
BZ_API_KEY
BounceZero API key
Available Actions
archive
Soft-delete contact (reversible, default)
tag
Apply a tag to the contact
both
Tag + archive
CLI Flags
--ic-token
--action
--tag
--min-score
--days
--dry-run
--output
Fetches all people from Customer.io, verifies their email, and suppresses or deletes invalid contacts.
Environment Variables
CIO_APP_API_KEY
Customer.io App API key (Settings → API Credentials → App API Keys)
BZ_API_KEY
BounceZero API key
Available Actions
suppress
Mark as unsubscribed via suppress endpoint (default)
delete
Permanently delete person
both
Suppress + delete
CLI Flags
--cio-key
--action
--min-score
--days
--dry-run
--output
Fetches all contacts from Loops (loops.so), verifies them, and unsubscribes or deletes invalid contacts.
Environment Variables
LOOPS_API_KEY
Loops API key (Settings → API)
BZ_API_KEY
BounceZero API key
Available Actions
unsubscribe
Set mailingLists to unsubscribed (default)
delete
Permanently delete contact
both
Unsubscribe + delete
CLI Flags
--loops-key
--action
--min-score
--days
--dry-run
--output
Newsletter Platforms
Fetches all subscribers from a Beehiiv publication, verifies their email, then archives or deletes invalid subscribers.
Environment Variables
BH_API_KEY
Beehiiv API key (Settings → API)
BH_PUB_ID
Publication ID (e.g. pub_xxxxxxxx)
BZ_API_KEY
BounceZero API key
Available Actions
archive
Move to archived state (default)
delete
Permanently delete subscriber
both
Archive + delete
CLI Flags
--bh-key
--pub-id
--action
--min-score
--days
--dry-run
--output
Fetches all newsletter members from a self-hosted or Ghost.io site, verifies them, then deletes or labels invalid members. Uses JWT auth generated automatically from the Admin API key.
Environment Variables
GHOST_URL
Ghost Admin API base URL (e.g. https://yoursite.ghost.io)
GHOST_ADMIN_KEY
Admin API key in format key_id:secret
BZ_API_KEY
BounceZero API key
Available Actions
delete
Delete member (default — Ghost has no unsubscribe concept)
tag
Apply a label to mark member invalid
CLI Flags
--ghost-url
--ghost-key
--action
--min-score
--days
--dry-run
--output
Automation & No-Code
A full Zapier Platform CLI app with 4 triggers/actions. Push to your Zapier account and connect BounceZero to 6,000+ apps.
Auth Setup
Credentials are configured inside the platform after installation — no environment variables needed on your server.
Available Actions
Verify Email
Verify a single email address, returns score + status
Check Domain
Check MX records and domain health
Bulk Verify
Submit up to 500 emails at once
Find Verification
Look up a previous verification result by email
An n8n community node that adds BounceZero as a native node in your n8n workflows. Supports single verify, bulk verify, and domain checks.
Auth Setup
Credentials are configured inside the platform after installation — no environment variables needed on your server.
Available Actions
verifyEmail
Verify a single email address
bulkVerify
Verify a batch of emails from previous nodes
checkDomain
Check domain MX / health
A Make.com custom app (app.json) that adds BounceZero as a module in your Make scenarios. Import once, use in any scenario.
Auth Setup
Credentials are configured inside the platform after installation — no environment variables needed on your server.
Available Actions
Verify Email
Verify one email, returns full result
Bulk Verify
Send multiple emails, get results in one call
Check Domain
Domain MX + deliverability check
CMS & eCommerce
PHP plugin that validates emails in real time at WordPress user registration, WooCommerce checkout, and contact forms. Invalid emails are blocked before they enter your database.
Environment Variables
BZ_API_KEY
Set via WP Admin settings panel, or define in wp-config.php
Available Actions
block
Reject form submission with error message (default)
warn
Show warning but allow submission
A Remix-based Shopify app with a checkout UI extension that validates customer email addresses before the order completes.
Environment Variables
BZ_API_KEY
Set in Shopify app settings panel after installation
SHOPIFY_API_KEY
Generated during app setup
Available Actions
block
Show validation error on the checkout page (default)
PHP module that validates customer emails at account creation and checkout in real time. Drop into /modules/ and activate from the PrestaShop back office.
Environment Variables
BZ_API_KEY
Set in PrestaShop back office → Modules → BounceZero → Configure
Available Actions
block
Prevent order/registration with invalid email (default)
Real-time Webhooks — Docker Setup
1. Configure environment
cp .env.example .env
# Set your keys:
BZ_API_KEY=bz_live_...
MAILCHIMP_API_KEY=...
KLAVIYO_API_KEY=...
# ... one per platform
2. Start all handlers
docker compose up -d
# Starts 21 FastAPI services
# Each on its own port behind Nginx
docker compose logs -f mailchimp
3. Register webhook URL in your ESP
# Point each ESP to:
https://yourdomain.com/webhooks/mailchimp
https://yourdomain.com/webhooks/klaviyo
# ... etc. for each platform
4. What happens on each event
subscriber.created eventPlatforms with Webhook Handlers
Download the integration for your platform, add your API keys, and run with --dry-run first.