Zum Inhalt springen

Ordner-Webhooks

Dateien, die von außen gesendet werden, können Sie automatisch in einem festgelegten Ordner empfangen. Für jeden Ordner wird eine eigene Empfangsadresse erzeugt; sendet ein externes System Daten an diese Adresse, werden sie automatisch im Ordner gespeichert.


Bevor Sie beginnen

  • Administratoreinstellungen: Unter Webhook-Richtlinie festlegen müssen sowohl Eingehende Webhooks aktivieren als auch Ausgabe von Benutzer-API-Schlüsseln zulassen eingeschaltet sein.

Webhook in einem Ordner erstellen

  1. Wählen Sie das Einstellungssymbol (⚙️) neben dem Namen des Ordners, der den Webhook empfangen soll. Ordnereinstellungen
  2. Wählen Sie auf der Registerkarte Webhook-Empfang die Schaltfläche Hinzufügen.
  3. Wählen Sie die Authentifizierungsmethode und die Konfliktrichtlinie. Beide Werte werden weiter unten im Detail erklärt. Webhook erstellen
  4. Wählen Sie die Schaltfläche Erstellen, wird die eigene Empfangsadresse des Ordners (Endpoint URL) erzeugt. Haben Sie Secure gewählt, wird zusätzlich das Signaturgeheimnis (signing secret) erzeugt. Diese Werte werden nur jetzt angezeigt und lassen sich später nicht erneut abrufen. Kopieren Sie sie daher an einen sicheren Ort.Mit Simple-Authentifizierung erstellter Webhook
  5. Richten Sie den Webhook im externen System anhand der angezeigten Empfangsadresse und der Beispielanleitung ein. Anfragebeispiele für die einzelnen Authentifizierungsmethoden finden Sie unten unter „Authentifizierungsmethode wählen“.
  6. Ordner mit eingerichtetem Webhook zeigen das Symbol .

Authentifizierungsmethode wählen

Beim Erstellen eines Webhooks wählen Sie zwischen Simple und Secure.

AuthentifizierungsmethodeVerhalten
SimpleDie Empfangsadresse (URL) selbst ist die Authentifizierungsinformation. Es genügt, ohne gesonderte Signatur eine POST-Anfrage an die ausgegebene Adresse zu senden, und die Datei wird gespeichert.
SecureBei jeder Anfrage muss eine HMAC-Signatur berechnet und in den Headern X-Webhook-Timestamp, X-Webhook-Nonce und X-Webhook-Signature mitgesendet werden. Selbst wenn die Empfangsadresse nach außen bekannt wird, werden Anfragen ohne Signatur abgelehnt.

Bei einem mit Simple erstellten Webhook genügt die URL, um Anfragen zu senden.

# Upload a file via multipart
curl -i -X POST "https://<Empfangsadresse>?filename=photo.jpg" \
  -F "file=@./photo.jpg"

Bei einem mit Secure erstellten Webhook muss der Anfragetext (der SHA-256-Hash des gesamten Multipart-Bodys einschließlich Boundary und Part-Headern) in die Signatur einbezogen werden. Einstellungen eines Secure-Webhooks

# Upload a file via multipart (with HMAC signature)
TS=$(date +%s)
NONCE=$(cat /proc/sys/kernel/random/uuid)
BOUNDARY="------------------------$(cat /proc/sys/kernel/random/uuid)"
TMP=$(mktemp /tmp/multipart.XXXXXX)

# Build the raw multipart body first, then hash that body.
printf -- --%s$'\r\n' "$BOUNDARY" > "$TMP"
printf 'Content-Disposition: form-data; name="file"; filename="photo.jpg"' >> "$TMP"
printf $'\r\n' >> "$TMP"
printf 'Content-Type: application/octet-stream' >> "$TMP"
printf $'\r\n\r\n' >> "$TMP"
cat ./photo.jpg >> "$TMP"
printf $'\r\n' >> "$TMP"
printf -- --%s--$'\r\n' "$BOUNDARY" >> "$TMP"

BODY_SHA=$(sha256sum "$TMP" | awk '{print $1}')
SIG=$(printf 'POST\n<Empfangspfad>\n%s\n%s\n%s' "$TS" "$NONCE" "$BODY_SHA" \
  | openssl dgst -sha256 -hmac "$SECRET" -binary | xxd -p -c 256)

curl -i -X POST "https://<Empfangsadresse>?filename=photo.jpg" \
  -H "Content-Type: multipart/form-data; boundary=$BOUNDARY" \
  -H "X-Webhook-Timestamp: $TS" \
  -H "X-Webhook-Nonce: $NONCE" \
  -H "X-Webhook-Signature: sha256=$SIG" \
  --data-binary @"$TMP"

rm -f "$TMP"

Konfliktrichtlinie wählen

Legen Sie fest, was geschehen soll, wenn eine Datei mit demselben Namen erneut empfangen wird. Sie wählen die Richtlinie beim Erstellen des Webhooks; auch danach können Sie sie im selben Fenster anpassen und mit Anwenden ändern.

RichtlinieVerhalten
AblehnenGibt es bereits eine Datei mit demselben Namen, wird die neu empfangene Datei nicht gespeichert.
ÜberschreibenDie vorhandene Datei wird durch die neu empfangene Datei ersetzt.
UmbenennenDie vorhandene Datei bleibt unverändert, und die neu empfangene Datei wird unter einem anderen Namen gespeichert.

Dateinamen angeben

Den Namen der hochgeladenen Datei geben Sie auf eine der beiden folgenden Arten an.

  • Query-Parameter: ?filename=report.json
  • HTTP-Header: X-Webhook-Filename: report.json

Möglichkeiten zur Angabe des Dateinamens

In Unterordnern speichern

Über den Webhook empfangene Dateien werden direkt in dem Ordner gespeichert, in dem der Webhook erstellt wurde. Um Dateien über einen an den Dateinamen angehängten Unterpfad in einem Unterordner dieses Ordners zu speichern, schalten Sie beim Webhook Unterordner ein.

  1. Klappen Sie in der Webhook-Liste den Webhook auf, den Sie einrichten möchten.
  2. Wählen Sie unter Unterordner die Option Erlaubt.
  3. Wählen Sie Anwenden.

Im Dateinamen geben Sie einen relativen Pfad bezogen auf den Webhook-Ordner an. Nicht vorhandene Ordner werden automatisch erstellt.

  • Query-Parameter: ?filename=releases/1.0/a.zip
  • HTTP-Header: X-Webhook-Filename: releases/1.0/a.zip
RegelBeschreibung
Tiefe und LängeUnterordner dürfen bis zu 8 Ebenen tief sein, und ein einzelner Name darf bis zu 255 Byte lang sein.
Unzulässige PfadeNamen, die .. enthalten, Pfade, die mit / beginnen oder enden, Backslashes (\) sowie Ordnernamen, die mit . beginnen, werden abgelehnt.
Ort der PfadangabeDer Unterpfad wird ausschließlich über den Query-Parameter oder den Header angegeben. Ein Ordner, der im Namen des Dateifelds von multipart/form-data angegeben ist, wird nicht verwendet.

Empfangene Daten prüfen

Die von außen gesendeten Daten werden als Dateien im Ordner abgelegt. Öffnen Sie den Ordner, um den Empfangsverlauf zu prüfen.

Webhook pausieren und löschen

  • Im Ordner können Sie einen Webhook pausieren oder löschen. Bewegen Sie in der Liste den Mauszeiger über den Webhook, erscheinen die Schaltflächen Pausieren und Löschen. Schaltflächen Pausieren und Löschen in der Webhook-Liste
  • In welchen Ordnern Sie Webhooks eingerichtet haben, sehen Sie auf einen Blick auf der Registerkarte Meine Webhooks der Kontoeinstellungen. Auch in dieser Liste können Sie Webhooks pausieren oder löschen.

Anleitung

So können Sie es nutzen

  • Homepage-/Bildschirmüberwachung: Mit Zapier, n8n, Make und ähnlichen Diensten regelmäßig aufgenommene Screenshots einer Homepage werden automatisch im Ordner gesammelt, sodass Sie Änderungen nachverfolgen können.
  • Ergebnisse der Aufgabenautomatisierung speichern: Von RPA- und Automatisierungstools erzeugte Berichte, Rechnungen, PDFs und mehr werden ohne menschliches Zutun direkt im Ordner gespeichert.
  • Anhänge aus Formularübermittlungen sammeln: Über Google Forms, Typeform und ähnliche Dienste übermittelte Anhänge lassen sich automatisch in einem Ordner zusammenführen.
  • Build-/Deployment-Artefakte speichern: In CI/CD-Pipelines erzeugte Build-Artefakte oder Testberichte werden automatisch übermittelt.

Verwandte Dokumente