Email Verification in Zapier
You can add real-time email verification to any Zapier workflow without writing code. This tutorial uses Webhooks by Zapier to call the Mailbeam API and a Filter step to stop low-quality addresses before they reach your CRM, mailing list, or spreadsheet.
What you'll build
- A Zap that takes an email from any trigger (a form, a new lead, a signup)
- A webhook step that verifies the address with Mailbeam
- A filter that only lets valid, deliverable addresses continue
Prerequisites
- A Zapier account (Webhooks by Zapier requires a paid plan)
- A Mailbeam API key (sign up free)
- Any trigger app that provides an email address field
Step 1 — Start with an email-producing trigger
Create a new Zap and pick your trigger — for example Typeform → New Entry, Webflow → New Form Submission, or Facebook Lead Ads → New Lead. Complete the trigger setup and confirm the sample data includes an email field.
Step 2 — Add a "Webhooks by Zapier" action
Add an action step and choose Webhooks by Zapier → POST. Configure it like this:
| Field | Value |
|---|---|
| URL | https://api.mailbeam.dev/v1/verify |
| Payload Type | json |
| Data | email → map the email field from your trigger |
| Headers | Authorization → Bearer mb_live_xxxxxxxxxxxx |
| Headers | Content-Type → application/json |
In the Data section, add a key called email and map it to the trigger's email field using the field picker (the + icon).
Step 3 — Test the webhook
Click Test action. Zapier sends the request to Mailbeam and shows the JSON response, which looks like:
{
"valid": true,
"score": 94,
"disposable": false,
"catchAll": false,
"mx": true,
"reason": null,
"latency_ms": 82
}These fields — valid, score, disposable, and reason — become available to later steps as outputs of the webhook.
Step 4 — Add a Filter step
Add a Filter by Zapier step so the Zap only continues for good addresses. Set the conditions:
valid(from the webhook) is true- AND
score(number) greater than or equal to60 - AND
disposableis false
If any condition fails, the Zap stops here and the rest of your workflow never runs for that record.
Step 5 — Continue your workflow
After the filter, add whatever action you want to run only for verified emails — for example Add Subscriber in Mailchimp, Create Contact in HubSpot, or Add Row in Google Sheets. Because the filter blocks bad addresses, only deliverable emails reach these steps.
A complete Zap looks like:
1. Trigger — New Typeform entry
2. Webhooks — POST email to Mailbeam /v1/verify
3. Filter — valid = true AND score ≥ 60 AND disposable = false
4. Action — Create contact in your CRMStep 6 — Test end to end
Use Zapier's Test on each step with a real sample, then run the whole Zap with a known-bad address (try test@mailinator.com) and confirm the Filter stops it. Submit a valid address and confirm it flows through to your final action.
Best practices
| Practice | Why |
|---|---|
Filter on valid AND score | Catches both invalid and low-quality addresses |
Exclude disposable = true | Keeps throwaway signups out of your list |
| Keep the key in the header only | Don't expose it in other steps or logs |
| Add a Formatter to lowercase first | Consistent results and fewer duplicates |
| Test with a disposable address | Confirms the filter actually blocks bad data |
Production checklist
- Filter conditions match your quality bar
- API key restricted to trusted Zap editors
- Email lowercased before sending (optional Formatter step)
- Final action only runs after the Filter
- Zap turned on and monitored in Zap History
Next steps
- API Reference — verify
- Bulk email verification for cleaning existing lists
- Authentication