Discord-Webhooks einrichten

Nexus-Events (Bans, Reports, Tickets, Server-Status …) landen in Sekunden in eurem Discord – ohne Bot, ohne Plugin.

Schritte

  1. Discord: Servereinstellungen → Integrationen → Webhooks → Neuer Webhook → Kanal wählen → Webhook-URL kopieren.
  2. ACP: Sidebar → WebhooksWebhook anlegen:
    • Name: z. B. #mod-log
    • URL: die kopierte Discord-URL
    • Format: Discord
    • Event-Filter: z. B. ban.* (nur Strafen), report.created (neue Reports) oder * (alles)
  3. Testen klicken – im Kanal erscheint sofort ein Test-Embed.

Fertig. Änderungen wirken ohne Neustart; fehlgeschlagene Zustellungen werden mit Backoff wiederholt, der letzte Fehler ist am Webhook sichtbar.

Eigene Systeme (Format GENERIC)

GENERIC sendet das rohe Event als JSON-POST:

{ "type": "ban.created", "data": { "playerId": "…", "type": "BAN", "reason": "…" }, "at": "2026-06-11T12:00:00Z" }

Mit gesetztem Secret wird jeder Request signiert:

X-Nexus-Signature: sha256=<hex(hmac_sha256(secret, body))>

Empfänger sollten die Signatur prüfen, bevor sie den Payload verarbeiten. Alles, was hier möglich ist, geht auch per API (/api/v1/webhooks, Scope core.webhook.manage) – z. B. für GitOps-Provisionierung.

Welche Events gibt es?

Die wichtigsten: player.join, player.quit, server.online, server.offline, ban.created, ban.revoked, ban.expired, ban.appeal.created, report.created, report.claimed, report.resolved, ticket.created, ticket.updated, ticket.closed, chatguard.flagged, module.enabled, module.disabled, config.changed. Filter unterstützen Wildcards mit .*-Suffix.