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
Vor über 2 Monaten 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?