n8n-Workflows
AI-Corporate kann n8n-Workflows über einen Produktions-Webhook starten. Das ist nützlich, wenn du außerhalb von AI-Corporate einen automatisierten Prozess starten möchtest, zum Beispiel das Anlegen einer Aufgabe, das Aktualisieren eines CRM-Datensatzes, das Starten eines Reporting-Flows oder das Weiterleiten von Formulardaten an ein anderes System.
Beispiel: Nachrichtenartikel auf der Unternehmenswebsite
Angenommen, die Organisation hat einen n8n-Workflow erstellt, der einen Nachrichtenartikel auf der WordPress-Website des Unternehmens veröffentlicht. In AI-Corporate füllst du dann nur einen kurzen Text ein, zum Beispiel ein paar Sätze über einen Kundenfall, ein Ereignis oder einen internen Meilenstein. Mit diesem Text startest du den Workflow in n8n.
Der n8n-Workflow kann danach zum Beispiel:
- Aus dem kurzen Text mit einem LLM-Node und einer Prompt, die gut zum Ton der Organisation passt, einen sauberen Entwurfstext erstellen.
- Mit einem zweiten LLM-Node eine passende Illustration erstellen lassen, zum Beispiel in den Markenfarben und in einem erkennbaren illustrativen Stil.
- Den Text und das Bild als Blogbeitrag vorbereiten oder auf der WordPress-Website veröffentlichen.
So arbeiten AI-Corporate und n8n zusammen: In AI-Corporate wählt der Benutzer den Workflow aus und füllt die benötigten Informationen aus. n8n führt danach die automatisierten Schritte aus und sorgt dafür, dass der Nachrichtenartikel sauber auf der Website landet.
Was macht diese Integration?
Du startest einen n8n-Workflow aus der Workflow-Übersicht. Nur der Produktions-Webhook, POST und Header Auth sind verpflichtend. Felder und Rückmeldungen aus n8n sind optional und können unabhängig voneinander konfiguriert werden.
- Hat der Workflow keine Felder, wird der Webhook sofort aufgerufen.
- Hat der Workflow Felder, öffnet sich zuerst ein Formular. Der Benutzer füllt die Felder aus und startet danach den Workflow mit dem Button.
- Die eingegebenen Werte werden als JSON in einem POST-Request an den n8n-Webhook gesendet.
- Ohne Rückmeldungen bestätigt AI-Corporate nur, dass der Workflow gestartet ist und in n8n weiterläuft. Das Fenster zeigt keinen Spinner und kann direkt geschlossen werden.
- Wenn dies bei der Registrierung aktiviert wurde, kann der Workflow Zwischenstände oder das Ende an AI-Corporate zurückmelden.
- Wenn eine Genehmigung bei der Registrierung aktiviert wurde, kann der Benutzer direkt in AI-Corporate eine Wahl treffen. n8n fährt danach ab dem wartenden Schritt fort.
n8n-Workflow in AI-Corporate anlegen
Ein Administrator registriert den Workflow wie folgt:
- Gehe zu Assistenten.
- Öffne den Tab Workflow-Assistenten.
- Klicke in der Karte oben auf Neuer Workflow und wähle n8n workflow.
- Fülle den Namen des Workflows und die n8n-Produktions-URL aus.
- Richte Header authentication mit einem Headernamen und einem geheimen Headerwert ein.
- Aktiviere unter Rückmeldungen aus n8n nur die Teile, die tatsächlich in diesem n8n-Workflow gebaut sind: Fortschritt, Genehmigung und/oder das Ende des Workflows.
- Füge optional die Felder hinzu, die im POST-Request mitgesendet werden sollen.
- Speichere den Workflow.
Alle drei Rückmeldeoptionen sind standardmäßig deaktiviert. Wenn du später Callbacks oder einen Genehmigungsschritt in n8n hinzufügst, aktualisiere auch die Registrierung in AI-Corporate. Dadurch weiß der Dialog, ob er nur eine Startbestätigung anzeigen oder auf weitere Signale warten soll.
Felder
- Felder sind optional.
- Jedes Feld hat einen Feldnamen und einen Typ.
- Unterstützte Feldtypen sind Kurztext, Langtext, Zahl, Ja/Nein, Datum, eine Auswahl und mehrere Auswahlmöglichkeiten.
- Bei Eine Auswahl und Mehrere Auswahlmöglichkeiten fügst du die verfügbaren Optionen hinzu. Eine Auswahl wird als kompakte Auswahlliste angezeigt; Mehrere Auswahlmöglichkeiten zeigt Kontrollkästchen. Der gewählte Wert oder die gewählten Werte werden im JSON-Body mitgesendet.
- Pflichtfelder müssen ausgefüllt sein, bevor der Workflow gestartet werden kann.
- Der Feldname wird der Key im JSON-Body, der an n8n gesendet wird.
Kompatiblen Workflow in n8n erstellen
- Erstelle in n8n einen neuen Workflow.
- Füge als ersten Node einen Webhook hinzu.
- Gib diesem Node exakt den Namen Start workflow. Die Beispielausdrücke unten verwenden diesen Namen.
- Setze HTTP Method auf POST.
- Wähle Authentication: Header Auth und verwende denselben Headernamen und denselben geheimen Wert wie in AI-Corporate.
- Setze Respond oder Response Mode auf Immediately.
- Kopiere die Production URL in das Feld n8n productie-url in AI-Corporate. Verwende nicht die Test-URL mit
/webhook-test/. - Aktiviere den Workflow.
Die empfangenen Daten stehen unter body; die technischen Integrationsdaten stehen unter body.integration. Entferne diese nicht in einem Edit Fields-, Set- oder Code-Node.
Beispiel des JSON-Body
Wenn du Felder mit den Namen prompt, klantnaam, doelgroepen und datum definierst, empfängt n8n zum Beispiel diesen JSON-Body. AI-Corporate fügt das integration-Objekt automatisch hinzu.
{
"prompt": "Erstelle eine kurze Zusammenfassung der Anfrage.",
"klantnaam": "Beispielorganisation",
"doelgroepen": ["Mitarbeitende", "Kunden"],
"datum": "2026-09-22",
"integration": {
"runId": "chat-document-id",
"tenant": "default",
"callbackUrl": "https://europe-west1-ai-corporate.cloudfunctions.net/n8nWorkflowCallback",
"callbackToken": "temporäres-token-für-diese-ausführung"
}
}
Das Callback-Token gehört zu einer einzigen Ausführung. Speichere es nicht in Logs, fester Konfiguration oder anderen Systemen.
Optional: Fortschritt und Abschluss zurückmelden
AI-Corporate kann nur anzeigen, was n8n zurückmeldet. Verwende diese Callbacks nur, wenn du bei der Registrierung Zwischenfortschritt melden und/oder Das Ende des Workflows melden aktiviert hast.
Richte jeden Callback-Node wie folgt ein:
-
Wähle Method: POST.
-
Klicke bei URL auf Expression und füge ein:
{{ $('Start workflow').first().json.body.integration.callbackUrl }} -
Wähle Authentication: None.
-
Aktiviere Send Headers und füge die folgenden Header hinzu.
-
Aktiviere Send Body und wähle Body Content Type: JSON sowie Specify Body: Using JSON.
Verwende diese Header:
Authorization: Bearer {{ $('Start workflow').first().json.body.integration.callbackToken }}
Content-Type: application/json
Sende zum Beispiel diese Nachricht, wenn ein Schritt beginnt:
{
"tenant": "{{ $('Start workflow').first().json.body.integration.tenant }}",
"runId": "{{ $('Start workflow').first().json.body.integration.runId }}",
"eventId": "dokument-erstellen-gestartet",
"type": "progress",
"executionId": "{{ $execution.id }}",
"step": {
"id": "dokument_erstellen",
"label": "Dokument erstellen"
},
"message": "Das Dokument wird erstellt."
}
- Verwende für jedes Ereignis innerhalb derselben Ausführung eine eindeutige
eventId. - Verwende ein klares deutsches
step.label; dieser Text wird in der App angezeigt. - Wenn du Das Ende des Workflows melden aktiviert hast, sende am Ende immer
type: "completed",type: "failed"odertype: "rejected". - Füge bei
completedoptional einoutput-Objekt mit dem Ergebnis hinzu. - Sende bei
failedeine verständliche Fehlermeldung mit. Die Ausführung stoppt dann auch in der App.
Optional: Genehmigung in der App anfordern
Verwende einen n8n Wait-Node mit On Webhook Call, wenn der Workflow erst nach einer Entscheidung fortfahren darf. Sende vor dem Wait-Node einen Callback mit type: "approval_required":
Stelle den Wait-Node auf Resume: On Webhook Call, HTTP Method: POST und Authentication: Header Auth ein. Wähle dieselbe Header-Auth-Credential wie bei Start workflow. Füge nach dem Wait-Node einen Switch-Node hinzu und prüfe darin {{ $json.body.decision }}.
{
"tenant": "{{ $('Start workflow').first().json.body.integration.tenant }}",
"runId": "{{ $('Start workflow').first().json.body.integration.runId }}",
"eventId": "dokument-prüfen",
"type": "approval_required",
"executionId": "{{ $execution.id }}",
"step": {
"id": "dokument_pruefen",
"label": "Dokument prüfen"
},
"approval": {
"question": "Darf der Workflow fortfahren?",
"context": "Prüfe zuerst das generierte Dokument.",
"resumeUrl": "{{ $execution.resumeUrl }}",
"choices": [
{ "value": "approve", "label": "Genehmigen" },
{ "value": "reject", "label": "Ablehnen" }
]
}
}
Der Benutzer sieht die Auswahlmöglichkeiten im Ausführungsfenster. Nach einer Auswahl erhält der Wait-Node unter anderem decision. Verwende danach zum Beispiel einen Switch-Node, um den richtigen Verlauf zu bestimmen.
Ein Auswahlwert darf nur Buchstaben, Zahlen, _ und - enthalten. Das Label darf normalen lesbaren Text enthalten.
Produktions-Callback-URL festlegen
Die Produktions-Callback-URL für AI-Corporate ist:
https://europe-west1-ai-corporate.cloudfunctions.net/n8nWorkflowCallback
Füge diese URL nicht als festen Text in jeden Callback-Node ein. Wähle im URL-Feld des HTTP Request Nodes Expression und verwende:
{{ $('Start workflow').first().json.body.integration.callbackUrl }}
AI-Corporate liefert damit bei jedem Start automatisch die richtige Produktions-URL. Die feste URL oben verwendest du, um beim Testen zu prüfen, ob der Ausdruck auf AI-Corporate verweist und nicht auf AI-School oder AI-Public.
Die Callables triggerCustomN8nWorkflow, triggerN8nWorkflow und resumeN8nWorkflow werden von der App selbst aufgerufen. Diese URLs musst du in n8n nicht einrichten.
Fehler behandeln
Sende erwartete Fehler mit einem Callback vom Typ failed zurück. Erstelle für unerwartete Node-Fehler zusätzlich einen zentralen Error Workflow:
-
Erstelle einen neuen Workflow mit einem Error Trigger-Node.
-
Füge danach einen HTTP Request-Node mit Method: POST hinzu.
-
Trage bei URL diese feste Produktions-URL ein:
https://europe-west1-ai-corporate.cloudfunctions.net/n8nWorkflowExecutionFailed -
Wähle Authentication: None und füge den Header
n8n-handihow-namemit dem geheimen Standardwert des Plattformadministrators hinzu. -
Wähle einen JSON-Body und füge ein:
{
"executionId": "{{ $json.execution.id }}",
"workflowId": "{{ $json.workflow.id }}",
"workflowName": "{{ $json.workflow.name }}",
"lastNode": "{{ $json.execution.lastNodeExecuted }}",
"message": "{{ $json.execution.error.message }}"
}
- Aktiviere den Error Workflow.
- Öffne die Einstellungen des normalen Workflows und wähle ihn unter Error Workflow aus.
Sende direkt nach Start workflow mindestens einen Callback mit executionId: "{{ $execution.id }}". Nur dann kann AI-Corporate einen unerwarteten Fehler der richtigen Ausführung zuordnen.
Wichtige Einschränkungen
- Nur Webhook-Trigger werden unterstützt.
- Nur Produktions-Webhook-URLs werden unterstützt.
- Test-Webhook-URLs mit
/webhook-test/werden abgelehnt. - Nur POST wird unterstützt.
- Nur generische Header-Authentifizierung wird unterstützt.
- Der Headerwert wird in der Anwendung als geheim behandelt.
- Callback-Tokens und Resume-URLs werden nur serverseitig verarbeitet und sind für Benutzer nicht direkt verfügbar.
- Der Tenant wird serverseitig aus dem angemeldeten Benutzer bestimmt, nicht aus einem Wert, den der Browser mitsendet.
Probleme lösen
- 404 oder Webhook nicht registriert: Aktiviere den Workflow in n8n und verwende die Produktions-URL.
- Authentifizierungsfehler: Prüfe, ob Headername und Wert in beiden Systemen exakt gleich sind.
- Fehlende Daten: Prüfe, ob die Feldnamen in der Anwendung mit den Keys übereinstimmen, die n8n erwartet.
- Kein Request in n8n: Prüfe, ob der Workflow mit einem Webhook-Trigger beginnt und POST verwendet.
- Das Ausführungsfenster läuft weiter: Wenn du Das Ende des Workflows melden aktiviert hast, prüfe, ob n8n einen letzten
completed,failedoderrejected-Callback sendet. Erwartest du keine Rückmeldungen, deaktiviere bei der Registrierung alle drei Optionen. - Kein Fortschritt sichtbar: Prüfe, ob Zwischenfortschritt melden bei der Registrierung aktiviert ist, ob das
integration-Objekt erhalten bleibt und ob jeder Callback eine eindeutigeeventIdhat. - Genehmigungsbuttons funktionieren nicht: Prüfe den Wait-Node,
resumeUrl, die Header-Authentifizierung und die erlaubten Zeichen inchoices[].value.