Skip to main content

Popular n8n Nodes

These are the most frequently used nodes in the n8n ecosystem, chosen for their versatility, reliability, and broad application across different automation scenarios.

Essential Nodes

HTTP Request

The Swiss Army knife of n8n - connect to any REST API.

HTTP Request Node

Use Cases:
  • Custom API integrations
  • Internal service connections
  • RESTful endpoint calls
  • Webhook consumption
Key Features:
  • All HTTP methods (GET, POST, PUT, DELETE, PATCH)
  • Multiple authentication types
  • Custom headers and query parameters
  • Binary data support
  • Automatic JSON parsing
Configuration Example:
{
  "method": "POST",
  "url": "https://api.example.com/users",
  "authentication": "headerAuth",
  "options": {
    "response": {
      "response": {
        "fullResponse": false
      }
    }
  }
}
Best Practice: Prefer dedicated integration nodes over HTTP Request when available. Dedicated nodes provide better authentication, pre-configured parameters, and improved error handling.

Webhook

Start workflows from external HTTP requests - the gateway to event-driven automation.

Webhook Trigger

Use Cases:
  • Receive webhooks from external services
  • Create custom API endpoints
  • Form submission handling
  • IoT device integration
  • Third-party service notifications
Key Features:
  • Test and production URLs
  • Multiple HTTP methods support
  • Built-in authentication options
  • Custom response configuration
  • CORS support
  • IP allowlist filtering
Example Webhook URL:
Production: https://your-n8n.com/webhook/user-signup
Test: https://your-n8n.com/webhook-test/user-signup

Code

Run custom JavaScript or Python for complex transformations.

Code Node

Use Cases:
  • Complex data transformations
  • Multi-step algorithms
  • Custom business logic
  • Date/time calculations
  • String manipulation
JavaScript Example:
// Process multiple items
const processedItems = $input.all().map(item => ({
  json: {
    fullName: `${item.json.firstName} ${item.json.lastName}`,
    email: item.json.email.toLowerCase(),
    timestamp: new Date().toISOString()
  }
}));

return processedItems;
Python Example:
import pandas as pd
from datetime import datetime

# Process data with pandas
items = [item['json'] for item in _input.all()]
df = pd.DataFrame(items)

# Transform data
df['processed_date'] = datetime.now()

return df.to_dict('records')
Use Code node as a last resort. Native nodes like Set, Filter, and Aggregate are faster and easier to maintain. Code nodes run in a sandboxed environment with performance overhead.

Communication Platforms

Slack

The most popular team communication integration.
Current Version: 2.4 (versioned node)Supported Operations:
  • Message - Send, update, delete messages
  • Channel - Create, archive, list channels
  • User - Get user info, list users
  • File - Upload, list files
  • Reaction - Add, remove reactions
  • Star - Add, remove stars
Authentication: OAuth2 or Access TokenCommon Use Cases:
  • Team notifications
  • Alert systems
  • Approval workflows
  • Bot interactions
  • Status updates

Microsoft Teams

Enterprise team collaboration platform.

Microsoft Teams

Operations:
  • Send messages to channels
  • Create/manage channels
  • Send chat messages
  • Manage teams
Authentication: Microsoft OAuth2Example - Post to Channel:
{
  "resource": "message",
  "operation": "create",
  "teamId": "{{ $json.teamId }}",
  "channelId": "{{ $json.channelId }}",
  "messageType": "text",
  "message": "Deployment completed successfully!"
}

Discord

Gaming and community platform integration.

Discord

Operations:
  • Send messages
  • Manage channels
  • Handle webhooks
  • Manage roles
  • Bot operations
Authentication: Bot Token or WebhookWebhook Example:
{
  "content": "Server status: Online ✅",
  "username": "Status Bot",
  "embeds": [
    {
      "title": "System Health",
      "description": "All services operational",
      "color": 5814783
    }
  ]
}

Google Workspace

Google Sheets

Spreadsheet automation powerhouse.
Document Operations:
  • Read/write rows
  • Append data
  • Update rows
  • Delete rows
  • Clear sheet
  • Look up values
Advanced Features:
  • Resource locators (by URL, ID, or list)
  • Column mapping
  • Formula support
  • Batch operations
  • Upsert functionality
Authentication: Google OAuth2

Gmail

Email automation and management.

Gmail

Operations:
  • Send emails
  • Search messages
  • Add labels
  • Mark as read/unread
  • Download attachments
  • Delete messages
Gmail Trigger:
  • Polling-based trigger
  • Monitor inbox or labels
  • Filter by sender, subject
  • Process attachments
Send Email Example:
{
  "operation": "send",
  "to": "user@example.com",
  "subject": "Welcome to our service!",
  "message": "<p>Thank you for signing up!</p>",
  "options": {
    "attachments": "data",
    "ccList": "manager@example.com"
  }
}

Google Calendar

Event scheduling and calendar management.

Google Calendar

Operations:
  • Create events
  • Update events
  • Delete events
  • Get event details
  • List events
Create Event Example:
{
  "operation": "create",
  "calendarId": "primary",
  "start": "2024-03-15T10:00:00",
  "end": "2024-03-15T11:00:00",
  "summary": "Team Standup",
  "description": "Daily team sync",
  "attendees": [
    "team@example.com"
  ]
}

Google Drive

File storage and sharing automation.

Google Drive

Operations:
  • Upload files
  • Download files
  • Create folders
  • Move/copy files
  • Share files
  • List files/folders
Google Drive Trigger:
  • Monitor for new files
  • Watch specific folders
  • Filter by file type
Upload File Example:
{
  "operation": "upload",
  "name": "{{ $json.filename }}",
  "binaryProperty": "data",
  "options": {
    "parents": ["folder-id-123"]
  }
}

Data Processing

Set (Edit Fields)

Transform and manipulate data without code.

Set Node

Operations:
  • Add/remove fields
  • Rename fields
  • Set values
  • Use expressions
  • Include/exclude fields
Example:
{
  "mode": "manual",
  "fields": {
    "values": [
      {
        "name": "fullName",
        "type": "stringValue",
        "stringValue": "={{ $json.firstName }} {{ $json.lastName }}"
      },
      {
        "name": "email",
        "type": "stringValue",
        "stringValue": "={{ $json.email.toLowerCase() }}"
      },
      {
        "name": "age",
        "type": "numberValue",
        "numberValue": "={{ $json.birthYear ? $now.year() - $json.birthYear : null }}"
      }
    ]
  }
}
Use Instead of Code Node For:
  • Field renaming
  • Value transformation
  • Data cleanup
  • Type conversion

Filter

Route or remove items based on conditions.

Filter Node

Condition Types:
  • String contains/equals
  • Number comparisons
  • Date comparisons
  • Boolean checks
  • Regex matching
  • Empty/exists checks
Example:
{
  "conditions": {
    "combinator": "and",
    "conditions": [
      {
        "leftValue": "={{ $json.status }}",
        "operator": "equals",
        "rightValue": "active"
      },
      {
        "leftValue": "={{ $json.amount }}",
        "operator": "gt",
        "rightValue": 100
      }
    ]
  }
}

Merge

Combine data from multiple branches.

Merge Node

Merge Modes:
  • Append - Combine all items
  • Keep Key Matches - Join on matching field
  • Merge By Index - Combine by position
  • Merge By Key - Advanced key-based merging
  • Multiplex - Create combinations
Example - Merge by Key:
{
  "mode": "combine",
  "mergeByFields": {
    "values": [
      {
        "field1": "userId",
        "field2": "id"
      }
    ]
  },
  "options": {
    "joinMode": "keepMatches"
  }
}

Databases

PostgreSQL

Powerful relational database integration.

PostgreSQL

Operations:
  • Execute queries
  • Insert rows
  • Update rows
  • Delete rows
  • Transactions
Query Example:
SELECT u.*, o.order_total
FROM users u
LEFT JOIN orders o ON u.id = o.user_id
WHERE u.created_at > $1
ORDER BY u.created_at DESC
Parameters:
{
  "$1": "={{ $json.startDate }}"
}

MongoDB

NoSQL document database operations.

MongoDB

Operations:
  • Find documents
  • Insert documents
  • Update documents
  • Delete documents
  • Aggregate
Find Example:
{
  "operation": "find",
  "collection": "users",
  "query": {
    "status": "active",
    "age": { "$gte": 18 }
  },
  "options": {
    "sort": { "createdAt": -1 },
    "limit": 100
  }
}

Schedule & Time

Schedule Trigger

Run workflows on a time-based schedule.

Schedule Trigger

Trigger Intervals:
  • Seconds, minutes, hours
  • Days, weeks, months
  • Custom cron expressions
  • Multiple schedules
Examples:Daily at 9 AM:
{
  "rule": {
    "interval": [
      {
        "field": "days",
        "hoursInterval": 1,
        "minutesInterval": 0,
        "triggerAtHour": 9
      }
    ]
  }
}
Every Monday:
{
  "rule": {
    "interval": [
      {
        "field": "weeks",
        "triggerAtDay": [1],
        "triggerAtHour": 8
      }
    ]
  }
}
Custom Cron:
{
  "rule": {
    "interval": [
      {
        "field": "cronExpression",
        "expression": "0 */30 9-17 * * 1-5"
      }
    ]
  }
}

CRM & Sales

HubSpot

Marketing, sales, and service platform.

HubSpot

Resources:
  • Contacts
  • Companies
  • Deals
  • Tickets
  • Forms
  • Engagements
Create Contact Example:
{
  "resource": "contact",
  "operation": "create",
  "properties": {
    "email": "{{ $json.email }}",
    "firstname": "{{ $json.firstName }}",
    "lastname": "{{ $json.lastName }}",
    "phone": "{{ $json.phone }}",
    "company": "{{ $json.company }}"
  }
}

Salesforce

Enterprise CRM platform.

Salesforce

Resources:
  • Leads
  • Accounts
  • Contacts
  • Opportunities
  • Cases
  • Custom objects
SOQL Query Example:
SELECT Id, Name, Email, CreatedDate
FROM Lead
WHERE Status = 'New'
AND CreatedDate = TODAY
ORDER BY CreatedDate DESC

Next Steps

Trigger Nodes

Learn about webhooks, polling, and schedule triggers

Action Nodes

Explore data transformation and action nodes

Build a Workflow

Create your first automated workflow

API Reference

Detailed API documentation for all nodes