Webhooks
Ein Webhook ist ein HTTP-Aufruf, der durch ein 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 den folgenden Zugriff verfügen, um die in diesem Artikel enthaltene Funktionalität nutzen zu können:
*Wenden Sie sich an Ihren Workfront-Administrator, um zu erfahren, welchen Plan, welchen Lizenztyp oder welchen Zugriff Sie haben.
**Informationen über Adobe Workfront Fusion Lizenzen, siehe Adobe Workfront Fusion Lizenzen
Verwenden Sie einen Webhook in Workfront Fusion
So verbinden Sie eine App über einen Webhook mit Workfront Fusion:
-
Fügen Sie die Webhooks >Benutzerspezifischer Webhook Instant Trigger-Modul zu Ihrem Szenario.
-
Klicken Hinzufügen neben dem Webhook-Feld und geben Sie einen Namen für den neuen Webhook ein.
-
(Optional) Klicken Sie auf Erweiterte Einstellungen.
-
Im IP-Beschränkungen Geben Sie eine kommagetrennte Liste der IP-Adressen ein, aus denen das Modul Daten aufnehmen kann.
-
Klicken Sie auf Speichern
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.
Datenstruktur des Webhooks konfigurieren configure-the-webhook-s-data-structure
Um die Datenstruktur der eingehenden Payload zu erkennen, Workfront Fusion analysiert Beispieldaten, die Sie an die angezeigte Adresse senden. Sie können die Beispieldaten bereitstellen, indem Sie eine Änderung im Dienst oder in der App vornehmen, die dazu führt, dass dieser Dienst oder diese App den Webhook aufruft. Sie können beispielsweise eine Datei entfernen.
Sie können auch die folgenden Schritte ausführen, um die Beispieldaten über die HTTP > Anfrage stellen -Modul.
-
Erstellen Sie ein neues Szenario mit dem HTTP > Anfrage stellen Modul
-
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. Sie finden diese URL im Modul Webhooks, das Sie zum Einrichten des Webhooks verwendet haben. Methode POST Textkörper Raw Inhaltstyp JSON (application/json) Anforderungsinhalt Rohe JSON im Webhook erwartet -
Öffnen Sie das Szenario mit der Webhooks -Modul in einem separaten Browser-Tab oder -Fenster.
-
Klicken Sie im Webhooks-Modul auf Datenstruktur neu bestimmen.
Sie müssen die Verknüpfung anderer Module nicht vom Webhooks-Modul aufheben.
-
Wechseln Sie mit dem Szenario HTTP und führen Sie es aus.
-
Wechseln Sie mit dem Webhooks-Modul zurück zum Szenario.
AErfolgreich ermittelt" bedeutet, dass das Modul die Datenstruktur erfolgreich ermittelt hat.
-
Klicken OK , um die Datenstruktur zu speichern.
Die Elemente des Webhooks sind jetzt im Zuordnungsbereich für die Verwendung mit nachfolgenden Modulen im Szenario verfügbar.
Warteschlange
Wenn ein Webhook Daten erhält und kein aktives Szenario mit diesen Daten verbunden ist, werden die Daten in der Warteschlange gespeichert. Nachdem Sie das Szenario aktiviert haben, werden alle Pakete, die in der Warteschlange warten, nacheinander verarbeitet.
Unterstützte eingehende Datenformate
Workfront Fusion unterstützt 3 eingehende Datenformate: Abfragezeichenfolge, Formulardaten und JSON.
Workfront Fusion validiert alle eingehenden Daten mit 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, Workfront Fusion gibt einen 400-HTTP-Status-Code zurück und gibt im Text 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 einen "200 Angenommen".
Abfragezeichenfolge
GET https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>?name=<yourname>&job=automate
Formulardaten
POST https://app.workfrontfusion.com/wh/<yourunique32characterslongstring>
Content-Type: application/x-www-form-urlencoded
name=<yourname>&job=automate
Formulardaten mit mehreren Elementen
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
Für den Empfang von Dateien, die mit multipart/form-data
, müssen Sie eine Datenstruktur mit einer collection
Typfeld, das die verschachtelten Felder enthält name
, mime
und data
. Das Feld name
ist text
und enthält den Namen der hochgeladenen Datei. Die mime
ist text
und enthält eine Datei im MIME-Format. Das Feld data
ist buffer
und enthält Binärdaten für die zu übertragende 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 Hinzufügen , um einen neuen Webhook hinzuzufügen.
- Klicken Erweiterte Einstellungen anzeigen.
- Klicken JSON-Pass-Through.
Webhook-Header
Um auf die Header des Webhooks zuzugreifen, aktivieren Sie beim Einrichten des Webhooks die Option Anforderungsheader abrufen .
- Klicken Hinzufügen , um einen neuen Webhook hinzuzufügen.
- Klicken Erweiterte Einstellungen anzeigen.
- Klicken Anforderungsheader abrufen.
Sie können einen bestimmten Kopfzeilenwert mit der Kombination aus map()
und get()
Funktionen.
authorization
-Kopfzeile aus Headers[]
Array. Die Formel wird in einem Filter verwendet, der den extrahierten Wert mit dem angegebenen Text vergleicht, um nur Webhooks zu übergeben, wenn eine Übereinstimmung vorliegt.![](./media_19c00f8fc112a80577c8c86c6266afbddded0c0fb.png?width=750&format=png&optimize=medium)
Antworten auf Webhooks
Die Standardantwort auf einen Webhook-Aufruf ist der Text "Akzeptiert". Die Antwort wird während der Ausführung des Benutzerspezifischen Webhook-Moduls an die App zurückgegeben, die den Webhook aufgerufen hat.
Testen der Antwort auf einen Webhook
-
Fügen Sie die Benutzerspezifischer Webhook -Modul in Ihrem Szenario.
-
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 auf der Benutzerspezifischer Webhook ändert sich in Drehpunkte. Dies zeigt, 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 die Eingabetaste. Eingabe.
Die Benutzerspezifischer Webhook -Modul ausgelöst und der Browser zeigt eine neue Seite an.
Wenn Sie die Webhook-Antwort anpassen möchten, wenden Sie das Modul Webhook Response an.
Die Konfiguration des Moduls umfasst zwei Felder: Status und body.
-
Die Status -Feld enthält HTTP-Antwortstatus-Codes wie 2xx für Erfolg (z. B.
200
für OK), 3xx für Umleitung (z. B.307
für temporäre Weiterleitung), 4xx für Client-Fehler (z. B.400
für fehlerhafte Anfragen) usw. -
Die body enthält alles, was vom Webhook-Aufruf akzeptiert wird. Dabei kann es sich um einfachen Text, HTML, XML, JSON usw. handeln.
note tip TIP Es wird empfohlen, Content-Type
-Kopfzeile zum entsprechenden MIME-Typ:text/plain
für einfachen 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 Zeitüberschreitung 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.
HTML-Antwortbeispiel
table 0-row-2 1-row-2 2-row-2 layout-auto html-authored no-header | |
---|---|
Status | 2xx Erfolg HTTP-Status-Code, z. B. 200 |
Body | HTML-Code |
Benutzerdefinierte Kopfzeilen |
>
|
![](./media_1d61e5a53f6b451ba003c3341c8f1b97254929124.png?width=750&format=png&optimize=medium)
![](./media_18706152db0153d4e098de351c3b9b77da0c403af.png?width=750&format=png&optimize=medium)
Beispiel einer Umleitung
table 0-row-2 1-row-2 layout-auto html-authored no-header | |
---|---|
Status | 3xx-Weiterleitungs-HTTP-Status-Code, z. B. 303 |
Benutzerdefinierte Kopfzeilen |
>
|
![](./media_1fcda5a926af051ce508d0d8c22bdb44634a44a54.png?width=750&format=png&optimize=medium)
Webhook-Deaktivierung
Webhooks werden automatisch deaktiviert, wenn eine der folgenden Aktionen zutrifft:
- Der Webhook ist 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 abgemeldet, wenn sie mit keinem Szenario verbunden sind und seit über 30 Tagen den Status deaktiviert haben.
Fehlerbehebung
Fehlende Elemente im Zuordnungsbereich
Wenn einige Elemente im Zuordnungsbereich bei der Einrichtung der Module fehlen, folgen Sie dem Webhooks > Benutzerspezifischer Webhook -Modul, klicken Sie auf die Webhooks > Benutzerspezifischer Webhook -Modul, um seine Einrichtung zu öffnen, und klicken Sie auf Datenstruktur neu bestimmen:
Führen Sie dann die im Abschnitt beschriebenen Schritte aus. Datenstruktur des Webhooks konfigurieren in diesem Artikel.