n8nen.nl logo n8nen.nl

N8N Nodes: Complete Gids voor Alle Node Types & Core Nodes (2025)

2025-01-24 Sam Haakman
N8N Nodes: Complete Gids voor Alle Node Types & Core Nodes (2025)

📚 Wat je in deze uitgebreide gids vindt:

  • Alle Trigger Nodes: Van webhooks tot schedules, wanneer gebruik je wat
  • 🔧 Action Nodes: HTTP Request, Database, Email en 400+ integraties
  • 🎯 Core Nodes: IF, Switch, Merge, Set - de bouwblokken van elke workflow
  • 🔄 Flow Control: Loops, batches, error handling en performance
  • 💡 Praktijkvoorbeelden: Real-world use cases voor elke node

Na 3 jaar intensief werken met N8N en het bouwen van honderden workflows, ken ik elke node als mijn broekzak. Maar ik zie dagelijks mensen worstelen met vragen als: "Wanneer gebruik ik een Webhook vs een HTTP Request?", "Hoe werkt die Merge node nou precies?", of "Waarom loopt mijn Split in Batches vast?"

Deze gids is het antwoord op al die vragen. Ik leg niet alleen uit WAT elke node doet, maar vooral WANNEER je hem gebruikt, HOE hij precies werkt, en welke VALKUILEN je moet vermijden. Dit is de gids die ik zelf had willen hebben toen ik begon met N8N.

🎯 N8N Nodes: Het Complete Overzicht

Voordat we in de details duiken, is het belangrijk om te begrijpen dat N8N nodes in twee hoofdcategorieën vallen: Trigger Nodes en Action Nodes. Daarnaast zijn er speciale Core Nodes die kunnen functioneren als beide, afhankelijk van hoe je ze gebruikt.

De Node Hiërarchie

N8N Nodes
├── Trigger Nodes (⚡ Start workflows)
│   ├── Schedule Trigger
│   ├── Webhook
│   ├── Email Trigger
│   └── App-specific triggers
├── Action Nodes (🔧 Perform tasks)
│   ├── HTTP Request
│   ├── Database nodes
│   ├── App integrations
│   └── Data processing
└── Core Nodes (🎯 Logic & Control)
    ├── IF / Switch
    ├── Merge / Split
    ├── Set / Code
    └── Loop / Wait

⚡ Trigger Nodes: De Workflow Starters

Trigger nodes zijn het startpunt van elke workflow. Ze bepalen WANNEER je workflow draait en leveren de initiële data. Een workflow kan meerdere trigger nodes bevatten, maar bij elke execution wordt er maar één gebruikt, afhankelijk van welke getriggerd wordt.

1. Webhook Node - De Universele Ontvanger

De Webhook node is waarschijnlijk de meest krachtige trigger in N8N. Het creëert een uniek endpoint waar externe services data naartoe kunnen sturen. Denk aan het als een digitale brievenbus waar iedereen post in kan doen, en zodra er iets binnenkomt, start je workflow.

⚠️ Belangrijk: Test vs Production URLs

N8N genereert twee verschillende webhook URLs voor elke webhook node:

  • Test URL: Gebruik deze tijdens development. Data wordt zichtbaar in de workflow interface.
  • Production URL: Voor live gebruik. Workflow draait in de achtergrond zonder UI updates.

De webhook heeft een maximum payload size van 16MB - houd hier rekening mee bij grote data transfers!

Praktisch Voorbeeld: Contact Form Handler

// Webhook ontvangt deze POST data:
{
  "name": "Jan Jansen",
  "email": "jan@example.com",
  "message": "Ik ben geïnteresseerd in jullie diensten"
}

// N8N workflow:
1. Webhook (trigger) → Ontvangt form data
2. Send Email → Stuurt naar sales team
3. Google Sheets → Log contact voor CRM
4. Respond to Webhook → Return success message

✅ Gebruik Webhook voor:

  • • Form submissions
  • • Payment notifications (Stripe, Mollie)
  • • GitHub/GitLab events
  • • Custom API endpoints
  • • Third-party integrations zonder native node

❌ Gebruik GEEN Webhook voor:

  • • Scheduled tasks (gebruik Schedule Trigger)
  • • Polling externe APIs (gebruik Cron + HTTP Request)
  • • Als er een native trigger bestaat

2. Schedule Trigger - De Klok van je Automation

De Schedule Trigger is je go-to node voor time-based automation. Of je nu elke 5 minuten een API wilt checken, dagelijks een rapport wilt genereren, of maandelijks backups wilt maken - deze node regelt het.

Cron Expressions Decoded

Schedule Trigger gebruikt cron expressions. Hier zijn de most-used patterns:

Expression Betekenis Use Case
*/5 * * * * Elke 5 minuten API polling, status checks
0 9 * * 1-5 Werkdagen om 9:00 Daily standup reminder
0 0 1 * * Eerste dag van maand Monthly reports
0 */4 * * * Elke 4 uur Backup routines

💡 Pro Tip: Timezone Awareness

Schedule Trigger gebruikt de timezone van je N8N instance. Bij self-hosted installaties is dit meestal UTC. Pas je cron expressions hierop aan of stel GENERIC_TIMEZONE environment variable in!

3. Manual Trigger - Development & Testing

De Manual Trigger is speciaal ontworpen voor workflows die je alleen handmatig wilt starten. Perfect voor admin tasks, one-off migrations, of testing tijdens development. Deze node heeft geen automatische trigger optie - het is puur voor manual execution.

Use cases waar Manual Trigger perfect is:

  • Database cleanup scripts die je monthly runt
  • Data migration workflows tijdens upgrades
  • Testing complexe workflows tijdens development
  • Administrative tasks zoals user provisioning
  • Emergency procedures die on-demand moeten draaien

🔧 Action Nodes: De Werkpaarden

Action nodes zijn waar het echte werk gebeurt. Ze manipuleren data, communiceren met externe services, en voeren de daadwerkelijke taken uit. N8N heeft 400+ action nodes, maar er zijn een paar absolute essentials die je in bijna elke workflow gebruikt.

HTTP Request Node - De Swiss Army Knife

Als er één node is die je moet masteren, is het de HTTP Request node. Deze node kan communiceren met ELKE API ter wereld. Als een service geen native N8N node heeft, is HTTP Request je redding.

De Anatomy van een HTTP Request

Een HTTP Request bestaat uit verschillende componenten die je moet begrijpen:

Method (GET, POST, PUT, DELETE, PATCH)

GET haalt data op, POST creëert nieuwe resources, PUT update complete resources, PATCH update delen, DELETE verwijdert.

Headers

Metadata over je request. Common headers: Authorization (voor API keys), Content-Type (meestal application/json), Accept (wat je terug verwacht).

Body (voor POST/PUT/PATCH)

De actual data die je stuurt. Meestal JSON, soms form-data voor file uploads.

Query Parameters

Extra parameters in de URL na het ? teken. Bijvoorbeeld: api.example.com/users?page=2&limit=10

Real-World Voorbeeld: OpenAI GPT-4 Integration

// HTTP Request Node Configuration:
Method: POST
URL: https://api.openai.com/v1/chat/completions

Headers:
  Authorization: Bearer {{ $credentials.openaiApiKey }}
  Content-Type: application/json

Body:
{
  "model": "gpt-4",
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful assistant."
    },
    {
      "role": "user",
      "content": "{{ $json.userMessage }}"
    }
  ],
  "temperature": 0.7
}

// Response wordt automatisch geparsed naar JSON

⚡ Performance Tips voor HTTP Request:

  • • Enable "Retry on Fail" voor belangrijke requests (max 3 retries recommended)
  • • Set reasonable timeouts (default 10s, verhoog voor large downloads)
  • • Use "Batch Size" voor bulk operations om rate limits te respecteren
  • • Cache responses waar mogelijk met Set node voor hergebruik
  • • Implementeer exponential backoff bij rate limiting (wait node tussen retries)

🎯 Core Nodes: De Intelligentie van je Workflow

Core nodes zijn de hersenen van je workflow. Ze voegen logica toe, manipuleren data, en controleren de flow. Dit zijn de nodes die het verschil maken tussen een simpele automation en een intelligent systeem.

IF Node - Conditionele Logica

De IF node splitst je workflow in twee paden gebaseerd op condities. Het is de basis van alle beslissingslogica in N8N. De node evalueert conditions en stuurt data naar de 'true' of 'false' output.

Condition Types & Operators

String Conditions:

  • • Contains / Not Contains
  • • Equals / Not Equals
  • • Starts With / Ends With
  • • Is Empty / Is Not Empty
  • • Regex Match

Number Conditions:

  • • Equal / Not Equal
  • • Greater Than / Less Than
  • • Greater or Equal / Less or Equal
  • • Is Even / Is Odd
  • • Between (range check)

⚠️ Valkuil: IF + Merge Node Interaction

Als je een Merge node toevoegt na een IF node, kan dit resulteren in het uitvoeren van BEIDE outputs van de IF node! De Merge node triggert namelijk de andere branch om data te verkrijgen. Oplossing: gebruik een NoOp node of herstructureer je workflow.

Praktisch Voorbeeld: Lead Scoring

// IF Node Configuration:
Condition 1: {{ $json.leadScore }} > 70
Condition 2: {{ $json.companySize }} >= 50
Combine: AND

// Output:
True → Send to Sales (high-value lead)
False → Add to nurture campaign

Switch Node - Multiple Paths

Waar IF node je twee opties geeft (true/false), geeft Switch node je unlimited routing opties. Perfect voor complexe decision trees waar je meer dan twee uitkomsten hebt.

Switch vs IF: Wanneer gebruik je wat?

Gebruik IF voor:

  • • Binary decisions (yes/no)
  • • Threshold checks (boven/onder X)
  • • Presence checks (exists/not exists)

Gebruik Switch voor:

  • • Department routing (sales/support/billing)
  • • Status handling (new/pending/complete/failed)
  • • Language routing (NL/EN/DE/FR)

Merge Node - Data Combineren

De Merge node combineert data van multiple sources. Sinds versie 1.49.0 kun je meer dan twee inputs toevoegen! De node wacht tot alle connected inputs data hebben geleverd voordat hij verder gaat.

Merge Modes Explained

Append (Keep All)

Voegt alle items van alle inputs samen tot één lijst. Order: Input 1, dan Input 2, etc.

Merge By Fields (SQL-style JOIN)

Combineert items based op matching field values. Zoals een SQL JOIN operation.

Merge By Position

Combineert item 1 van Input 1 met item 1 van Input 2, etc. based op positie.

Multiplex

Creëert alle mogelijke combinaties. 3 items × 2 items = 6 output items.

💡 Pro Tip: SQL Mode (v1.49.0+)

De nieuwe SQL Query mode laat je actual SQL schrijven om data te mergen! Super powerful voor complexe joins en aggregations.

Loop Over Items (Split In Batches) - Iteration Control

De Loop Over Items node (voorheen Split In Batches) is cruciaal voor het verwerken van grote datasets of het vermijden van API rate limits. Het splitst data in batches en itereert er overheen.

How Loop Over Items Works

De node bewaart de originele incoming data, en bij elke iteratie returnt hij een vooraf gedefinieerde hoeveelheid data via de 'loop' output. Wanneer alle data verwerkt is, combineert hij alles en stuurt het door de 'done' output.

Key Settings:

  • Batch Size: Hoeveel items per iteratie (default: 10)
  • Reset: Behandel elke loop als nieuwe data (voor pagination)
  • Options.maxIterations: Safety limit om infinite loops te voorkomen

⚠️ Common Pitfall: Infinite Loops

ALTIJD een valid termination condition toevoegen! De node stopt automatisch na alle items, maar bij 'Reset' mode met external data fetching moet je zelf een stop condition implementeren.

Use Case: API Rate Limit Handling

// Scenario: 1000 contacts updaten, API allows 100/minute

1. Loop Over Items (Batch Size: 100)
2. ↓ loop output
3. HTTP Request (update contacts)
4. Wait (60 seconds)
5. → terug naar Loop node
6. ↓ done output  
7. Success notification

Set Node (Edit Fields) - Data Transformation

De Set node is je go-to voor data transformation. Het kan velden toevoegen, verwijderen, hernoemen, en transformeren. Think of it als een data massage parlor - data gaat erin, komt er beter uit.

Set Node Operations

Data Operations:

  • • Add fields (static or dynamic)
  • • Remove unwanted fields
  • • Rename fields
  • • Transform data types
  • • Calculate new values

Keep Options:

  • • Keep all fields (add to existing)
  • • Keep only set (clean output)
  • • Keep selected fields

Praktisch: Data Cleaning Pipeline

// Input: Messy customer data
{
  "FIRSTNAME": "  JOHN  ",
  "email_address": "JOHN@EXAMPLE.COM",
  "phone": "+31-6-12345678",
  "signup_date": "2024-01-15T10:30:00Z"
}

// Set Node Configuration:
Keep: Only Set
Fields:
  firstName: {{ $json.FIRSTNAME.trim().toLowerCase() }}
  email: {{ $json.email_address.toLowerCase() }}
  phone: {{ $json.phone.replace(/-/g, '') }}
  signupDate: {{ $json.signup_date.split('T')[0] }}
  
// Output: Clean, normalized data
{
  "firstName": "john",
  "email": "john@example.com",
  "phone": "+31612345678",
  "signupDate": "2024-01-15"
}

Code Node - Ultimate Flexibility

Wanneer de standaard nodes niet genoeg zijn, is de Code node je redding. Je kunt JavaScript of Python code schrijven voor complexe logica, data transformaties, of custom integraties.

Code Node Modes

Run Once for All Items

Verwerkt alle items in één keer. Access via $input.all(). Efficient voor bulk operations.

Run Once for Each Item

Draait de code voor elk item separately. Access via $input.item. Voor item-specific logic.

Voorbeeld: Advanced Data Processing

// JavaScript Code Node - Email Validator & Enricher
const items = $input.all();
const output = [];

for (const item of items) {
  const email = item.json.email;
  
  // Validate email format
  const isValid = /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
  
  // Extract domain info
  const domain = email.split('@')[1];
  const isBusinessEmail = !['gmail.com', 'yahoo.com', 'hotmail.com'].includes(domain);
  
  // Enrich data
  output.push({
    ...item.json,
    emailValid: isValid,
    emailDomain: domain,
    isBusinessEmail: isBusinessEmail,
    processingDate: new Date().toISOString()
  });
}

return output;

🔄 Flow Control Nodes: Workflow Orchestra

Flow control nodes bepalen HOE je workflow draait - de volgorde, timing, en error handling. Deze nodes maken het verschil tussen een fragiele workflow en een production-ready systeem.

Wait Node - Timing Control

De Wait node pauzeert je workflow voor een bepaalde tijd of tot een specifiek moment. Essential voor rate limiting, scheduled delays, of synchronization.

Wait Node Options

  • Fixed Time: Wait X seconds/minutes/hours
  • Until Date/Time: Wait tot specific timestamp
  • Webhook Resume: Wait tot external trigger

Common use: API rate limiting tussen batch requests, delay voor email sequences, wachten op human approval.

Error Trigger - Robust Error Handling

De Error Trigger node vangt errors op van andere workflows. Het is je safety net - wanneer iets fout gaat, kun je notifications sturen, logs maken, of recovery procedures starten.

Error Handling Best Practices

  • • Altijd een Error Trigger workflow hebben voor critical processes
  • • Log errors naar een database voor analysis
  • • Send alerts via Slack/Email voor immediate attention
  • • Implement retry logic waar mogelijk
  • • Include context (workflow name, error message, timestamp)

📊 Data Processing Nodes: Transform & Analyze

Deze nodes zijn gespecialiseerd in het verwerken, transformeren en analyseren van data. Ze zijn de backbone van elke data-driven workflow.

Split Out Node - Array to Items

De Split Out node neemt een single item met een array/lijst en splitst het in multiple individual items. Perfect voor het verwerken van bulk API responses.

Voorbeeld: API Response Processing

// Input: Single item met customer array
{
  "status": "success",
  "customers": [
    {"id": 1, "name": "Alice"},
    {"id": 2, "name": "Bob"},
    {"id": 3, "name": "Charlie"}
  ],
  "timestamp": "2024-01-15"
}

// Split Out Node Config:
Field to Split: customers
Include: All Other Fields

// Output: 3 separate items
Item 1: {"id": 1, "name": "Alice", "status": "success", "timestamp": "2024-01-15"}
Item 2: {"id": 2, "name": "Bob", "status": "success", "timestamp": "2024-01-15"}
Item 3: {"id": 3, "name": "Charlie", "status": "success", "timestamp": "2024-01-15"}

Aggregate Node - Summarize Data

De Aggregate node combineert multiple items tot summary statistics. Think SUM, COUNT, AVG operations maar dan visual.

Aggregate Operations

  • Summarize: Count, sum, average van numeric fields
  • Group By: Groepeer data op field values
  • Concatenate: Combine text fields
  • Min/Max: Find extreme values

🏆 Best Practices & Pro Tips

Node Selection Cheat Sheet

"Ik wil data van een externe service halen"

→ Check voor native integration node, anders HTTP Request

"Ik wil verschillende acties based op conditions"

→ 2 opties: IF node | 3+ opties: Switch node

"Ik wil data van meerdere sources combineren"

→ Merge node met juiste mode (Append/Join/Position)

"Ik wil grote datasets verwerken"

→ Loop Over Items voor batching + Wait voor rate limiting

"Ik wil complexe data transformatie"

→ Simple: Set node | Complex: Code node

🚨 Common Node Mistakes & Solutions

Mistake #1: Using Polling Instead of Webhooks

Schedule Trigger + HTTP Request elke minuut = inefficient & costly.

✅ Solution: Use Webhook triggers waar mogelijk voor real-time events.

Mistake #2: Not Handling Empty Results

Workflow crasht wanneer API geen data returnt.

✅ Solution: IF node checken voor empty arrays/objects voor processing.

Mistake #3: Infinite Loops in Split In Batches

Reset option + geen proper exit condition = workflow draait forever.

✅ Solution: Altijd een maximum iterations of data check toevoegen.

🚀 Master N8N Nodes met Expert Help

Krijg een complete N8N setup met best-practice workflows.

N8N Setup + Node Training voor €100 →

✓ Alle nodes uitgelegd ✓ Custom workflows ✓ Best practices training

Meer N8N node tutorials op n8nen.nl - jouw complete N8N resource! 🚀

📚 Bookmark deze pagina!

Deze nodes gids wordt maandelijks geüpdatet met nieuwe nodes en voorbeelden. Met 400+ nodes in N8N is er altijd iets nieuws te leren!

#n8n #nodes #webhook #http request #automatisering #workflow #tutorial