Send bulk email campaigns with Gmail/SMTP and Postgres reputation-safe timing
Ready for 3.0What this workflow does
This workflow has 28 nodes and runs when an HTTP POST request hits its webhook URL (plus 3 other triggers). Along the way it connects Postgres and Gmail.
How it runs
Trigger: When an HTTP POST request hits its webhook URL (plus 3 other triggers).
- Workflow Configuration (Edit Fields (Set)): sets 5 fields: maxEmailsPerInboxPerHour, maxEmailsPerInboxPerDay, minDelayBetweenEmailsMinutes…
- Get Pending Campaigns (Postgres): run a query
- Parse Event Data (Code): runs custom JavaScript code
- Get Performance Data (Postgres): run a query
- Extract CSV Leads (Extract from File): extracts data from a file
- Split Campaigns (Split Out): splits a list into separate items
- Log Email Event (Postgres): uses Postgres
- Calculate Best Send Times (Code): runs custom JavaScript code
- Split Leads (Split Out): splits a list into separate items
- Get Campaign Leads (Postgres): run a query
…plus 14 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (11)
- Webhook
n8n-nodes-base.webhook - Edit Fields (Set)
n8n-nodes-base.set - Extract from File
n8n-nodes-base.extractFromFile - Split Out
n8n-nodes-base.splitOut - Code
n8n-nodes-base.code - If
n8n-nodes-base.if - HTTP Request
n8n-nodes-base.httpRequest - Postgres
n8n-nodes-base.postgres - Schedule Trigger
n8n-nodes-base.scheduleTrigger - Wait
n8n-nodes-base.wait - Gmail
n8n-nodes-base.gmail
From the author
Overview This workflow automates bulk email campaigns with built-in validation, deliverability protection, and smart send-time optimization. It processes CSV leads, validates emails, enriches data, and schedules campaigns intelligently. Emails are sent using…