n8n Webhook einrichten: Schritt-für-Schritt-Anleitung 2026

n8n Webhook einrichten: Workflow-Canvas zeigt orangefarbenen Webhook-Node als Trigger, verbunden mit HTTP-Request und Da

Inhaltsverzeichnis

n8n Webhook

n8n Webhook einrichten bedeutet, einen Webhook-Node als ersten Trigger-Node in deinem Workflow anzulegen, HTTP-Methode und Pfad zu konfigurieren und anschließend die Test-URL zum Entwickeln sowie die Production URL im aktivierten Workflow zu nutzen. So empfängt n8n Daten von externen Apps und startet automatisch den passenden Workflow.

Wer Formulardaten automatisch in Google Sheets landen lassen will oder fincrm-Ereignisse direkt in einen n8n-Workflow schicken möchte, braucht einen funktionierenden Webhook. Das klingt technischer als es ist. Sobald du verstehst, wie Test-URL und Production URL zusammenspielen und welche zwei Zeilen Konfiguration beim Self-Hosting entscheidend sind, läuft der erste Webhook innerhalb von zehn Minuten. Diese Anleitung zeigt dir genau das — von der Node-Anlage bis zum Praxisbeispiel.

Was ist ein n8n Webhook?

Der Begriff Webhook beschreibt das Prinzip: Eine externe Anwendung schickt Daten aktiv an eine URL, sobald ein Ereignis eintritt. n8n lauscht an dieser URL und reagiert sofort. Das unterscheidet sich grundlegend vom Polling, bei dem n8n in festen Abständen selbst nachfragt, ob etwas Neues passiert ist.

Wie unterscheidet sich ein Webhook von einer API?

Eine API wartet auf Anfragen — du rufst sie auf, wenn du etwas brauchst. Ein Webhook dreht das Verhältnis um: Die externe App ruft dich auf, sobald ein Ereignis passiert. Deshalb ist der Webhook-Node in n8n immer ein Trigger-Node, kein Action-Node.

Konkret heißt das: Du trägst die Webhook-URL in deinem externen Dienst ein — etwa in fincrm, in einem HTML-Formular oder in Google Sheets via Apps Script. Sobald dort etwas passiert, landet der Request bei n8n, und der Workflow startet.

Wann solltest du einen Webhook statt eines Polling-Triggers nutzen?

Polling funktioniert, wenn ein Dienst keine Webhooks anbietet. Sobald ein Dienst Webhooks unterstützt, ist der Webhook-Trigger jedoch die bessere Wahl. Er reagiert in Echtzeit, verbraucht keine unnötigen API-Calls und entlastet beide Seiten. Außerdem ist POST die häufigste HTTP-Methode für Webhooks — GET eignet sich nur für einfache Trigger ohne Nutzdaten.

n8n Webhook einrichten: die 5 Schritte im Überblick

Schritt 1

Webhook-Node als ersten Node anlegen

1Trigger-Position

Workflow-Anfang definiert

Webhook muss am Workflow-Start stehen

Schritt 2

HTTP-Methode und Pfad konfigurieren

POSTHäufigste Methode

Empfangslogik festgelegt

Pfad individuell wählbar

Schritt 3

Test-URL aktivieren und ersten Request senden

TestModus

Debugging möglich

cURL oder Postman nutzen

Wichtig: n8n registriert den Test-Webhook nur, solange der Workflow nicht aktiv ist. Sobald du den Workflow veröffentlichst, wechselt n8n automatisch zur Production URL. Das ist kein Bug, sondern Absicht — dazu mehr im nächsten Abschnitt.

Schritt 1: Webhook-Node als ersten Node anlegen

Öffne einen leeren Workflow und klicke auf das Plus-Symbol. Suche nach „Webhook“ und wähle den Webhook node aus. Er erscheint als erster Node im Canvas — genau dort gehört er hin, denn er ist ein Trigger-Node und startet den gesamten Workflow.

Die offizielle n8n Webhook-Node-Dokumentation beschreibt alle verfügbaren Parameter im Detail. Für den Einstieg reichen HTTP-Methode, Pfad und Response Mode.

Schritt 2: HTTP-Methode und Pfad konfigurieren

Wähle unter HTTP Method die Methode, die deine sendende Anwendung verwendet. POST ist der Standard, weil dabei Daten im Request-Body mitgeschickt werden. GET eignet sich für einfache Trigger ohne Nutzdaten — etwa wenn Google Sheets per Apps Script nur einen Startimpuls sendet.

Vergib unter Path einen sprechenden Namen, zum Beispiel formular-eingang oder fincrm-events. Dieser Pfad wird Teil der Webhook-URL und hilft dir später, mehrere Webhooks auseinanderzuhalten.

Schritt 3: Test-URL aktivieren und ersten Request senden

Klicke auf Listen for Test Event. n8n zeigt dir daraufhin die Test-URL an. Kopiere sie und sende einen Request — am einfachsten mit cURL:

curl -X POST https://deine-n8n-instanz/webhook-test/formular-eingang -H "Content-Type: application/json" -d '{"name":"Max","email":"max@beispiel.de"}'

Sobald der Request ankommt, zeigt n8n die empfangenen Daten direkt im Editor. Danach kannst du die nachfolgenden Nodes auf Basis dieser Struktur aufbauen.

Schritt 4: Workflow fertigstellen und aktivieren

Füge die weiteren Nodes hinzu — etwa einen Google-Sheets-Node, einen E-Mail-Node oder einen HTTP-Request-Node. Verbinde sie mit dem Webhook-Node und teste den gesamten Durchlauf noch einmal mit der Test-URL. Wenn alles wie erwartet funktioniert, aktiviere den Workflow über den Toggle oben rechts.

Schritt 5: Production URL in der externen App eintragen

Nach der Aktivierung wechselt n8n automatisch zur Production URL. Kopiere diese URL aus dem Webhook-Node und trage sie in deiner externen Anwendung ein — ob fincrm, ein HTML-Formular oder WhatsApp Business Cloud. Ab diesem Moment verarbeitet n8n jeden eingehenden Request live.

Test-URL vs. Production URL in n8n

Kriterium Test-URL Production URL
Verfügbarkeit Nur bei inaktivem Workflow Dauerhaft bei aktivem Workflow
Zweck Debugging & Entwicklung Live-Betrieb
URL-Struktur /webhook-test/… /webhook/…
Logging Detailliert im Editor sichtbar Standard-Workflow-Logs
Externe Integration Temporär zum Testen Produktiv in Apps eintragen

Der Unterschied zwischen beiden URLs ist einer der häufigsten Stolpersteine beim n8n Webhook anlegen. Hier die wichtigsten Kriterien im direkten Vergleich.

Wann wechselst du von der Test- zur Production URL?

Sobald dein Workflow vollständig aufgebaut und getestet ist, wechselst du zur Production URL. Das ist der Moment, in dem du den Workflow aktivierst. Danach trägt die Test-URL nichts mehr zum Betrieb bei — sie ist nur noch für spätere Anpassungen relevant.

Trage die Production URL niemals in externe Dienste ein, solange der Workflow noch inaktiv ist. Der Request käme dann ins Leere, weil n8n keinen Production-Webhook registriert hat.

Webhook mit Postman oder cURL testen

Postman und Insomnia eignen sich gut für strukturierte Tests mit wechselnden Payloads. cURL ist schneller, wenn du nur einen einzelnen Request absetzen willst. Beide Wege führen zum gleichen Ergebnis: Du siehst, welche Felder n8n empfängt, und kannst deine nachfolgenden Nodes entsprechend konfigurieren.

Sende dabei immer den Content-Type-Header mit: -H "Content-Type: application/json". Fehlt dieser Header, interpretiert n8n den Body möglicherweise nicht korrekt.

n8n Webhook Authentifizierung einrichten

Sicherheit firstHeader Auth schützt deinen Webhook vor unautorisierten Zugriffen. Kombiniere es mit IP-Whitelisting oder Origin-Restriktion für maximale Absicherung.

Ein öffentlich erreichbarer Webhook ohne Authentifizierung ist wie eine offene Tür — jeder kann Requests schicken. Deshalb bietet n8n beim Webhook in n8n konfigurieren mehrere Sicherheitsoptionen.

  • Header Auth: Du legst einen Header-Namen und einen geheimen Wert fest. Die sendende App muss diesen Header bei jedem Request mitschicken — andernfalls lehnt n8n den Request ab.
  • Basic Auth: Benutzername und Passwort werden Base64-kodiert im Authorization-Header übertragen. Einfach einzurichten, aber weniger sicher als Header Auth bei sensiblen Daten.
  • IP-Whitelisting und Origin-Restriktion: Auf Infrastrukturebene kannst du eingehende Requests auf bestimmte IP-Adressen oder Domains beschränken — sinnvoll, wenn die sendende App eine feste IP hat.

Header Auth konfigurieren

Öffne den Webhook-Node und wähle unter Authentication die Option Header Auth. Lege dann einen Credential-Datensatz an: Vergib einen Header-Namen (zum Beispiel X-Webhook-Secret) und einen langen, zufälligen Wert als Secret. Trage denselben Header danach in der sendenden Anwendung ein.

Dieser Ansatz ist einfach umzusetzen und reicht für die meisten Anwendungsfälle aus. Wenn du fincrm oder WhatsApp Business Cloud als Quelle nutzt, prüfe in deren Dokumentation, welche Header-Felder sie beim Webhook-Aufruf unterstützen.

Weitere Sicherheitsoptionen: IP-Whitelisting und Origin-Restriktion

IP-Whitelisting lässt sich nicht direkt im n8n-Webhook-Node konfigurieren — das läuft über deinen Reverse Proxy oder deine Firewall. Dort kannst du festlegen, dass nur bestimmte IP-Bereiche den Webhook-Endpunkt erreichen dürfen. Für Self-Hosting-Setups ist das eine sinnvolle zweite Sicherheitsebene, zusätzlich zur Header-Authentifizierung.

n8n Webhook einrichten hinter einem Reverse Proxy

WEBHOOK_URLBasis-VariableÖffentliche URL setzen
N8N_PROXY_HOPSProxy-EinstellungStandard: 1
N8N_EDITOR_BASE_URLEditor-URLFür korrekte Links

Wer n8n selbst hostet — etwa via Docker hinter nginx oder Traefik — stößt schnell auf ein Problem: n8n generiert Webhook-URLs anhand seiner internen Adresse, nicht anhand der öffentlichen Domain. Deshalb sind zwei Umgebungsvariablen entscheidend.

Umgebungsvariablen WEBHOOK_URL und N8N_PROXY_HOPS setzen

Setze WEBHOOK_URL auf deine öffentliche Domain, zum Beispiel https://n8n.deinedomain.de. Damit weiß n8n, welche URL es in der Oberfläche und in den Workflow-Metadaten anzeigen soll. Außerdem empfiehlt n8n laut offizieller Dokumentation, N8N_PROXY_HOPS=1 zu setzen, damit n8n weiß, dass ein Proxy vorgelagert ist und X-Forwarded-*-Header korrekt ausgewertet werden.

Für Docker-Setups hilft zusätzlich N8N_EDITOR_BASE_URL, damit auch der Editor die richtige Basis-URL kennt. Zudem stellt N8N_HOST sicher, dass interne Verlinkungen korrekt aufgelöst werden. Wie du diese Variablen konkret setzt, beschreibt die Anleitung zum n8n Webhook-URL hinter Reverse Proxy konfigurieren im Detail.

Häufige Fehler und wie du sie behebst

Der häufigste Fehler: Die Test-URL zeigt eine interne IP oder localhost statt der öffentlichen Domain. Ursache ist fast immer eine fehlende oder falsche WEBHOOK_URL-Variable. Setze sie und starte den n8n-Container neu.

Ein weiterer Fehler tritt auf, wenn CORS-Header fehlen. Dann blockiert der Browser Requests vom Frontend-Formular. Lösung: Konfiguriere deinen Reverse Proxy so, dass er Access-Control-Allow-Origin korrekt setzt. Alternativ kannst du den Request serverseitig absetzen, sodass CORS keine Rolle spielt.

Falls der Webhook keinen Response zurückschickt, prüfe den Response Mode im Node. Die Einstellung Immediately sendet sofort eine Bestätigung an den Aufrufer — ohne auf das Ende des Workflows zu warten. Das ist sinnvoll, wenn die sendende App innerhalb von Sekunden eine Antwort erwartet.

Praxisbeispiel: Webhook Automatisierung mit n8n

Entwickler richtet n8n Webhook ein und konfiguriert einen Automatisierungs-Workflow im n8n-Editor
Ein reales Praxisbeispiel: Webhook-Automatisierung direkt im n8n-Canvas umsetzen.

Theorie ist gut, ein laufender Workflow ist besser. Folgendes Szenario zeigt, wie ein Webhook-Trigger in n8n erstellen in der Praxis aussieht: Ein HTML-Formular sammelt Abwesenheitsmeldungen und schickt sie per POST an n8n.

HTML-Formular-Daten per Webhook in n8n verarbeiten

Das Formular sendet Name, Zeitraum und Grund als JSON-Body an die Webhook-URL. n8n empfängt den Request, liest die Felder aus dem Body und verarbeitet sie weiter. Dabei ist POST die richtige HTTP-Methode, weil Nutzdaten im Body mitgeschickt werden.

In der Praxis bedeutet das: Der Webhook-Node liefert ein Datenobjekt mit allen Formularfeldern. Die nachfolgenden Nodes greifen per Ausdruck darauf zu — etwa {{ $json.name }} für den Namen des Mitarbeiters. So lässt sich jeder Wert gezielt weiterverarbeiten.

Wer sein digitales Solopreneur-Setup mit Automatisierungstools aufbauen will, findet in diesem Workflow-Muster einen guten Startpunkt — es ist übertragbar auf jedes Formular, das JSON senden kann.

Webhook-Daten an Google Sheets oder E-Mail weiterleiten

Nach dem Webhook-Node kommen zwei parallele Nodes: ein Google-Sheets-Node, der die Daten in eine Tabelle schreibt, und ein E-Mail-Node, der eine Benachrichtigung verschickt. Beide Nodes laufen nacheinander im selben Workflow.

Webhooks lassen sich außerdem direkt aus Google Sheets heraus starten — per Apps Script, das einen HTTP-Request an die Webhook-URL sendet. Damit kannst du Automations-Workflows direkt aus der Tabelle triggern, ohne ein externes Tool zu öffnen.

Für komplexere Szenarien — etwa wenn fincrm Ereignisse an n8n schickt und n8n die Daten in mehrere Systeme verteilt — lohnt es sich, die passende Marketing-Software für Automatisierungen im Vorfeld zu prüfen. Nicht jedes Tool unterstützt Webhooks mit Body-Daten; manche senden nur GET-Requests ohne Payload.

Häufige Fragen

Wie erstelle ich einen Webhook in n8n Schritt für Schritt?

Füge den Webhook node als ersten Node im Workflow hinzu. Wähle HTTP-Methode (meist POST) und vergib einen Pfad. Klicke auf „Listen for Test Event“, sende einen Test-Request mit Postman oder cURL, baue den restlichen Workflow auf und aktiviere ihn. Danach trägst du die Production URL in deiner externen App ein.

Was ist der Unterschied zwischen Test-URL und Production URL in n8n?

Die Test-URL ist nur aktiv, wenn du im Editor auf „Listen for Test Event“ klickst und der Workflow inaktiv ist. Die Production URL hingegen ist dauerhaft aktiv, sobald der Workflow veröffentlicht wurde. Externe Apps tragen immer die Production URL ein — nie die Test-URL.

Wie richte ich eine Webhook-Authentifizierung in n8n ein?

Öffne den Webhook-Node und wähle unter Authentication die Option Header Auth. Lege einen neuen Credential-Datensatz an mit Header-Name und Secret-Wert. Die sendende Anwendung muss diesen Header bei jedem Request mitschicken. Alternativ steht Basic Auth zur Verfügung — weniger sicher, aber einfacher einzurichten.

Wie funktioniert n8n hinter einem Reverse Proxy mit Webhooks?

Setze die Umgebungsvariable WEBHOOK_URL auf deine öffentliche Domain, damit n8n die korrekte URL generiert. Zusätzlich empfiehlt n8n N8N_PROXY_HOPS=1, damit X-Forwarded-*-Header korrekt ausgewertet werden. Für Docker-Setups helfen außerdem N8N_HOST und N8N_EDITOR_BASE_URL.

Kann ich n8n als API mit Webhooks verwenden?

Ja. Der Webhook-Node empfängt HTTP-Requests und kann eine strukturierte Antwort zurückschicken — ähnlich wie ein einfacher API-Endpunkt. Über den Response Mode steuerst du, wann und was n8n zurückgibt. So lassen sich einfache API-ähnliche Endpunkte ohne separaten Server aufbauen.

Wie teste ich einen n8n Webhook mit Postman oder cURL?

Klicke im Webhook-Node auf „Listen for Test Event“ und kopiere die Test-URL. Sende dann mit Postman einen POST-Request mit JSON-Body und dem Header „Content-Type: application/json“. Mit cURL lautet der Befehl: curl -X POST [Test-URL] -H „Content-Type: application/json“ -d ‚{„key“:“value“}‘. n8n zeigt die empfangenen Daten direkt im Editor.

n8n Webhook einrichten ist kein Hexenwerk — aber die Details entscheiden. Test-URL und Production URL sauber trennen, die Authentifizierung von Anfang an einrichten und beim Self-Hosting die richtigen Umgebungsvariablen setzen: Das sind die drei Punkte, an denen die meisten Setups scheitern oder glänzen. Wer diese Grundlagen einmal verstanden hat, baut den nächsten Webhook in fünf Minuten.

Du willst einen Webhook-Workflow für dein Business aufsetzen und weißt nicht, wo du anfangen sollst? Meld dich einfach — ich schnack gerne darüber, welcher Ansatz zu deinem Setup passt.

Kontakt aufnehmen

noch mehr Input für dich

Entdecke, wie digitale Marketing-Agenturen dein Business auf ein neues Level heben können. Von SEO bis Social Media - hier erfährst du alles, was du für deinen Online-Erfolg wissen musst!
Entdecke, wie du mit digitalem Marketing durchstartest! Von SEO bis Social Media - lerne die Basics, um dein Business online erfolgreich zu machen. Dein Weg zum Online-Erfolg beginnt hier!