Zum Inhalt springen
Funnelforms 4 (SaaS)

Webhooks: Formulardaten an beliebige URLs senden

Stand 17.10.20264 Min. Lesezeit

Auf dieser Seite
  1. Webhooks nutzen: Formularabsendungen per JSON an externe Systeme senden
  2. Voraussetzungen
  3. Wo du Webhooks konfigurierst
  4. Funktionen
  5. Schritt für Schritt: Submit-Webhook
  6. Schritt für Schritt: Logik-Webhook
  7. Best Practices
  8. Stolpersteine
  9. Tipps
  10. FAQ
  11. Weiterführende Artikel

Webhooks nutzen: Formularabsendungen per JSON an externe Systeme senden

Ein Webhook ist der direkteste Weg, eine Formularabsendung an ein beliebiges System im Internet zu senden. Funnelforms baut beim Absenden ein strukturiertes JSON-Paket mit allen Antworten, Feld-Metadaten und Analytics und liefert es an die URL deiner Wahl. Überall dort, wo ein Endpunkt HTTPS POST empfangen kann, kannst du anbinden — ohne eine Drittanbieter-Plattform dazwischenzuschalten.

Voraussetzungen

  • Ein angemeldetes Funnelforms-Konto mit Zugriff auf den Formular-Editor.
  • Eine erreichbare Empfänger-URL, idealerweise per https://.
  • Der Empfänger antwortet innerhalb von 15 Sekunden mit einem 2xx-Status.

Hinweis: Webhooks sind in allen aktiven Tarifen verfügbar. Auf einem heruntergestuften Free-Konto greifen die allgemeinen Limits (1 Formular, 1 Domain, 1 Team-Mitglied, 10 MB pro Datei) — die Webhook-Funktion selbst bleibt nutzbar.

Wo du Webhooks konfigurierst

  • Editor → Benachrichtigungen → Webhook — feuert einmal pro abgeschlossener Submission. Der Standardfall „jeden Lead schicken".
  • Editor → Logik → Webhook-Aktion — feuert, wenn ein bestimmter Logik-Node im Flow erreicht wird. Sinnvoll, wenn nur bestimmte Antwortpfade einen Call auslösen sollen.
  • Editor → Apps — wenn ein Automation-Tool (Zapier, Make) mit deinem Funnelforms-Konto verbunden ist, läuft dessen Webhook ebenfalls automatisch mit, ohne dass du eine URL pflegen musst.

Funktionen

Illustration: Funnelforms schickt Formulardaten per Webhook an verschiedene Ziele
  • HTTPS POST mit Content-Type: application/json.
  • Asynchrone Auslieferung über eine interne Warteschlange — die Submission wird nie blockiert.
  • Automatische Wiederholungen bei vorübergehenden Fehlern.
  • Mehrere Empfänger pro Formular möglich (Submit-Webhook, Logik-Webhooks und Automation-Webhooks parallel).

Schritt für Schritt: Submit-Webhook

  1. Öffne das Formular im Editor.
  2. Wechsle in den Tab Benachrichtigungen.
  3. Aktiviere Webhook.
  4. Trage die Ziel-URL in Webhook URL ein.
  5. Speichern.

Schritt für Schritt: Logik-Webhook

  1. Öffne den Tab Logik und füge dem gewünschten Node eine Webhook-Aktion hinzu.
  2. Trage die Ziel-URL ein. Die HTTP-Methode ist bei Logik-Webhooks fest POST.
  3. Speichern.

Was Funnelforms sendet

Die Payload ist ein JSON-Objekt mit diesen Top-Level-Feldern:

  • timestamp — Zeitpunkt der Auslieferung (ISO-String).
  • id — UUID der Submission, geeignet zur Deduplizierung.
  • form — id, title, projectId, customSlug.
  • formFields — Definition aller im Flow aktiven Felder.
  • formResponsesByFieldId — Antworten, gekeyed über die interne Feld-UUID.
  • formResponsesByWebhookFieldId — Antworten, gekeyed über die Webhook Field ID, die du pro Feld vergibst (z. B. email, first_name).
  • formResponseId — UUID der Submission.
  • analytics — Browser, Gerät, UTM-Parameter, Entry-/Exit-URL (sofern verfügbar).
  • allQuestionData — menschenlesbarer Fließtext aller Frage-Antwort-Paare.

Hinweis: Submit-Felder mit Sub-Feldern werden zusätzlich top-level als field-XXXX-Keys und im submit-Array ausgeliefert — das ist Absicht und Teil des öffentlichen Webhook-Vertrags. Verlasse dich in bestehenden Integrationen auf beide Stellen.

Hinweis (Logik-Flow mit mehreren Frage-Nodes): Wenn dasselbe Formularfeld in mehreren Logik-Nodes ausgespielt wird, werden die Antworten zusätzlich pro Node unter einem node_id-Key abgelegt. So bleibt nachvollziehbar, welche Antwort aus welchem Logik-Pfad stammt.

Wie die Zustellung läuft

  • Methode: POST.
  • Timeout: 15 Sekunden. Antwortet dein Endpoint nicht rechtzeitig, gilt der Call als fehlgeschlagen.
  • Größenlimit: 5 MB pro Payload. Größere Pakete werden als failed markiert.
  • Non-blocking: Ein fehlschlagender Webhook bricht die Submission nicht — der Nutzer sieht immer die Thank-You-Seite.

Best Practices

  • Vergib pro relevantem Feld eine Webhook Field ID — dein Backend bleibt stabil, auch wenn das Formular umgebaut wird.
  • Antworte am Empfänger schnell mit 2xx und verarbeite asynchron weiter.
  • Validiere alle eingehenden Daten serverseitig (Längen, Typen, Pflichtfelder).
  • Sende dir vor dem Go-Live einen Test-Lead, um die exakte Struktur in deinem System zu sehen.
  • Verarbeite Webhooks idempotent — Wiederholungen dürfen keine Duplikate erzeugen.

Stolpersteine

  • HTTP statt HTTPS. HTTP wird akzeptiert, überträgt Lead-Daten aber unverschlüsselt. Nicht empfohlen.
  • Lange Antwortzeiten am Empfänger. Alles über 15 Sekunden wird als Fehler gewertet.
  • Payload größer als 5 MB. Sehr große Datei-Anhänge oder extrem viele Felder können das Limit überschreiten — der Call schlägt fehl.
  • Felder ohne Antwort. Erscheinen als null oder werden weggelassen — nicht als leerer String.
  • Eigene Header oder Auth-Header. Aktuell nicht unterstützt — Funnelforms sendet ausschließlich Content-Type: application/json. Authentifizierung über Query-Parameter oder über einen geheimen Pfad-Token in der URL implementieren.

Tipps

  • Nutze für stabile Integrationen bevorzugt formResponsesByWebhookFieldId statt der UUID-Variante.
  • Speichere die id der Submission auf Empfängerseite, um Wiederholungen sicher zu erkennen.

FAQ

Kann ich mehrere Webhook-URLs gleichzeitig nutzen? Ja. Submit-Webhook, Logik-Webhooks und verbundene Automation-Tools liefern unabhängig voneinander aus.

Werden Datei-Uploads übertragen? Es werden öffentliche URLs zu hochgeladenen Dateien geliefert — keine Binärdaten.

Was passiert, wenn mein Endpoint kurz nicht erreichbar ist? Funnelforms wiederholt die Zustellung automatisch im Hintergrund. Bei dauerhaftem Fehlschlag wird die Lieferung als failed markiert.

Sehe ich Webhook-Fehler im Backend? Ja. Fehlgeschlagene Zustellungen werden protokolliert und in den Integrations-Hinweisen angezeigt, ohne den Nutzerfluss zu blockieren.

Kann ich Webhooks auch ohne Zapier oder Make nutzen? Ja. Webhooks sind eine native Funktion — du brauchst nur eine eigene URL, die HTTPS POST annimmt.

Weiterführende Artikel

Verwandte Artikel

Support

Noch Fragen?

Unser Support hilft dir gern weiter, auf Deutsch und Englisch.

  • Im Plugin

    In Funnelforms Pro im WordPress-Menü unter Funnelforms → Support ein Ticket schicken. Die nötigen Systemdaten gehen gleich mit.

  • Per E-Mail

    Schreib uns, am besten mit der Adresse deiner Website.

    support@funnelforms.io