FeatureAngemeldete Nutzer
API – Webhooks
Event-Benachrichtigungen per signiertem HTTP-POST (Scope write:webhooks).
Zuletzt aktualisiert: 14. Juni 2026
Webhooks benachrichtigen externe Systeme bei Ereignissen. Verwaltung im Developer Portal (/profile/developer) oder per API mit einem Key mit Scope write:webhooks.
Endpunkte
- GET /api/v1/webhooks – eigene Webhooks
- POST /api/v1/webhooks { url, events? } – anlegen (Secret wird einmalig zurückgegeben)
- DELETE /api/v1/webhooks/{id} – löschen
- POST /api/v1/webhooks/{id}/test – signiertes Test-Event senden
Signatur prüfen
Jede Zustellung ist ein POST mit JSON-Body { id, event, createdAt, data }. Header: X-SC-OrgaBase-Event, X-SC-OrgaBase-Delivery (UUID) und X-SC-OrgaBase-Signature = sha256=HMAC-SHA256(body, secret). Vergleiche die Signatur serverseitig mit deinem Webhook-Secret.
Zustellung & Retry
- Erfolg = HTTP 2xx. Fehlversuche werden mit exponentiellem Backoff erneut versucht (bis zu 6 Versuche).
- Nach dauerhaften Fehlern wird der Endpunkt automatisch deaktiviert.
- Zustellstatus ist im Modell ApiWebhookDelivery protokolliert.
Das Webhook-Secret wird nur einmal beim Anlegen angezeigt. Sende keine privaten Daten an Endpunkte ohne Berechtigung.
Aktuell ausgelöste Events
- org.created, alliance.created (öffentliche Daten)
- blueprint.sync.completed, discord.sync.completed (System/Zähler)
- system.maintenance.enabled, system.maintenance.disabled
- application.created, event.created (nur an Webhooks von Apps, die an die jeweilige Organisation gebunden sind)
- resource.request.created, resource.offer.created (nur an Apps, die an die jeweilige Allianz gebunden sind)
Org-/Allianz-interne Events werden NICHT global verteilt, sondern nur an Endpunkte von Apps, die explizit an die betreffende Organisation/Allianz gebunden sind (App-Bindung über organizationId/allianceId).
War dieser Artikel hilfreich?