Opening Problem Statement
Meet Sarah, a marketing manager at a mid-sized corporation who spends countless hours manually verifying bulk email lists before launching campaigns. She often juggles copying emails from Google Sheets, checking each address through various tools, and waiting for results—losing days on a process prone to mistakes and delays. This manual effort leads to frequent bounce-backs, damaging her sender reputation and increasing marketing costs.
Sarah’s challenge highlights the typical pain points of bulk email verification: wasted time, high error rates, and delayed outreach. Fortunately, with n8n’s automation capabilities combined with the Icypeas email verification API, bulk email validation can be streamlined securely and efficiently, freeing up Sarah to focus on crafting better campaigns instead of chasing bad data.
What This Automation Does
This specific n8n workflow automates the entire bulk email verification process using Google Sheets and the Icypeas API. When triggered, it:
- Reads a list of email addresses from a designated Google Sheet (first column labeled email).
- Authenticates securely with the Icypeas API using API key, secret, and user ID.
- Formats the email list into the required payload for the Icypeas bulk search endpoint.
- Sends a POST request to Icypeas to start the bulk email verification job.
- Allows you to receive verification results via the Icypeas web dashboard and email notifications.
- Eliminates manual data entry and API setup, saving hours per batch verification.
This automation saves marketers, sales teams, and data managers significant time—turning a process that takes hours or days into a few clicks. It also reduces human error and helps maintain a clean email list, protecting reputation and improving deliverability rates.
Prerequisites ⚙️
- n8n account: A workspace to build and run your workflow.
- Google Sheets account 📊: Where your email list is stored. Ensure emails are in the first column named
email. - Icypeas API credentials 🔐: Get your API key, API secret, and user ID from your profile at Icypeas Dashboard.
- n8n Self-hosting Option (optional) 🔌: If you run n8n self-hosted, make sure to enable the crypto module as explained in the Code node instructions.
Step-by-Step Guide to Setup Your Bulk Email Verification Workflow
Step 1: Prepare Your Google Sheet with Email List
Login to your Google Sheets account and create a spreadsheet where the first column header is exactly email.
Enter the email addresses you need to verify in this column. Name the sheet something descriptive for easy identification.
Common Mistake: Make sure the header is spelled exactly “email” and there are no extra spaces or capital letters, or the workflow won’t read the emails correctly.
Step 2: Connect the Google Sheets Node
Open n8n and add the node named Reads lastname,firstname and company from your sheet. This is a Google Sheets node configured to read your sheet.
Click the node > Parameters panel > Set your Document ID (from your sheet URL) and the Sheet Name.
You should see the node successfully retrieving the correct rows from your sheet with emails listed.
Common Mistake: Not setting Google Sheets credentials can cause authorization errors.
Step 3: Add the Manual Trigger Node
Add the When clicking “Execute Workflow” node, a manual trigger to start the workflow when you press the “Execute” button in n8n.
This lets you run the workflow manually for testing or on-demand processing.
Step 4: Configure the Code Node for Icypeas Authentication
Locate the Authenticates to your Icypeas account node, a Code node that generates the API signature for authenticated requests.
Replace the placeholders in the code with your actual API credentials:
const API_KEY = "PUT_API_KEY_HERE";
const API_SECRET = "PUT_API_SECRET_HERE";
const USER_ID = "PUT_USER_ID_HERE";
This code creates a SHA1 HMAC signature based on the request details as required by the Icypeas API for security.
For self-hosted n8n users: Follow the steps inside the sticky note in the workflow to enable the crypto module. This is mandatory for the node to run without errors.
Common Mistake: Editing lines outside these variables can break the signature generation.
Step 5: Set Up HTTP Request Node to Run Bulk Search
Find the Run bulk search (email-verif) HTTP Request node.
Configure the fields as follows:
- Method: POST
- URL: Use the {{ $json.api.url }} expression output from the Code node.
- Body: Provide task as
email-verification, user ID, and the emails array formatted in the previous node. - Authentication: Set up header authentication credentials following the instructions in the sticky note. Enter a new credential named “Authorization” and use the expression
{{ $json.api.key + ':' + $json.api.signature }}as the value.
This sends your bulk email list to Icypeas for verification.
Common Mistake: Missing header credentials or incorrect expression syntax causes 401 unauthorized errors.
Step 6: Link Nodes to Form Workflow
Connect the Google Sheets node output to the Code node input, and the Code node output to the HTTP Request node input. Connect your Manual Trigger node to the Google Sheets node to start the process.
After wiring, run the workflow manually to test.
Customizations ✏️
- Change Sheet or column: In the Google Sheets node, you can change the
Document IDandSheet Nameto read from a different spreadsheet or tab. - Filter valid emails before sending: Add a Function node before authentication to filter out invalid email formats using JavaScript regex.
- Customize HTTP headers: Modify the HTTP Request node header parameters to include additional security tokens if recommended by Icypeas.
- Auto-run schedule: Replace the manual trigger with a Cron node to run bulk checks at regular intervals automatically.
- Output results logging: Add nodes to write back results to another Google Sheet or send Slack notifications when verification completes.
Troubleshooting 🔧
Problem: “401 Unauthorized” error from HTTP Request node.
Cause: Incorrect API key or signature generated in Code node.
Solution: Double-check the API_KEY, API_SECRET, and USER_ID values in the Code node. Ensure no spaces or quotes are missing and regenerate the workflow.
Problem: Google Sheets node does not retrieve data.
Cause: Missing Google Sheets credentials or incorrect Document ID/Sheet Name.
Solution: Re-authenticate Google Sheets in n8n and verify the correct Spreadsheet ID and sheet tab name are used.
Problem: Crypto module not found error (self-hosted users).
Cause: Crypto package not enabled in self-hosted n8n.
Solution: Follow the sticky note instructions to enable the crypto module in your n8n instance settings and restart.
Pre-Production Checklist ✅
- Verify your Google Sheet contains an
emailcolumn with valid email addresses. - Ensure correct API_KEY, API_SECRET, USER_ID are set in the Code node.
- Confirm Google Sheets and HTTP Request nodes authenticate successfully without errors during manual test runs.
- Trigger the workflow manually to verify emails are submitted to Icypeas.
- Check for Email notification from Icypeas for results after some time.
- Back up your Google Sheet data before running batch tests to prevent data loss.
Deployment Guide
Activate this workflow by turning it on in your n8n dashboard.
Run the workflow manually via the Manual Trigger node whenever you want to process a new batch of emails.
For automated workflows, replace the manual trigger with a Cron node scheduled at your preferred intervals.
Monitor output logs inside n8n for errors and check your Icypeas dashboard for verification result statuses.
FAQs
Q1: Can I use another email verification provider instead of Icypeas?
A1: This workflow is tailored for Icypeas API due to their signature method and data structure, but you could adapt the HTTP Request and authentication logic to other providers with some modifications.
Q2: Does this workflow consume my Icypeas API credits?
A2: Yes, each bulk search post counts against your API usage according to Icypeas subscription terms.
Q3: Is my email data secure?
A3: The workflow uses encrypted HMAC signatures for authentication and data is sent via HTTPS. Keep your API secrets private in n8n.
Q4: Can this handle very large email lists?
A4: Bulk searches may depend on your Icypeas account limits. Consider splitting very large lists into smaller batches.
Conclusion
By setting up this n8n workflow, you have automated the tedious, error-prone task of bulk email verification using Google Sheets and the Icypeas API.
Sarah, and others like her, will save hours typically spent in manual data handling, reduce bounce rates, and improve campaign effectiveness with clean, verified email lists.
Next steps to expand this automation include writing verification results back to Google Sheets, sending real-time alerts to Slack, or integrating follow-up email campaigns after verification.
This workflow concretely demonstrates how combining n8n’s powerful workflow automation with specialized APIs like Icypeas can streamline data-intensive marketing operations while maintaining security and scalability.