Zum Hauptinhalt springen
Alle KollektionenManage deine Bliro Organisation
Empfange Bliro-Events per Webhook-Endpunkt
Empfange Bliro-Events per Webhook-Endpunkt

Empfange Events deiner Bliro-Organisation auf deinem Webhook-Endpunkt, damit die Integration automatisch Reaktionen auslösen kann.

Martin Thoma avatar
Verfasst von Martin Thoma
Diese Woche aktualisiert

Bliro Webhooks ermöglichen es Unternehmen, die Verarbeitung von Anrufdaten zu automatisieren, indem sie Echtzeit-Benachrichtigungen erhalten, sobald ein Anruf verarbeitet wird. Dies ist der Fall, sobald der erste für einen Anruf generiert wird. Mit Bliro Webhooks können Backend-Systeme automatisch Folgeaktionen auslösen und so die Workflow-Automatisierung verbessern.

Wie Bliro Webhooks funktionieren

  • Umfang: Webhooks funktionieren auf Organisationsebene. Jeder Anruf, der von einem Mitglied der Organisation bearbeitet wird, löst den Webhook aus.

  • Auslösendes Ereignis: Webhooks werden ausgelöst, sobald die Transkription abgeschlossen ist und eine Zusammenfassung für einen Anruf erstellt wurde.

  • Übermittlungsmethode: Bliro sendet eine POST-Anfrage mit einer JSON-Nutzlast an den angegebenen Webhook-Endpunkt über HTTPS.

  • Sicherheit: Ein optionaler Bliro-Signatur-Header ist verfügbar, um Webhook-Ereignisse mit Hilfe von HMAC-Generierung auf der Grundlage eines Zeitstempels und der Nutzlast zu sichern.

Bliro-Signatur Format:

Bliro-Signatur:
t=1492774577,
v1=5257a869e7ecebeda32affa62cdca3fa51cad7e77a0e56ff536d0ce8e108d8bd

Verwalten von Webhooks

Bliro Webhooks können über den Abschnitt Webhooks in den Organisationseinstellungen verwaltet werden:

  • Navigiere zu Webhooks-Einstellungen:

    • Gehe zu app.bliro.io/orgs/settings/webhooks.

  • Erstelle einen neuen Webhook:

    • Klicke auf „Webhook erstellen“.

  • Gib die Webhook-Details ein:

    • Webhook-Name: Gib einen erkennbaren Namen an.

    • Webhook-URL: Muss HTTPS unterstützen (TLS-Verschlüsselung erforderlich).

    • Sicherheits-Token (optional): Falls angegeben, generiert Bliro eine HMAC-Signatur.

    • Neu erstellte Webhooks sind standardmäßig deaktiviert.

  • Bearbeiten, Löschen, Aktivieren oder Deaktivieren von Webhooks:

    • Webhooks können jederzeit auf der Seite mit den Webhook-Einstellungen verwaltet werden.

  • Teste den Webhook:

    • Bevor der Webhook aktiviert werden kann, klicke auf die Schaltfläche „Webhook testen“, um sicherzustellen, dass der Endpunkt Nutzdaten richtig verarbeiten kann.

Erstellen eines Webhook-Endpunkts

Um Webhook-Ereignisse von Bliro zu empfangen, müssen Sie einen HTTPS-Endpunkt einrichten, der POST-Anfragen annehmen kann.

Wichtige Anforderungen:

  • Muss POST-Anfragen mit einer JSON-Nutzlast akzeptieren.

  • Muss umgehend einen 2xx HTTP-Statuscode zurückgeben, um den Empfang zu bestätigen.

  • Sollte die Bliro-Signatur verifizieren, wenn ein Sicherheits-Token verwendet wird.

Beispiel Webhook-Endpunkt in Node.js:

const express = require('express');
const crypto = require('crypto');
const app = express();
app.use(express.json());

const verifySignature = (Nutzdaten, Signatur, Geheimnis) => {
const timestamp = payload.timestamp;
const data = `${Zeitstempel}.${JSON.stringify(Nutzdaten.Daten)}`;
const hmac = crypto.createHmac('sha256', secret).update(data).digest('hex');
return hmac === Signatur;
};

app.post('/bliro/webhook', (req, res) => {
const payload = req.body;
const signature = req.headers['bliro-signature'];
const secret = process.env.BLIRO_SECRET;

if (secret && !verifySignature(payload, signature, secret)) {
return res.status(400).send('Ungültige Signatur');
}

console.log(`Empfangendes Ereignis: ${payload.event_type}`);
res.status(200).send('Empfangen');
});

app.listen(4242, () => console.log('Webhook-Endpunkt hört auf Port 4242'));

Manuelle Verifizierung von Webhook-Signaturen

Um Webhook-Signaturen manuell zu überprüfen:

  • Zeitstempel und Signatur extrahieren

    • Parse den Bliro-Signatur-Header, um den Zeitstempel (t) und die Signatur (v1) zu erhalten.

  • Bereite den signierte Payload vor:

    • Verkette den Zeitstempel, einen Punkt (.) und den JSON-Payload.

  • Erzeuge einen HMAC SHA256 Hash:

    • Berechne den Hash unter Verwendung des Sicherheitstokens als Schlüssel und einer Kombination aus Zeitstempel und signiertem Payload als Nachricht.

  • Signaturen vergleichen:

    • Stelle sicher, dass der generierte Hash mit dem v1-Wert aus dem Header übereinstimmt.

Testen des Webhooks

Bevor ein Webhook in Bliro aktiviert werden sollte

  • Klicke auf der Seite mit den Webhook-Einstellungen auf „Webhook testen“.

  • Überwache die Antwort des Endpunkts:

    • Stelle sicher, dass eine 200 OK-Antwort zurückgegeben wird.

  • Überprüfe die Protokolle auf den Empfang der Test-Payloads.

Aktiviere den Webhook

Sobald der Test erfolgreich ist:

  • Kehre zur Seite mit den Webhook-Einstellungen zurück.

  • Schalte den Aktivierungsschalter neben dem getesteten Webhook um.

  • Bliro wird nun alle relevanten Ereignisdaten an den Endpunkt senden.

Best Practices für die Verwendung von Bliro Webhooks

Ereignisse asynchron verarbeiten

  • Verarbeite eingehende Ereignisse mit einer asynchronen Warteschlange.

  • Dieser Ansatz vermeidet eine Überlastung des Endpunkts während Zeiten mit hohem Datenverkehr (z. B. monatliche Abonnementserneuerungen).

Webhook-Routine vom CSRF-Schutz ausnehmen

  • Wenn das Web-Framework CSRF-Schutz verwendet, nimm die Webhook--Route aus, um zu vermeiden, dass legitime Anfragen blockiert werden.

Empfangen von Ereignissen mit einem HTTPS-Server

  • Der Endpunkt muss HTTPS mit einem gültigen TLS-Zertifikat unterstützen.

  • Bliro-Webhooks unterstützen nur die TLS-Versionen 1.2 und 1.3.

Sichere den Endpunkt

  • Verwende die HMAC-Signaturprüfung, um sicherzustellen, dass die Ereignisse von Bliro stammen.

  • Behandle Zeitstempel, um Replay-Angriffe zu verhindern.

Fehlersuche - Häufige Probleme

  • 400 Fehler (Schlechte Anfrage): Überprüfe die Endpunktakzeptanz für POST-Anfragen und die korrekte Handhabung von JSON-Nutzdaten.

  • 500 Fehler (Interner Serverfehler): Überprüfe die Serverprotokolle auf unerwartete Fehler.

  • TLS-Fehler: Stelle sicher, dass der Server TLS 1.2 oder höher unterstützt.

  • Zeitüberschreitungen: Sorge für schnelle Antwortzeiten; verarbeite umfangreiche Logik asynchron.

Fazit

Durch die Einrichtung von Bliro Webhooks können Organisationen die Bearbeitung von Bliro-Gesprächen durch das Auslösen automatisierter Prozesse realisieren. Für weitere Unterstützung, wende dich gerne an [email protected].

Hat dies deine Frage beantwortet?