Sync Zoom Webinar Attendees to Mailchimp with Double Opt-in and Email Filtering
Description
Use this workflow to automatically sync Zoom webinar registrants into Mailchimp, filter out internal contacts, and send double opt-in confirmation emails. Ideal for keeping your newsletter audiences clean, accurate, and enriched with new leads—without manual export/import steps.
About Workflow
This workflow connects Zoom Webinars with Mailchimp via API to automate the onboarding of webinar attendees into your marketing audience.
It retrieves registrant data from Zoom (based on Webinar ID and Occurrence ID), extracts attendee emails, filters out internal domains, checks whether the contact already exists in Mailchimp, and then creates or updates each record.
New contacts receive a double opt-in confirmation email, and all newly added leads are tagged for segmentation inside Mailchimp.
Use Case
Perfect for marketing teams running webinars who need to transfer participants into Mailchimp quickly and reliably.
This automation streamlines attendee follow-up, ensures compliance with double opt-in requirements.
How it works
Manual Trigger – Execute workflow**
The workflow starts manually. You can optionally replace the manual trigger with a Schedule Trigger if you want to automate recurring webinars.
Manual Input – Set Webinar ID and Occurrence ID**
The workflow includes a Set node that requires you to enter:
webinar_id
occurence_id
These define which Zoom webinar instance will be synced.
Zoom API – Get Webinar Attendees**
Retrieves registrants for the selected webinar occurrence using the Zoom API.
Code Node – Extract Registrant Emails**
Processes the Zoom API response and extracts the email addresses of all registrants.
Filter Node – Filter Out Internal Emails**
Removes internal/company email addresses by checking that they do not contain your domain.
(This is fully configurable.)
Mailchimp – Update a Member**
Attempts to update the contact in Mailchimp based on their email address.
This determines whether the contact already exists.
IF Node – If ID Doesn’t Exist**
Checks if Mailchimp returned an id during the update attempt.
If Mailchimp did not return an ID, the contact is treated as new and continues through the creation + confirmation path.
Code Node – MD5 Hash Email**
Hashes the email using MD5. Mailchimp uses this hash as the unique identifier for list members.
Mailchimp – Send Double Opt-In Email**
Creates the contact with “pending” status and sends a double opt-in email.
Mailchimp – Add Leads Tag**
Tags the contact with "Leads" immediately as part of the creation process.
How to Use
Import the workflow into your n8n instance
Configure credentials:
Zoom OAuth2 credential
Mailchimp HTTP Basic Auth credential
Enter webinar details: Set webinar_id and occurence_id in the Type in IDs node
Adjust internal email filtering: Update the domain in the “Filter Out Internal Emails” node (e.g., change @yourcompanydomain.com)
Configure Mailchimp nodes:
Replace LIST_ID_HERE with your Mailchimp Audience/List ID
Adjust tags if needed
Test the workflow:
Run it with a real webinar and confirm behavior:
internal emails are excluded
existing contacts are updated
new contacts receive the double opt-in email
tags are applied correctly
Example Use Cases
Automated lead generation from webinar attendance
Keeping marketing lists clean and external-only
Recurring webinars with scheduled syncing
Easy double opt-in compliance with no manual steps
Requirements
Zoom account** with API access
Mailchimp account** with API access
n8n instance** with correctly configured credentials
Optional Enhancements
Replace the manual trigger with a Webhook for recurring syncs
Auto-detect the latest webinar ID using a Zoom API call
Add additional filters (e.g., job title, country, language)
Add Slack/email notifications summarizing new leads
Add error-handling paths for retrying failed API calls
Related Templates
Generate Product Ad Copy & CTAs with GPT-4 for Slack and Airtable
⚡ AI Copywriter Pro: Instant Ad Copy & CTA Generator Transform product details into compelling marketing copy in second...
Instagram Full Profile Scraper with Apify and Google Sheets
📸 Instagram Full Profile Scraper with Apify and Google Sheets This n8n workflow automates the process of scraping ful...
Compare Lists and Identify Common Items & Differences Using Custom Keys
This workflow compares two lists of objects (List A and List B) using a user-specified key (e.g. email, id, domain) and ...
🔒 Please log in to import templates to n8n and favorite templates
Workflow Visualization
Loading...
Preparing workflow renderer
Comments (0)
Login to post comments