HappHapp Docs

Webhooks

Empfangen Sie Chat- und Anrufereignisse eines Kunden an Ihrem eigenen Endpunkt, signiert und überprüfbar

Empfangen Sie Chat- und Anrufereignisse in Echtzeit auf Ihrem eigenen Server — Happ sendet bei jedem Ereignis JSON per POST, sodass Sie damit Slack-Benachrichtigungen, CRM-Abfragen, Analysen oder eigene Workflows auslösen können.

Verbinden

  1. Öffnen Sie den Katalog Integrationen und klicken Sie bei Chat Webhook oder Call Webhook auf Verbinden.
  2. Geben Sie im Dialog Ihre Webhook-URL ein — den HTTPS-Endpunkt, der die Ereignisse empfängt.
  3. Legen Sie optional ein Webhook Secret zur Überprüfung der Anfragen fest.
  4. Klicken Sie auf Verbinden.

Es gibt keine separate Webhook-Seite, keine Schalter für Ereignisabonnements und kein Zustellprotokoll in der App — der Dialog besteht nur aus URL und optionalem Secret.

Gesendete Ereignisse

WebhookWird ausgelöst bei
ChatJeder Nachricht in einem beobachteten Chat — vom Kunden, vom Agenten und von einem Mitarbeiter
AnrufEnde eines Anrufs — eine einzige Zustellung nach dem Anruf mit Dauer, Metadaten und der Aufzeichnungs-URL, falls vorhanden

Anruf-Ereignis

Der Anruf-Webhook sendet pro beendetem Anruf ein flaches JSON-Objekt (kein verschachteltes result_json). Die wichtigsten Felder:

FeldBedeutung
event_typeImmer post_call
call_uuidEindeutige Anruf-ID — danach deduplizieren, derselbe Anruf kann mehrfach ankommen
externalNumberTelefonnummer des Kunden, dieselbe wie im Anrufverlauf; null, wenn es keine gab (z. B. Web-Anruf)
directioninbound, outbound oder null
summary, callSuccessfulKI-Zusammenfassung und Urteil: success, failure oder unknown
dynamicVariablesDie Variablen, mit denen der Anruf gestartet wurde, kommen zurück — übergeben Sie beim Start Ihre CRM-Kontakt- oder Bestell-ID und lesen Sie sie hier. VA-Systemvariablen (system__*) werden weggelassen

Vollständiges Schema und Beispiel: api.happ.tools/reference.

Anfragen überprüfen

Wenn Sie ein Webhook Secret festlegen, enthält jede Zustellung zwei Header:

HeaderWert
AuthorizationBasic <secret> — Ihr Secret unverändert, nicht base64 von user:password
X-Signaturesha256=<hex> — HMAC-SHA256 des rohen Anfrage-Bodys, berechnet mit Ihrem Secret

Zur Überprüfung berechnen Sie HMAC-SHA256 über den rohen Body (vor dem Parsen des JSON) neu und vergleichen das Ergebnis in konstanter Zeit. Gibt Ihre Plattform keinen Zugriff auf den rohen Body, prüfen Sie stattdessen den Header Authorization. Ohne Secret wird keiner der beiden Header gesendet. Es ist derselbe Mechanismus wie bei den Tools eines Agenten.

Verwenden Sie nur HTTPS, antworten Sie schnell mit 200 (Verarbeitung asynchron) und behandeln Sie doppelte Zustellungen idempotent.

Webhooks vs. Tool-Webhooks

Integrations-WebhooksTool-Webhooks
AuslöserAutomatisch bei EreignissenVon der KI während des Gesprächs aufgerufen
RichtungHapp → Ihr ServerHapp → Ihr Server → Antwort → KI
AntwortHTTP-200-BestätigungJSON, das der Agent nutzt
EinsatzzweckMonitoring, Protokollierung, BenachrichtigungenDynamische Abfragen, Aktionen

Für Webhooks, die die KI mitten im Gespräch aufruft, siehe Tools.

API: api.happ.tools/reference

Weiter

Help me solve it

Happ answers right away and hands over to a manager when needed.

Auf dieser Seite