Back to Nodes

IMAP

Last updated Jun 7, 2025

Simplified IMAP node for n8n with AI-agent support. Clean and modular email and mailbox management for automation workflows.

23 Weekly Downloads
138 Monthly Downloads

Included Nodes

IMAP

Description

n8n IMAP Node

An n8n community node for IMAP email operations with advanced search and management functions.

Installation

npm install n8n-nodes-imap-ai

Alternatively via n8n Community Nodes GUI: n8n-nodes-imap-ai

Features

Email Operations

List Emails

  • Lists emails in a mailbox folder
  • Configurable limit
  • Sorted by UID (newest first)

Get Email

  • Retrieves a single email with full content
  • Supports text and HTML content
  • Parses email headers and metadata

Search Emails

  • Two modes: Simple Search and Advanced Search
  • Server-side IMAP SEARCH for performance
  • Combinable search criteria in Advanced mode

Move Email

  • Moves emails between mailbox folders
  • Uses IMAP MOVE command

Mark Email

  • Marks emails as read or unread
  • Changes IMAP flags accordingly

Delete Email

  • Marks emails for deletion
  • Uses IMAP STORE with \Deleted flag

Download Attachment

  • Downloads email attachments
  • Supports various attachment types

Mailbox Operations

List Mailboxes

  • Lists all available IMAP folders
  • Supports hierarchical folder structures

Create Mailbox

  • Creates new IMAP folders
  • Validates folder names

Draft Operations

Create Draft

  • Creates email drafts
  • Supports text and HTML format
  • Configurable recipients, subject and content

Email Search

Simple Search Mode

Provides predefined filters:

  • All Emails
  • Unread Emails
  • Read Emails
  • Today's Emails
  • This Week's Emails

Optional with text search that simultaneously searches Subject, From and Body.

Advanced Search Mode

Combinable criteria:

Content Filters:

  • From (Sender): Email address or name
  • To (Recipient): Target email address
  • Subject Contains: Text in subject
  • Body Contains: Text in email content

Status Filters:

  • Read Status: Any/Unread Only/Read Only
  • Flagged: Include flagged emails
  • Has Attachments: Filter by attachment presence

Date Filters:

  • Quick Date: Today/Yesterday/This Week/Last Week/This Month/Last Month
  • Custom Date Range: From/To dates
  • Date combinations for precise time windows

Size Filters:

  • Size threshold with larger/smaller options
  • Configurable in KB for bandwidth management

Configuration

IMAP Credentials

Required fields:

  • Host: IMAP server address
  • Port: Server port (usually 993 for SSL)
  • User: Email address
  • Password: Email password or app password
  • Secure: Enable SSL/TLS (recommended)

Common IMAP Settings

Gmail:

  • Host: imap.gmail.com
  • Port: 993
  • Secure: Yes
  • Note: Requires App Password with 2FA enabled

Outlook/Hotmail:

  • Host: outlook.office365.com
  • Port: 993
  • Secure: Yes

Usage Examples

Basic Email Listing

{
  "operation": "listEmails",
  "mailbox": "INBOX",
  "limit": 20
}

Simple Email Search

// Simple Mode: Quick filter with text search
{
  "operation": "searchEmails",
  "searchMode": "simple", 
  "quickFilter": "today",
  "simpleSearchText": "invoice"
}

Advanced Email Search

// Advanced Mode: Multiple combined criteria
{
  "operation": "searchEmails",
  "searchMode": "advanced",
  "advancedCriteria": {
    "from": "billing@company.com",
    "subject": "payment", 
    "readStatus": "unread",
    "quickDate": "thisWeek",
    "hasAttachments": "yes"
  }
}

Email Management

// Get email
{
  "operation": "getEmail",
  "mailbox": "INBOX",
  "emailUid": "12345"
}

// Move email  
{
  "operation": "moveEmail",
  "mailbox": "INBOX",
  "emailUid": "12345", 
  "targetMailbox": "Archive"
}

Compatibility

Tested IMAP Servers:

  • Gmail (imap.gmail.com)
  • Outlook/Exchange
  • Standard IMAP-compliant servers

Requirements:

  • n8n Version >= 0.190.0
  • Node.js >= 16
  • IMAP server with SSL/TLS support

Known Limitations

  • OAuth2 authentication not yet implemented
  • Attachment search uses Content-Type workaround (IMAP standard limitation)
  • Large email attachments can be memory-intensive

Development

Adding New Operations

  1. Create operation class in operations/
  2. Implement IImapOperation interface
  3. Register in operationRegistry.ts
  4. Define UI parameters in ImapNodeProperties.ts

Build & Test

npm run build
npm test

Changelog

v2.3.9

  • Fixed missing draftFolder parameter for Create Draft operation
  • Added resourceLocator for draft folder selection

v2.3.0

  • New Multi-Criteria Search UI
  • Simple vs Advanced Search modes
  • Extended Date/Size/Attachment filters

v2.2.4

  • Promise.race() timeout fix for IMAP logout
  • Improved connection stability

v2.2.0

  • Modular architecture refactoring
  • Operations Registry pattern
  • Improved error handling

Support

License

MIT License