Erweiterte Workflows mit Webhooks erstellen

Wer kann diese Funktion benutzen?

Workflows sind automatisierte mehrstufige Aufgaben oder Prozesse, die direkt in Slack ausgeführt oder mit anderen Tools und Diensten verbunden werden können. Workflows in Slack können so einfach oder komplex sein, wie du es wünschst, und erfordern normalerweise nicht, dass du neuen Code schreiben musst.

Wenn du ein Entwickler bist oder Erfahrungen mit Programmcode hast, möchtest du vielleicht einen Workflow mit einem Webhook erstellen, der durch ein Ereignis in einem externen Dienst (wie ein internes Tool, das deine Firma verwendet) ausgelöst wird.

Was du brauchst, um loszulegen

  • Erfahrung beim Senden von HTTP-Anfragen über die Befehlszeile oder mit einem anderen Tool
  • Wissen über eingehende Webhooks. Wenn du eine Orientierungshilfe brauchst, kannst du dir in der Slack-API-Dokumentation Tipps holen oder einen Entwickler um Hilfe bitten.

Die folgenden Themen erwarten dich

  • So konfigurierst du einen Webhook, um einen Workflow in Slack auszulösen
  • So erstellst du benutzerdefinierte Variablen, um sie in Workflow-Schritten zu verwenden
  • So testest du deinen Workflow vor der Veröffentlichung

Hinweis: Inhaber und Administratoren können den Zugriff auf die Erstellung von Workflows mit Webhooks einschränken. Wenn dir diese Option nicht im Workflow-Builder angezeigt wird, bitte einen Inhaber oder Administrator um Hilfe.

Tipp: Falls du deine Kenntnisse bezüglich des Themas, wie man einen Workflow einrichtet und einen Auslöser auswählt, auffrischen möchtest, findest du die erforderlichen Informationen unter Einen Workflow in Slack einrichten.


Workflow-Einrichtung

Webhook-Workflows – Grundlagen

Alle Workflows in Slack werden durch einen Auslöser gestartet. Um einen Workflow mit einem Webhook auszulösen, konfigurierst du den Webhook derart, dass dein Workflow in Slack gestartet wird, wenn ein von dir angegebenes Ereignis in einem anderen Dienst eintritt. Zum Beispiel könntest du einen Workflow zur Problemanalyse und -lösung einrichten, der eine Nachricht an Slack sendet, wenn es ein Problem mit deiner Website oder deinem Dienst gibt und ein Vorfall vorliegt.

Deinen Webhook konfigurieren

Der externe Dienst, den du zum Erstellen und Konfigurieren deines Webhook wählst, muss dir die Möglichkeit bieten, eine HTTP-POST-Anforderung an Slack zu stellen, sobald bestimmte Ereignisse eintreten. Slack generiert eine eindeutige Anfrage-URL für deinen Workflow, sobald du diesen veröffentlichst, und du kannst deinen Webhook so konfigurieren, dass Informationen über den HTTP-Anfragetext an Slack übergeben werden. Alle Daten, die dein Webhook an Slack sendet, können in anschließenden Workflow-Schritten durch die Erstellung von Variablen referenziert werden.

Tipp: Wenn du nicht genau weißt, wie du deinen Webhook konfigurieren sollst, empfehlen wir dir, einen Entwickler aus deinem Team um Hilfe zu bitten oder auf die Support-Dokumentation des von dir genutzten Dienstes wie Postman oder Zapier zurückzugreifen.

Benutzerdefinierte Variablen erstellen

Du kannst bis zu 20 Variablen hinzufügen, wenn du Daten aus einem anderen Service in Slack überträgst. Du kannst auch Slack-spezifische Informationen wie Anzeigenamen oder E-Mail-Adressen in Schritte einfügen, die du zu deinem Workflow hinzufügst.

Du kannst im Workflow-Builder ein Schlüssel-Wert-Paar als textbasierte Variable hinzufügen, um benutzerdefinierte Variablen zu erstellen. Sobald du eine Variable hinzufügst, siehst du eine Vorschau des HTTP-Textes, so dass du sicherstellen kannst, dass die Werte mit den JSON-Outputs des anderen Dienstes, mit dem du dich über deinen Webhook mit Slack verbindest, übereinstimmen. Bitte beachte, dass es derzeit nicht möglich ist, verschachtelte JSON-Strukturen in Workflow-Variablen zu verwenden.

Im nachstehenden Beispiel würde der Workflow fehlschlagen, wenn Benutzer, Schweregrad und Vorfall-Beschreibung nicht zusammen mit deiner Webhook-Anforderung gesendet würden. 

Webhook-Konfiguration im Workflow-Builder zeigt die Webhook-URL und benutzerdefinierte Variablen

Tipp: Wenn du zu irgendeinem Zeitpunkt Variablen hinzufügen, entfernen oder ändern musst, dann öffne deinen Workflow im Workflow-Builder. Klicke anschließend auf Bearbeiten neben Webhook, um die Änderungen vorzunehmen. Zudem musst du sicherstellen, dass alle Änderungen an Variablen in dem externen Dienst, von dem aus deine Webhook-Anfrage gesendet wird, übernommen werden.

URL der Web-Anfrage abrufen

Wenn du deinen Workflow veröffentlichst, generiert Slack eine eindeutige Anfrage-URL, die du deinem Webhook hinzufügen kannst, um sicherzustellen, dass er den von dir eingerichteten POST an den richtigen Channel in Slack sendet. Anfrage-URLs beginnen mit https://hooks.slack.com/workflows und enden mit einer zufällig erstellten Zeichenfolge.

Achte darauf, deine Anfrage-URL geheim zu halten. Alle, die über den Link verfügen, können deinen Workflow auslösen.

Hinweis: Webhook-Workflows sind auf eine Anfrage pro Sekunde begrenzt. Mehr Infos zu Begrenzungen erhältst du auf der Slack-API-Website.


Setzen wir das Gelernte in die Praxis um

Schritte hinzufügen

Sobald du deinen Webhook konfiguriert und alle Variablen erstellt hast, die du verwenden möchtest, kannst du neue Schritte zu deinem Workflow hinzufügen

  1. Öffne deinen Workflow im Workflow-Builder. 
  2. Klicke auf Schritt hinzufügen
  3. Wähle aus, welche Art von Schritt du hinzufügen möchtest, und folge dann den Eingabeaufforderungen, um den Schritt anzupassen.


Teste deinen Workflow

Vor der Veröffentlichung deines Workflows in einem Channel, den die Mitglieder deines Workspace aktiv nutzen, kannst du den ersten Schritt zur Veröffentlichung in einem Test-Channel einrichten.

  1. Sende einen POST an die Anfrage-URL deines Workflows und gehe die Schritte durch, um sicherzustellen, dass alles ordnungsgemäß funktioniert.
  2. Gehe zurück zum Workflow-Builder und aktualisiere den ersten Schritt deines Workflows, um in deinem bevorzugten Channel zu posten, und veröffentliche dann die Änderungen.


Webhook-URLs regenerieren

Falls die URL eines Webhooks offengelegt wurde oder aus einem anderen Grund geändert werden muss, befolge die unten stehenden Schritte: 

  1. Öffne den Workflow-Builder und wähle den Workflow aus der Liste aus.
  2. Klicke auf Bearbeiten neben Webhook.
  3. Wähle URL regenerieren aus und speichere deine Änderungen.

Hinweis: Wenn du eine Webhook-URL regenerierst, wird die Verbindung zwischen deinem Workflow in Slack und dem anderen Service unterbrochen. Aktualisiere den anderen Service mit deiner neuen URL, damit weiterhin alles reibungslos funktioniert.