API Webhooks Automatisierung Plugin SDK
pixx.io developer docs

Webhooks in pixx.io

Reagiere in Echtzeit auf Ereignisse in deinem Mediaspace — ganz ohne Polling. Diese Anleitung zeigt, wie du Webhooks einrichtest, absicherst und mit Skripten, Automatisierungsplattformen und der pixx.io API zu vollständigen Workflows verbindest.

Eingehende Webhook-Zustellungen● Beispieldaten
01 Grundlagen

Was ist ein Webhook?

Ein Webhook ist ein HTTP-Callback: Statt dass dein System pixx.io ständig fragt „Hat sich etwas geändert?“ (Polling), meldet sich pixx.io von selbst, sobald ein definiertes Ereignis eintritt (Push).

PollingWebhook
PrinzipRegelmäßige Anfrage an die APIpixx.io sendet aktiv einen HTTP-Request
AktualitätAbhängig vom AbfrageintervallNahezu in Echtzeit
RessourcenViele unnötige AnfragenNur bei tatsächlicher Änderung
UmsetzungAPI-Client mit Zeitsteuerung nötigÖffentlich erreichbarer Endpunkt nötig

Bildlich gesprochen: Polling ist, alle fünf Minuten an der Wohnungstür nachzuschauen, ob Post gekommen ist. Ein Webhook ist die Türklingel — sie meldet sich, wenn's so weit ist.

02 Ablauf

Funktionsprinzip in pixx.io

Hinter der Ziel-URL kann technisch alles stecken — pixx.io kümmert sich nur um die Zustellung des Events, was danach passiert liegt vollständig bei dir.

Aktion in pixx.io — z. B. Datei-Upload, Metadaten-Änderung, Freigabe
Event wird gefeuert, z. B. fileCreated
pixx.io sendet einen HTTP-POST-Request an die hinterlegte Webhook-URL
Empfänger verarbeitet die Payload
→ eigenes PHP- / Node- / Python-Skript
→ Automatisierungsplattform (Make, Zapier, n8n …)
→ eigener Microservice / eigenes Backend
Optional: Rückruf an die pixx.io API — Metadaten schreiben, Keywords setzen, Datei verschieben, Kommentar anlegen
03 Einrichtung

Webhook in pixx.io einrichten

  1. Öffne die Einstellungen (Zahnrad-Symbol unten links) → VerwaltungWebhooks.
  2. Klicke auf Neuer Webhook.
  3. Fülle das Formular „Webhook bearbeiten“ aus (siehe Tabelle unten).
  4. Wähle im Bereich Webhook Events die gewünschten Events aus. Events sind in Kategorien gruppiert (z. B. file, collection, comment). Jede Kategorie lässt sich aufklappen; ein ausgefülltes Minus-Symbol an der Kategorie-Checkbox zeigt eine Teilauswahl an.
  5. Speichern — der Webhook ist ab sofort aktiv.
FeldBeschreibung
NameSprechender Name, z. B. „KI-Verarbeitung“
URL *Öffentlich erreichbarer HTTPS-Endpunkt, an den pixx.io den Request schickt
SecretGeheimer Schlüssel zur Signaturprüfung (dringend empfohlen, siehe Kapitel 05)
BeschreibungInterne Doku, wofür der Webhook da ist
💡
Praxistipp: Abonniere so granular wie möglich. Wer „alle file-Events“ bucht, bekommt bei jedem Klick in der Metadaten-Bearbeitung einen eigenen Request — das erzeugt unnötige Last auf deinem Endpunkt.
04 Referenz

Event-Kategorien im Überblick

Die Events sind nach Objekttyp gruppiert. Insgesamt stehen 781 Events in 55 Kategorien zur Verfügung (Stand: aktueller Export). Die größten Kategorien:

KategorieEventsBetrifft
portal100Presseportale / externe Portale
permissionGroup61Rechtegruppen
space55Mediaspace-Konfiguration
file55Dateien — siehe Detailtabelle unten
settings51Branding, SMTP, Wasserzeichen u. a.
generalSettings40Allgemeine Systemeinstellungen
externalShare28Externe Freigaben
uploadLink26Upload-Links
spaceNavigation24Navigation (Header/Footer)
user21Benutzerkonten
Die vollständige, filterbare Übersicht aller 55 Kategorien mit allen 781 Events findest du im Anhang.

Die Kategorie file im Detail

Ein klares Namensschema deckt sowohl den Lebenszyklus einer Datei als auch jede einzelne Metadaten-Änderung granular ab.

EventBeschreibung
fileCreatedNeue Datei wurde hochgeladen
fileDeletedDatei wurde gelöscht
fileDeletedDuplicateDatei wurde als Dublette gelöscht
fileDownloadedDatei wurde heruntergeladen

fileModified*-Events (Auswahl) — für praktisch jedes Feld gibt es ein eigenes, granulares Event:

EventBeschreibung
fileModifiedFileNameDateiname geändert
fileModifiedDescriptionBeschreibung geändert
fileModifiedCreatorUrheber/Fotograf geändert
fileModifiedCreateDateErstellungsdatum geändert
fileModifiedUserIDZuständiger Nutzer geändert
fileModifiedRatingBewertung (Sterne) geändert
fileModifiedRotationDatei gedreht
fileModifiedSubjectMotiv/Thema geändert
fileModifiedFileStateIDDatei-Status geändert (z. B. im Freigabe-Workflow)
fileModifiedDirectoryIDPathDatei in anderen Ordner verschoben
fileModifiedKeywordsAdded / …DeletedSchlagworte hinzugefügt / entfernt
fileModifiedKeywordsRecognitionAdded / …DeletedKI-erkannte Schlagworte hinzugefügt / entfernt
fileModifiedRecognizedTextTexterkennung (OCR) aktualisiert
fileModifiedFacesGesichtserkennung aktualisiert
fileModifiedLocationStandort-Metadaten geändert
fileModifiedLanguageCodesAdded / …RemovedSprachcode hinzugefügt / entfernt
fileModifiedCollectionIDsAdded / …RemovedDatei einer Sammlung hinzugefügt / entfernt
fileModifiedExternalShareIDsAdded / …RemovedExterne Freigabe hinzugefügt / entfernt
fileModifiedLicenseFilesAdded / …DeletedLizenzdatei hinzugefügt / gelöscht
fileModifiedModelFilesAdded / …DeletedModel-Release-Datei hinzugefügt / gelöscht
fileModifiedPropertyFilesAdded / …DeletedProperty-Release-Datei hinzugefügt / gelöscht
fileModifiedMarkedUserIDsAdded / …RemovedMarkierung für Nutzer gesetzt / entfernt
fileModifiedIsCheckedOutCheckout-Status geändert
fileModifiedIsDownloadLockedDownload-Sperre geändert
fileModifiedMainVersionFileIDHauptversion einer Datei geändert
fileModifiedVariantStackZuordnung zu einem Variant Stack geändert
fileModifiedUploadDate / …UploadLinkUpload-Datum bzw. verwendeter Upload-Link geändert
fileModifiedMetadataField…Änderung an einem Custom-Metadaten-Feld: Datum, Text, gekürzter Text, Einfach-/Mehrfachauswahl, Sprache, Standort, Ausrichtung, Fokuspunkt
fileReplacedDatei durch neue Version ersetzt
fileReplacedPreviewFile / fileRestoredPreviewFileVorschaubild ersetzt / wiederhergestellt
Vollständige, verifizierte Liste aller 55 file-Events — Detailaufschlüsselung der fileModifiedMetadataField…-Varianten sowie alle 781 Events im Anhang.
05 Sicherheit

Sicherheit: Das Secret & die Signaturprüfung

Ohne Signaturprüfung kann grundsätzlich jeder, der die URL kennt, gefälschte Requests an deinen Endpunkt schicken. Mit einem Secret stellst du sicher, dass eine eingehende Anfrage tatsächlich von pixx.io stammt.

Gängiges, empfohlenes Verfahren (wie bei GitHub, Stripe & Co.):

  1. pixx.io berechnet über den Request-Body eine HMAC-SHA256-Signatur unter Verwendung deines Secrets.
  2. Die Signatur wird als zusätzlicher Header mitgeschickt.
  3. Dein Endpunkt berechnet die Signatur über den empfangenen Rohbody erneut und vergleicht sie zeitkonstant (hash_equals() in PHP, crypto.timingSafeEqual() in Node.js).
  4. Nur bei Übereinstimmung wird die Payload als vertrauenswürdig verarbeitet.
⚠️
Hinweis für die Fertigstellung: Der exakte Header-Name sowie das genaue Signaturformat sollten anhand einer echten Webhook-Zustellung (z. B. per webhook.site) verifiziert werden, bevor dieser Abschnitt final veröffentlicht wird. Die Beispiele hier verwenden X-Pixxio-Signature als Platzhalter.
06 Referenz

Aufbau der Payload (Beispiel)

Jeder Webhook-Aufruf liefert eine JSON-Payload mit Informationen zum Event:

json
{
  "event": "fileModifiedKeywordsAdded",
  "timestamp": "2026-08-19T10:42:00Z",
  "webhookId": "wh_12345",
  "fileId": 987654,
  "changes": {
    "keywordsAdded": ["Sommer", "Kampagne2026"]
  },
  "triggeredBy": {
    "userId": 42,
    "userName": "c.trautbeck"
  }
}
⚠️
Hinweis für die Fertigstellung: Feldnamen und exakte Struktur bitte anhand einer echten Zustellung verifizieren und dieses Beispiel vor Veröffentlichung entsprechend anpassen.
07 Empfehlungen

Best Practices für den Empfänger

  • HTTPS verwenden — Klartext-HTTP-Endpunkte sind ein Sicherheitsrisiko.
  • Signatur zuerst prüfen, bevor die Payload überhaupt verarbeitet wird.
  • Schnell antworten: Empfang zügig mit 2xx bestätigen, Verarbeitung asynchron auslagern (Queue, Background-Job).
  • Idempotent verarbeiten: Events können theoretisch doppelt zugestellt werden — eindeutige IDs helfen bei der Duplikaterkennung.
  • Granular abonnieren: Lieber gezielte fileModified*-Events als die gesamte Kategorie file.
  • Logging & Monitoring: Eingehende Events und Fehlerraten protokollieren.
  • Massenoperationen einplanen: Ein Bulk-Upload kann in kurzer Zeit sehr viele Events auslösen — Queue statt synchroner Verarbeitung.
08 Praxis

Anwendungsfälle

KI-gestützte Nachbearbeitung

fileCreated → externer KI-Dienst generiert Alt-Text/Keywords → Rückschreiben per API in Custom-Metadata bzw. Schlagworte.

Benachrichtigungen

Neue Datei, neuer Kommentar oder neue externe Freigabe → Nachricht in Slack/Microsoft Teams.

PIM-/Shop-/CMS-Sync

fileModifiedFileName / …MetadataField… → Asset-Referenz in Storyblok, Shopware o. Ä. aktualisieren.

Compliance & Rechte

fileModifiedLicenseFilesAdded / …Deleted → Ablaufdaten prüfen, automatische Erinnerung vor Lizenzende.

Archivierung & Backup

fileDeleted → automatische Kopie in externem Storage, bevor der Papierkorb geleert wird.

Freigabeprozesse

externalShare* → Genehmigungs-Workflow anstoßen, z. B. Vier-Augen-Prinzip vor Veröffentlichung.

09 Integration

Kombination mit Automatisierungsplattformen

Für viele Anwendungsfälle ist gar kein eigener Server nötig — Automatisierungsplattformen übernehmen Empfang, Logik und Rückruf:

  • Make (ehemals Integromat): pixx.io bietet eine eigene Make-App mit vorgefertigten Modulen. Alternativ lässt sich auch der generische „Custom Webhook“-Trigger von Make direkt als Webhook-URL in pixx.io eintragen.
  • Zapier / n8n: Beide bieten einen generischen Webhook-Trigger mit eindeutiger URL. Diese URL wird 1:1 in das URL-Feld des pixx.io-Webhooks eingetragen — danach lässt sich mit Filtern, Routern und HTTP-Modulen die gewünschte Logik bauen, inklusive Rückruf an die pixx.io API.

Der Vorteil: Filterung nach Event-Typ, Datenumformung und Fehlerbehandlung lassen sich visuell konfigurieren, ganz ohne eigenen Code.

10 Code-Beispiel

Eigener Skript-Empfänger (PHP)

php
<?php
// webhook-receiver.php
$secret  = getenv('PIXXIO_WEBHOOK_SECRET');
$payload = file_get_contents('php://input');
$signatureHeader = $_SERVER['HTTP_X_PIXXIO_SIGNATURE'] ?? '';
$expectedSignature = hash_hmac('sha256', $payload, $secret);
if (!hash_equals($expectedSignature, $signatureHeader)) {
    http_response_code(401);
    exit('Invalid signature');
}
// Payload sofort bestätigen, Verarbeitung asynchron auslagern
http_response_code(200);
$data = json_decode($payload, true);
switch ($data['event'] ?? '') {
    case 'fileCreated':
        // z. B. Job in eine Queue legen: KI-Verarbeitung anstoßen
        break;
    case 'fileModifiedKeywordsAdded':
        // z. B. eigenen Suchindex aktualisieren
        break;
}
11 Rückspielen

Der Kreis schließt sich: Zurückschreiben über die API

Ein Webhook allein liefert nur Informationen — die eigentliche Automatisierung entsteht erst im Zusammenspiel mit der pixx.io REST-API. Typischer Ablauf am Beispiel einer automatischen Alt-Text-Generierung:

  1. Trigger: fileCreated feuert nach einem Upload.
  2. Kontext holen: Das Skript lädt bei Bedarf weitere Datei-Informationen über die API nach.
  3. Verarbeitung: Ein externer KI-Dienst generiert Alt-Text bzw. Schlagworte.
  4. Rückschreiben: Das Skript aktualisiert die Datei in pixx.io über die API — Custom-Metadata-Feld, Schlagworte oder Kommentar.

Für das Rückschreiben stehen je nach Objekt eigene API-Endpunkte bereit (Dateien, Sammlungen, Schlagworte, Custom-Metadaten, externe Freigaben u. v. m.) — die vollständige, aktuelle Referenz inklusive Authentifizierung findest du in der API-Dokumentation.

12 Vor dem Rollout

Checkliste vor dem Go-Live

  • Endpunkt ist über HTTPS öffentlich erreichbar
  • Secret ist gesetzt, Signaturprüfung ist implementiert
  • Nur die tatsächlich benötigten Events sind abonniert
  • Antwort erfolgt schnell (2xx), Verarbeitung läuft asynchron
  • Duplikate/Wiederholungen werden idempotent behandelt
  • Logging und Monitoring sind aktiv
  • Vor dem Rollout mit einem einzelnen Test-Event geprüft
14 Referenz

Anhang: Vollständige Event-Liste

Alle 781 Events in 55 Kategorien — durchsuchbar und filterbar. Für die Weiterverarbeitung steht die komplette Liste auch als CSV-Datei zum Download bereit.

781 von 781 Events
KategorieEventAktion
Deine Browsersprache ist Deutsch, möchtest Du zu der deutschen Website wechseln?
Would you like to view this website in English?

Entschuldigung

Ihr Webbrowser ist nicht mehr aktuell. Aktualisieren Sie Ihren Browser für mehr Sicherheit, Geschwindigkeit und die beste Erfahrung auf dieser Website.

Jetzt updaten