Webhooks
Ein Webhook ist ein HTTP-Aufruf, der von einem Ereignis ausgelöst wird. Sie können Webhooks verwenden, um Instant Trigger-Module zu aktivieren. Jede Anwendung, die mit dem Internet verbunden ist und HTTP-Anfragen zulässt, kann Webhooks an Adobe Workfront Fusion senden.
Zugriffsanforderungen
Sie müssen über folgenden Zugriff verfügen, um die Funktion in diesem Artikel verwenden zu können:
table 0-row-2 1-row-2 2-row-2 3-row-2 layout-auto html-authored no-header | |
---|---|
Adobe Workfront-Paket | Beliebig |
Adobe Workfront-Lizenz |
Neu: Standard Oder Aktuell: Arbeit oder höher |
Lizenz für Adobe Workfront Fusion** |
Aktuell: Keine Workfront Fusion-Lizenzanforderung. Oder Legacy: Workfront Fusion für Arbeitsautomatisierung und -integration |
Produkt |
Neu:
Oder Aktuell: Ihr Unternehmen muss Adobe Workfront Fusion erwerben. |
Weitere Informationen zu den Informationen in dieser Tabelle finden Sie unter Zugriffsanforderungen in der Dokumentation.
Informationen zu Adobe Workfront Fusion finden Sie unter Adobe Workfront Fusion Lizenzen.
Verwenden eines Webhooks in Workfront Fusion
So verwenden Sie einen Webhook, um eine App mit Workfront Fusion zu verbinden:
-
Fügen Sie das Modul Webhooks >Custom Webhook Instant Trigger zu Ihrem Szenario hinzu.
-
Klicken Sie Add neben dem Feld Webhook und geben Sie einen Namen für den neuen Webhook ein.
-
(Optional) Klicken Sie auf Advanced Settings.
-
Geben Sie im Feld IP restrictions eine kommagetrennte Liste der IP-Adressen ein, von denen das Modul Daten akzeptieren kann.
-
Save klicken
Nachdem Sie einen Webhook erstellt haben, wird eine eindeutige URL angezeigt. Dies ist die Adresse, an die der Webhook Daten sendet. Workfront Fusion validiert die an diese Adresse gesendeten Daten und gibt sie dann zur Verarbeitung im Szenario weiter.
Konfigurieren der Datenstruktur des Webhooks configure-the-webhook-s-data-structure
Um die Datenstruktur der eingehenden Payload zu erkennen, analysiert Workfront Fusion Beispieldaten, die Sie an die angezeigte Adresse senden. Sie können die Beispieldaten bereitstellen, indem Sie den Service oder die App ändern, damit dieser Service oder diese App den Webhook aufruft. Sie können beispielsweise eine Datei entfernen.
Sie können die Beispieldaten auch über das Modul HTTP > Make a request senden:
-
Erstellen Sie ein neues Szenario mit dem Modul HTTP > Make a request .
-
Konfigurieren Sie das Modul mit den folgenden Werten:
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 layout-auto html-authored no-header URL Geben Sie die URL des Webhooks ein. Diese URL finden Sie im Webhooks, das Sie zum Einrichten des Webhooks verwendet haben. Method POST Body type Raw Content type JSON (application/json) Request content Im Webhook wird unformatiertes JSON erwartet -
Öffnen Sie das Szenario mit dem Modul Webhooks in einer separaten Browser-Registerkarte oder einem separaten Fenster.
-
Klicken Sie im Modul Webhooks auf Redetermine data structure.
Sie müssen die Verknüpfung anderer Module mit dem Webhooks-Modul nicht aufheben.
-
Wechseln Sie mit dem HTTP zum Szenario und führen Sie es aus.
-
Wechseln Sie mit dem Modul Webhooks zurück zum Szenario.
Eine "Successfully determined"-Meldung bedeutet, dass das Modul die Datenstruktur erfolgreich ermittelt hat.
-
Klicken Sie auf OK , um die Datenstruktur zu speichern.
Die Elemente des Webhooks sind jetzt im Zuordnungsbereich verfügbar und können mit nachfolgenden Modulen im Szenario verwendet werden.
Die Webhook-Warteschlange
Wenn ein Webhook Daten empfängt und kein aktives Szenario diese Daten erwartet, werden die Daten in der Warteschlange gespeichert. Nachdem Sie das Szenario aktiviert haben, werden alle Pakete, die in der Warteschlange warten, sequenziell verarbeitet.
Unterstützte eingehende Datenformate
Workfront Fusion unterstützt 3 eingehende Datenformate: Query String, Form Data und JSON.
Workfront Fusion validiert alle eingehenden Daten anhand der ausgewählten Datenstruktur. Anschließend werden die Daten je nach den Einstellungen des Szenarios entweder zur Verarbeitung in der Warteschlange gespeichert oder sofort verarbeitet.
Wenn ein Teil der Daten die Validierung nicht besteht, gibt Workfront Fusion einen 400-HTTP-Status-Code zurück und gibt im Hauptteil der HTTP-Antwort den Grund an, warum die eingehenden Daten bei den Validierungsprüfungen fehlgeschlagen sind. Wenn die Validierung der eingehenden Daten erfolgreich ist, gibt Workfront Fusion den Status "200 Accepted" zurück.
Query String
GET https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>?name=<yourname>&job=automate
Form Data
POST https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>
Content-Type: application/x-www-form-urlencoded
name=<yourname>&job=automate
Mehrteilige Formulardaten
POST https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>
Content-Type: multipart/form-data; boundary=---generatedboundary
---generatedboundary
Content-Disposition: form-data; name="file"; filename="file.txt"
Content-Type: text/plain
Content of file.txt
---generatedboundary
Content-Disposition: form-data; name="name"
Workfront Fusion
---generatedboundary
Um mit multipart/form-data
codierte Dateien zu erhalten, müssen Sie eine Datenstruktur mit einem Feld vom Typ collection
konfigurieren, das die verschachtelten Felder name
, mime
und data
enthält. Das Feld name
ist ein text
und enthält den Namen der hochgeladenen Datei. Der mime
ist ein text
und enthält eine Datei im MIME-Format. Das Feld data
ist vom buffer
Typ und enthält Binärdaten für die übertragene Datei.
Weitere Informationen zum MIME-Format finden Sie unter MIME-Module.
JSON
POST https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>
Content-Type: application/json
{"name": "Workfront Fusion", "job": "automate"}
- Klicken Sie auf Add , um einen neuen Webhook hinzuzufügen.
- Klicken Sie auf Show advanced settings.
- Klicken Sie auf JSON pass-through.
Webhook-Kopfzeilen
Um auf die Kopfzeilen des Webhooks zuzugreifen, aktivieren Sie beim Einrichten des Webhooks die Option GET-Anfrage-Kopfzeilen .
- Klicken Sie auf Add , um einen neuen Webhook hinzuzufügen.
- Klicken Sie auf Show advanced settings.
- Klicken Sie auf Get request headers.
Sie können einen bestimmten Kopfzeilenwert mit der Kombination aus map()
- und get()
extrahieren.
authorization
-Kopfzeile aus dem Headers[]
-Array extrahiert. Die Formel wird in einem Filter verwendet, der den extrahierten Wert mit dem angegebenen Text vergleicht, damit nur Webhooks übergeben werden, wenn eine Übereinstimmung vorliegt.![Filter einrichten](./media_14d107bf9764baed3a1733b338f3b98fabc6482ad.png?width=750&format=png&optimize=medium)
Reagieren auf Webhooks
Die Standardantwort auf einen Webhook-Aufruf ist der Text „Accepted“. Die Antwort wird an die App zurückgegeben, die den Webhook während der Ausführung des benutzerdefinierten Webhook-Moduls aufgerufen hat.
- Testen der Antwort auf einen Webhook
- Beispiel für eine HTML-Antwort
- Redirect-Beispiel
Testen der Antwort auf einen Webhook
-
Fügen Sie das Custom Webhook in Ihr Szenario ein.
-
Fügen Sie dem Modul einen neuen Webhook hinzu.
-
Kopieren Sie die Webhook-URL in die Zwischenablage.
-
Führen Sie das Szenario aus.
Das Blitzsymbol im Custom Webhook ändert sich in „Drehpunkte“. Dies zeigt an, dass das Modul jetzt auf den Webhook-Aufruf wartet.
-
Öffnen Sie ein neues Browser-Fenster, fügen Sie die kopierte URL in die Adressleiste ein und drücken Sie Enter.
Das Custom Webhook wird ausgelöst und der Browser zeigt eine neue Seite an.
Wenn Sie die Webhook-Antwort anpassen möchten, verwenden Sie das Modul Webhook-Antwort .
Die Konfiguration des Moduls enthält zwei Felder: Status und Body.
-
Das Feld Status enthält HTTP-Antwort-Status-Codes wie 2xx für Erfolg (z. B.
200
für OK), 3xx für Umleitung (z. B.307
für temporäre Umleitung), 4xx für Client-Fehler (z. B.400
für ungültige Anfrage) usw. -
Das Feld Body enthält alle Elemente, die vom Aufruf des Webhooks akzeptiert werden. Dabei kann es sich um einfachen Text, HTML, XML, JSON usw. handeln.
note tip TIP Es wird empfohlen, den Content-Type
-Header auf den entsprechenden MIME-Typ festzulegen:text/plain
für Nur-Text,text/html
für HTML,application/json
für JSON,application/xml
für XML usw. Weitere Informationen zu MIME-Typen finden Sie unter MIME-Module.
Die maximale Wartezeit für das Senden einer Antwort beträgt 40 Sekunden. Wenn die Antwort innerhalb dieses Zeitraums nicht verfügbar ist, gibt Workfront Fusion den Status „200 akzeptiert“ zurück.
Beispiel einer HTML-Antwort
table 0-row-2 1-row-2 2-row-2 layout-auto html-authored no-header | |
---|---|
Status | 2xx Erfolgs-HTTP-Status-Code, z. B. 200 |
Body | HTML |
Custom headers |
>
|
![Benutzerdefinierte Kopfzeilen](./media_1d61e5a53f6b451ba003c3341c8f1b97254929124.png?width=750&format=png&optimize=medium)
![HEML-Antwort](./media_18706152db0153d4e098de351c3b9b77da0c403af.png?width=750&format=png&optimize=medium)
Redirect-Beispiel
table 0-row-2 1-row-2 layout-auto html-authored no-header | |
---|---|
Status | 3xx HTTP-Status-Code der Weiterleitung, z. B. 303 |
Custom headers |
>
|
![Webhook-Antwort](./media_1fcda5a926af051ce508d0d8c22bdb44634a44a54.png?width=750&format=png&optimize=medium)
Webhook-Deaktiviert
Webhooks werden automatisch deaktiviert, wenn einer der folgenden Punkte zutrifft:
- Der Webhook wurde seit mehr als 5 Tagen mit keinem Szenario verbunden
- Der Webhook wird nur in inaktiven Szenarien verwendet, die seit mehr als 30 Tagen inaktiv sind.
Deaktivierte Webhooks werden automatisch gelöscht und von der Registrierung entfernt, wenn sie mit keinem Szenario verbunden sind und sich seit mehr als 30 Tagen im Status Deaktiviert befinden.
Fehlerbehebung
Fehlende Elemente im Zuordnungsbereich
Wenn einige Elemente im Bedienfeld Zuordnung bei der Einrichtung der Module fehlen, die dem Modul Webhooks > Custom Webhook folgen, klicken Sie auf das Modul Webhooks>Custom Webhook , um das Modul zu öffnen, und klicken Sie auf Re-determine data structure:
Führen Sie dann die Schritte aus, die im Abschnitt Konfigurieren der Datenstruktur des Webhooks in diesem Artikel beschrieben sind.