n8n Unleashed: Ultimative Workflow-Automatisierung

Langweilige und wiederkehrende Prozesse schnell und einfach automatisieren 👇

n8n Unleashed: Ultimative Workflow-Automatisierung
Photo by EJ Strat / Unsplash

Entfessle die Macht von n8n 🔥

Jeder kennt sie, diese stupiden Aufgaben, die immer wieder auf die selbe Arbeit und Weise zu erledigen sind. Nicht nur zu Zeigen von KI ist das Thema relevant, sondern auch vorher schon.

n8n nimmt sich genau dieser Thematik an. Leidige und stupide arbeiten kann es gezielt und sehr gut automatisieren - mit ein bisschen Hirnschmalz versteht sich. Hierzu bietet es eine Vielzahl Möglichkeiten und Freiheiten an, selbst die komplexesten Dinge zu automatisieren. Ein Traum für jeden Nerd.

n8n im Handumdrehen: Installation leicht gemacht mit Docker 📦

Die Einfachheit der Installation ist entscheidend, und n8n enttäuscht hier keineswegs. Das besondere ist, dass n8n lokal im Netzwerk läuft und es, sofern man es nicht will, keine Daten nach außen trägt.

Wer schon bereits einen Docker-Host laufen hat, kann ganz einfach folgenden Code ausführen und schon rennt n8n:

docker volume create n8n_data
docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
⚠️
Auf keinen Fall sollte man vergessen, das Volume zu mappen. Denn ohne Mapping sind die Daten nach einem Neustart des Containers unwiederbringlich weg!

Über den Browser kann man dann ganz easy, via localhost:5678 darauf zugreifen:

Hier tippt Ihr dann einfach Eure Daten ein und bekommt auch schon direkt das wunderschöne Dashboard zu Gesicht:

Wie geht es nun weiter? 🤔

Im Grunde ist die Nutzung sehr simpel gehalten. Die Oberfläche in der vermutlich am meisten gearbeitet wird, ist die "Workflow"-Page. Hier könnt Ihr Nodes einfügen und wild mit einander verbinden.

Jeder Workflow muss natürlich einen Start haben. Hier gibt es so einige Nodes, aus den man auswählen kann:

  • Webhooks
  • AppEvent
  • Schedule
  • Manuell
  • Von einem anderen Workflow
  • Dateiänderungen
  • und noch viele mehr

Das Schöne daran ist, dass hier eigentlich keine Wünschen offen bleiben dürften. Und falls doch, lässt sich n8n auch mit Community-Nodes sehr einfach über eine Installation erweitern. Einen Überblick an Community-Nodes findet Ihr hier:

keywords:n8n-community-node-package - npm search

Ein Beispiel-Workflow 💧

Als kleines Beispiel verwenden wir einen manuelle Einstieg in einen Workflow und rufen uns von der NASA ein wahlloses Bild ab. Hierzu müssen wir uns vorab einen API-Zugang auf der NASA-Seite anlegen.

NASA Open APIs

Ein ganz großer Vorteil von n8n ist, dass hier sehr viele generelle Nodes, wie z.B. API-Anfragen, bereits schon abgedeckt und out-of-the-box mit ausgeliefert werden. Selbstverständlich sind auch so generelle Dinge dabei wie Kontrollstrukturen (ifs, switches, etc.) oder das Anlegen, Bearbeiten und Löschen von Files. Selbst für Excel oder CSV sind dort Nodes integriert.

Viele App-Hersteller bieten auch schon eigene Nodes direkt im Standard von n8n an, so z.B. Home Assistant oder hunderte andere Apps und wer da nichts findet, kann sogar seine eigenen Nodes bauen mit NodeJS.

Build a node | n8n Docs
Documentation for n8n, a workflow automation platform.

In einem späteren Artikel (den ich Euch verlinken werde, habe ich auch genau das getan).

Unser erster Node 🪢

Wenn wir nun den API-Key der NASA haben, können wir auch schon unseren ersten "richtigen" Node einfügen, nämlich einen HTTP-Request. Das Fenster ist recht simpel nach Bedeutung aufgeteilt. Links, habt Ihr die Daten vor dem jetzigen Node, in der Mitte den aktuellen Node und rechts die Ausgabe des Nodes.


Wenn dich das Thema APIs interessiert, empfehle ich dir einen kleinen Ausflug zu meinem Artikel über APIs und dem Austauschformat JSON 👇

REST-APIs verstehen und nutzen
APIs: Allgegenwärtig und jeder nutzt sie , wenn auch in direkt. Aber wofür sind sie da und wie funktionieren sie? Wir klären auf 💡

Als Ziel für unseren HTTP-Request nehmen wir den APOD-Endpunkt (Astronomy picture of the day):

GET https://api.nasa.gov/planetary/apod

Da wir einen API-Key bekommen haben, müssen wir uns nun ansehen, wie die NASA-API mit der Authentifizierung umgeht. Laut Doku, müssen wir den via Query-String mitgeben:

Über den Query-String können wir auch noch unsere Suche etwas verfeinern, aber das lassen wir für heute 🫡

Unser HTTP-Request sollte nun so aussehen:

Wenn wir Ihn ausführen lassen mit Execute node sehen wir auch auf der rechten Seite das Ergebnis:

Wie wir sehen, bekommen wir aber offenbar von der API kein direktes Bild als File, sondern nur einen Link, den wir abrufen müssen. Auch das ist kein überhaupt kein Problem. Wirt nehmen uns einfach einen zweiten HTTP-Request und rufen uns dynamisch den Link ab und lassen n8n das Bild einfach erzeugen.

Da wir ja nun bereits Daten aus dem vorherigen Node haben, werden uns diese auch direkt angezeigt bei einem neuen Node, nämlich auf der linken Seite:

Jetzt wird es nämlich sehr cool: Wir können die Felder einfach auf unseren HTTP-Request per Drag and Drop ziehen und so unseren Wert aus der Rückgabe des ersten HTTP-Requests in unserem neuen Node verwenden:

Wenn wir jetzt den Node ausführen lassen, sehen wir, dass wir nun das binäre Bild haben:

Und damit können nun tun und lassen was wir mögen. Entweder wir verarbeiten es weiter, speichern es ab, laden es woanders hoch und und und. Hier sind (fast) keine Grenzen gesetzt.

Die Grenzen von n8n 🧱

Natürlich hat auch dieses Tool seine Grenzen. Die Grenzen hängen jedoch sehr stark davon ab, wie fit man selbst ist. Technisch, hat es eigentlich gar keine Grenzen, da es sehr gut erweiterbar ist durch eigens programmierte Nodes, einen Code-Node mit dem man auch JavaScript programmieren kann (neuerdings sogar Python). Es gibt Leute, die bauen sich die besten Workflows zusammen, die super komplex sind und gefühlt 300 Milliarden Nodes haben.

Im Prinzip ist n8n ein No-Code-System, mit dem man programmieren kann, ohne programmieren zu müssen. Simples "Mausschubsen" genügt dort.

Nun kommt aber das Aber:
Man muss sich zwingend Zeit nehmen, um sich mit n8n und der Fülle an Möglichkeiten auseinanderzusetzen. Tut man das nicht, kommt man schnell an seine persönlichen Grenzen.

Danke an Florian, der mir dieses Tool gezeigt hat und mit mir auch schon etliche Stunden an Schmerzen geteilt hat 😀

Florian Wartner // Developer, Father, Nerd
Explore the world of smart homes through my blog. Read articles on the latest smart home technology, get tips and tricks for making your home smarter.

Fazit 💡

Aller Einstieg ist schwer, aber die Lernkurve von n8n ist für simple Dinge recht flach und lässt hier auch schnell mit Erfolgen glänzen.

Mit n8n kann man eigentlich alles Automatisieren, egal ob es das Cross-Posten von Blog-Artikeln auf Social-Media ist, sich Statistiken von diversen APIs zieht und diese weiter "verwurstet" oder ob man ziemlich fancy Sachen damit machen will. Die Fülle an Nodes dürfte eigentlich dazu geeignet sein, dass man damit einfach alles machen kann, was man sich wünscht. Und selbst wenn die Fülle nicht ausreicht, erweitert man n8n eben, durch Community-Nodes, eigenen Code oder sogar einem eigenen Node, den man dann wiederum der Community bereitstellt.

Ich möchte es ehrlich gesagt nicht mehr missen, auch wenn ich mich so in der "Findungsphase" befinde. Für mich birgt es aber ein unheimliches Potential meine täglichen Arbeiten einfach "wegzuautomatisieren".

Welche Dinge würdet Ihr automatisieren? Wie könnte Euch n8n im Alltag helfen? Lasst es mich in den Kommentaren wissen 👇