YMC AG
Directus API in Directus aufrufen: Der Webhook-Trick
Directus API in Directus aufrufen: Der Webhook-Trick
Entdecken Sie den Webhook-Trick in Directus Flows für effizientes API-Management! So lassen sich alle Funktionen der Directus API direkt in Directus aufrufen, um leistungsstarke Web-Anwendungen zu bauen.
Avatar
Simon SchneebergerSoftware Engineer, YMC

Lesezeit: ca. 2 Minuten

vor 3 Monaten

Directus

Directus bietet eine Fülle an Möglichkeiten zur Automatisierung und Datenverarbeitung, insbesondere durch den Einsatz von Flows. Ein Flow in Directus besteht aus einem Auslöser (Trigger), gefolgt von einer Reihe von Operationen, die es ermöglichen, Daten zu verwalten, E-Mails zu senden, In-App-Benachrichtigungen zu versenden und vieles mehr. Ein besonders nützlicher Ansatz ist die Verwendung der Webhook-Operation innerhalb eines Flows, um mit einer API zu kommunizieren. Indem man auf die von Directus eigene API zugreift, stehen einem noch mehr Funktionen von Directus zur Verfügung​​.

Jeder Flow in Directus erstellt seine eigene Datenkette (Data Chain), auf die jede Operation Zugriff hat. Jede Operation fügt dieser Datenkette nach ihrer Ausführung einen Wert hinzu. Dies bedeutet, dass Sie dynamisch auf Daten aus einer vorherigen Operation in der aktuellen Operation zugreifen können, was die Flexibilität und Effizienz bei der Verwendung von Flows erhöht​​.

Für Webentwickler, die Directus effektiv nutzen möchten, besteht ein cleverer Trick darin, die Webhook-Operation im Flow zu verwenden. Dies ermöglicht es, von innerhalb eines Directus Flow auf dessen eigene API zuzugreifen. Der Schlüssel dazu liegt im Header: Indem Sie die Autorisierung mit {{$trigger.headers.authorization}} setzen, erhalten Sie die Berechtigung, mit dem Benutzer zu agieren, der den Flow gestartet hat. Dies öffnet Türen zu weiteren Funktionen von Directus, die als Operationen nicht angeboten werden. Unter anderem könnte man so den utilities-Endpunkt aufrufen und eine CSV-Datei exportieren. Der Nachteil ist allerdings, dass der Umweg über die eigene API eine gewisse Latenz mit sich bringt.

Wenn die zur Verfügung stehenden Operationen von Flows und die Funktionen der Directus-API per Webhook nicht ausreichen, können Sie Ihre eigenen benutzerdefinierten Operationen entwickeln, um spezifische Anwendungsfälle umzusetzen. Dafür erstellen Sie eine eigene Extension mit Javascript/NodeJS und installieren Sie die Operation z. B. als NPM-Package.

Dieses hohe Mass an Anpassungsfähigkeit und Kontrolle macht Directus zu einem mächtigen Werkzeug für Webentwickler, die eine effiziente und flexible Lösung für ihre API-Management-Anforderungen suchen.