Webhooks
Empfange serverseitige Benachrichtigungen zu Gesprächsereignissen.
Überblick
Webhooks senden HTTP-POST-Anfragen an deinen Server, sobald Ereignisse auftreten. Anders als clientseitige Event Listener kommunizieren Webhooks direkt zwischen Servern und benötigen kein Chat-Widget.
Einrichtung
- Öffne Einstellungen > Webhooks
- Gib die URL deines Endpunkts ein
- Wähle die gewünschten Ereignisse aus
- Speichere und teste den Webhook
Ereignisse
| Ereignis | Beschreibung |
|---|---|
conversation.created | Eine neue Unterhaltung wurde begonnen |
conversation.completed | Eine Unterhaltung wurde beendet |
message.created | Eine neue Nachricht wurde gesendet |
feedback.received | Ein Nutzer hat Feedback übermittelt |
Payload-Format
{
"event": "message.created",
"timestamp": "2025-01-15T10:30:00Z",
"data": {
"conversation_id": "conv_abc123",
"message_id": "msg_xyz789",
"role": "assistant",
"content": "Here's how to reset your password...",
"sources": ["https://docs.example.com/password-reset"]
}
}Überprüfung
Alle Webhook-Payloads enthalten einen Signatur-Header:
X-Webhook-Signature: sha256=abc123...Prüfe die Signatur mit deinem Webhook-Secret:
const crypto = require("crypto");
function verifyWebhook(payload, signature, secret) {
const expected = crypto.createHmac("sha256", secret).update(payload).digest("hex");
return `sha256=${expected}` === signature;
}Wiederholungsrichtlinie
Fehlgeschlagene Zustellungen werden mit exponentiell steigenden Wartezeiten wiederholt:
-
- Wiederholung: nach 1 Minute
-
- Wiederholung: nach 5 Minuten
-
- Wiederholung: nach 30 Minuten
- Nach 3 Fehlschlägen wird der Webhook deaktiviert