Package Information
Available Nodes
Documentation generating…
Documentation
n8n-nodes-confluence-advanced
Confluence Advanced — n8n-Community-Node für Confluence Data Center (Personal Access Token), Cloud vorbereitet. Seiten, komplette Seitenbäume (rekursiv), Attachments, CQL-Suche — mit vollständig interner Pagination und normalisiertem Output.
Powered by Thomas Braun
Installation
cd C:\n8n\n8n-inst\.n8n\nodes # bzw. ~/.n8n/nodes
npm install n8n-nodes-confluence-advanced
# n8n neu starten!
Credentials „Confluence API"
| Feld | Hinweis |
|---|---|
| Deployment Type | Data Center (Default) oder Cloud (experimentell) |
| Base URL | nur der Host, z. B. https://confluence.firma.de — ohne /rest/api; versehentliche Suffixe werden automatisch entfernt |
| Authentication | Personal Access Token (Bearer, Data Center) · Basic/API-Token (Cloud) · Custom Bearer |
| Ignore SSL Issues | für interne CAs (Default: aus) |
| Request Timeout | Default 30000 ms |
Der Credential-Test prüft Erreichbarkeit, Authentifizierung und dass wirklich die Confluence-API antwortet (erkennt SSO-/HTML-Antworten).
Ressourcen & Operationen (V1)
- Page: Get · Get Many (Filter/CQL) · Get Children · Get Descendants (rekursiv) · Create · Update · Delete
- Attachment: List · Get · Download · Upload · Update (neue Version) · Delete · Download From Page Tree
- Search: Simple (Space/Titel/Typ/Label → CQL wird gebaut) oder Advanced CQL
- Space: Get · Get Many
Seiten-Auswahl (alle drei Nutzungsszenarien)
Das Page-Feld ist ein Resource Locator mit drei Modi:
- From List — Suche mit Breadcrumb (
DEMO / Wiki Root / 2025 / …), gleichnamige Seiten unterscheidbar - By ID —
{{ $json.pageId }}für dynamische Workflows - By URL —
…viewpage.action?pageId=…,…/pages/<id>/…,…/spaces/KEY/pages/<id>werden automatisch extrahiert
Get Descendants (Kernfunktion)
Root wählen → Include Root, Maximum Depth (0 = unbegrenzt), optional Inhalt/Labels/Attachments je Seite. Output standardmäßig ein Item pro Seite mit:
{ "pageId": "…", "parentPageId": "…", "rootPageId": "…", "depth": 1,
"path": ["Wiki Root", "2025"], "title": "2025", "spaceKey": "…", "version": 14, "url": "…" }
Continue on Page Error (Default an): nicht lesbare Seiten werden als { success:false, error:{statusCode,message} }-Item ausgegeben, der Rest läuft weiter. Alternativ Single Tree als verschachteltes JSON.
Update ohne Versionsstress
Modi Replace / Append / Prepend — der Node holt die aktuelle Version, mischt den Inhalt, zählt die Version hoch und wiederholt bei einem 409-Versionskonflikt automatisch einmal mit frischer Version.
Body-Repräsentation: Storage oder ADF (ab 0.3.0, Auto-Erkennung ab 0.3.1)
Page → Create/Update kennen zwei Body-Formate:
| Repräsentation | Für | Body-Inhalt |
|---|---|---|
| Automatisch erkennen (Default) | beide | ADF-JSON ({"type":"doc"…}) → ADF, sonst Storage-XHTML |
| Storage-Format | Data Center + Cloud | Confluence-XHTML |
ADF (atlas_doc_format) |
nur Cloud | JSON des Atlassian Document Format |
ADF ist das native Format des Cloud-Editors. Nur darin kommen Tabellen-Spaltenbreiten
(colwidth) und das Tabellen-Layout verbindlich an — Storage-XHTML wird von der Cloud
konvertiert und verliert diese Angaben. Bei Update mit Append/Prepend werden die
ADF-Blöcke an den bestehenden ADF-Inhalt der Seite angehängt bzw. vorangestellt.
Ungültiges JSON wird vor dem Request mit klarer Meldung abgewiesen.
Passende Quelle: der Report Generator (n8n-nodes-report-generator, Format
„Confluence ADF") liefert {{ $json.report.adfJson }}.
Attachments
Upload/Update als Multipart mit automatischem X-Atlassian-Token: no-check. Download From Page Tree: alle Dateien eines Seitenbaums (Glob-Filter wie *.pdf, *.docx), eine Datei = ein Item mit Binary — ideal für Wissensbasis → Text-Extraktion → Embeddings.
Fehlerbilder
Deutsche Klartextmeldungen für 401/403/404/409/429/5xx — inklusive des Confluence-Klassikers, dass fehlende Leserechte als 404 maskiert werden. 429 wird mit Retry-After-Backoff einmal automatisch wiederholt.
Entwicklung
npm install && npm run build && npm test # 29 Tests gegen eingebauten Mock-Confluence-Server (kein Netz nötig)
Lizenz
Proprietäre Lizenz (siehe LICENSE): Installation/Betrieb in eigenen n8n-Instanzen erlaubt; die Kennzeichnung „Powered by Thomas Braun" und die Copyright-Hinweise dürfen nicht entfernt werden (wesentliche Bedingung).
© 2026 Thomas Braun
