n8n-nodes-resend
v1.2.3
Published
Resend n8n node
Maintainers
Readme
📧 Resend Nodes for n8n
Powerful email automation for n8n using the Resend API 🚀
Transform your email workflows with comprehensive Resend integration for n8n. Send emails, manage contacts, handle domains, and automate email campaigns with ease.
🎯 Features
- 📤 Email Operations - Send single emails, batch emails, schedule delivery
- 📎 File Attachments - Support for binary data and remote URL attachments
- 👥 Contact Management - Create, update, delete contacts and audiences
- 🌐 Domain Management - Verify domains, configure DNS settings
- 🔑 API Key Management - Create and manage API keys programmatically
- 📢 Broadcasts - Send newsletter campaigns to audiences
- 🎣 Webhook Support - Receive real-time email events
🚀 Installation
Method 1: Via n8n Community Nodes (Recommended)
Open n8n Settings
- Navigate to Settings → Community Nodes
Install the Package
- Click Install a community node
- Enter:
n8n-nodes-resend - Click Install
Restart n8n
- Restart your n8n instance to load the new nodes
Verify Installation
- The Resend and Resend Trigger nodes should appear in your node palette
Method 2: Manual Installation
# Navigate to your n8n installation directory
cd ~/.n8n
# Install the package
npm install n8n-nodes-resend
# Restart n8n
# If using PM2: pm2 restart n8n
# If using Docker: docker restart n8n
# If running directly: restart your n8n processMethod 3: Docker Installation
Add this to your docker-compose.yml:
version: '3.8'
services:
n8n:
image: n8nio/n8n
environment:
- N8N_NODES_INCLUDE=n8n-nodes-resend
# ... other configurationOr use environment variable:
docker run -it --rm \
-p 5678:5678 \
-e N8N_NODES_INCLUDE=n8n-nodes-resend \
n8nio/n8n🔐 Credentials Setup
[!IMPORTANT]
You need a Resend account and API key to use these nodes.
Get Your API Key
- Visit Resend Dashboard
- Create a new API key with appropriate permissions
- Copy the API key (starts with
re_)
Add Credentials in n8n
- Go to Credentials → Add credential
- Search for "Resend API"
- Paste your API key
- Test the connection
- Save the credential
[!TIP] Use different API keys for development and production environments
📚 Available Nodes
🎬 Resend Action Node
The main node for performing Resend operations.
Send Email
Send individual emails with rich content and attachments.
Key Features:
- ✅ HTML and plain text content
- ✅ File attachments (binary data or URLs)
- ✅ CC/BCC recipients
- ✅ Custom reply-to addresses
- ✅ Email scheduling
Example Use Cases:
- Welcome emails for new users
- Invoice delivery with PDF attachments
- Password reset notifications
- Marketing campaigns
Send Batch Emails
Send up to 100 emails in a single API call for better performance.
Key Features:
- ✅ Bulk email sending
- ✅ Individual customization per email
- ✅ Better rate limiting
- ⚠️ No attachment support (API limitation)
Email Management
- Retrieve Email - Get email details and status
- Cancel Email - Cancel scheduled emails
- Update Email - Modify scheduled emails
Contacts
- Create Contact - Add new contacts to audiences
- Get Contact - Retrieve contact information
- Update Contact - Modify contact details
- Delete Contact - Remove contacts from audiences
- List Contacts - Get all contacts in an audience
Audiences
- Create Audience - Set up new email lists
- Get Audience - Retrieve audience details
- List Audiences - Get all your audiences
- Delete Audience - Remove email lists
Domain Management
- Add Domain - Register new sending domains
- Verify Domain - Check domain verification status
- Get Domain - Retrieve domain configuration
- Update Domain - Modify domain settings
- Delete Domain - Remove domains
API Keys
- Create API Key - Generate new API keys
- List API Keys - View existing keys
- Delete API Key - Revoke access keys
- Create Broadcast - Set up email campaigns
- Get Broadcast - Retrieve campaign details
- Send Broadcast - Launch email campaigns
- Update Broadcast - Modify campaign settings
🎯 Resend Trigger Node
Real-time webhook processing for email events.
email.sent- Email successfully sentemail.delivered- Email delivered to recipientemail.opened- Recipient opened the emailemail.clicked- Link clicked in emailemail.bounced- Email bouncedemail.complained- Spam complaint receivedcontact.created- New contact addedcontact.updated- Contact information changedcontact.deleted- Contact removed
💡 Usage Examples
# Example workflow: Send invoice email with PDF attachment
Workflow:
1. HTTP Request Node (trigger)
2. Code Node (generate invoice data)
3. HTML/CSS to PDF Node (create PDF)
4. Resend Node (send email with attachment)
Resend Node Configuration:
- Resource: Email
- Operation: Send
- From: [email protected]
- To: {{ $json.customerEmail }}
- Subject: Your Invoice #{{ $json.invoiceNumber }}
- Attachments:
- Type: Binary Data
- Binary Property: data
- Filename: invoice-{{ $json.invoiceNumber }}.pdf# Example: Weekly newsletter automation
Workflow:
1. Cron Trigger (weekly)
2. Database Node (fetch newsletter content)
3. Resend Node (create broadcast)
4. Resend Node (send to audience)
Benefits:
- Automated scheduling
- Audience segmentation
- Performance tracking# Example: Handle bounced emails
Trigger: Resend Trigger Node
- Event: email.bounced
Actions:
1. Database Node (log bounce)
2. Resend Node (remove from audience)
3. Slack Node (notify team)⚠️ Important Notes
[!WARNING]
Attachment Limitations:
- Maximum email size: 40MB (including attachments)
- Attachments not supported with scheduled emails or batch operations
- Some file types may be blocked by email providers
[!NOTE]
Rate Limits: Respect Resend's API rate limits. Use batch emails for better efficiency.
Best Practices
- ✅ Always verify your sending domains
- ✅ Use appropriate API key permissions
- ✅ Handle webhook events for better deliverability
- ✅ Implement proper error handling
- ✅ Monitor email metrics and bounce rates
Rate Limits
- Single emails: Standard Resend rate limits apply
- Batch emails: More efficient for bulk sending
- API calls: Respect Resend's rate limiting
🔧 Development
# Clone the repository
git clone https://github.com/your-repo/n8n-nodes-resend.git
# Install dependencies
npm install
# Build the project
npm run build
# Run linting
npm run lint
# Run tests
npm testProject Structure
├── credentials/
│ └── ResendApi.credentials.ts
├── nodes/
│ └── Resend/
│ ├── Resend.node.ts
│ ├── ResendTrigger.node.ts
│ └── icons/
└── package.json🤝 Support
- Documentation: Resend API Docs
- Issues: GitHub Issues
- n8n Community: n8n Community Forum
- Discord: n8n Discord Server
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Built for the amazing n8n workflow automation platform
- Powered by Resend email infrastructure
- Inspired by the n8n community
Made with ❤️ for the n8n community
