Ereignisse von Drime Sign per Webhook empfangen
Eine HTTP-Benachrichtigung auf Ihrem Server, wenn ein Dokument in Drime Sign gesendet, angesehen, unterschrieben, abgelehnt oder abgeschlossen wird.
Mit einem Webhook ruft Drime Ihren Server jedes Mal auf, wenn mit Ihren Signaturanfragen etwas passiert. Jeder Aufruf ist ein JSON-POST, signiert mit einem Secret, damit Ihr Server prüfen kann, dass er von Drime stammt.
#Einen Webhook hinzufügen
Öffnen Sie Einstellungen > Entwickler > Webhooks.
In Sign können Sie auch auf Einstellungen klicken, den Tab Webhooks öffnen und dann Entwicklereinstellungen öffnen wählen.
Klicken Sie auf Webhook hinzufügen.
Geben Sie unter Endpunkt-URL die Adresse Ihres Servers ein, der die Aufrufe empfängt.
Stellen Sie unter Ereignisse jedes gewünschte Ereignis auf Ein und klicken Sie auf Webhook erstellen.
Webhook erstellt bestätigt es.
Kopieren Sie jetzt das Secret und klicken Sie dann auf Fertig.
Webhook-Secret, jetzt kopieren: Es wird nur einmal angezeigt. Bewahren Sie es an einem sicheren Ort auf.

#Die Ereignisse
Ereignis | Gesendet, wenn |
|---|---|
| Ein Dokument zur Unterschrift gesendet wird |
| Alle Unterzeichner unterschrieben haben |
| Ein Unterzeichner abgelehnt hat und das Dokument damit abgelehnt ist |
| Ein Unterzeichner das Dokument geöffnet hat |
| Ein Unterzeichner unterschrieben hat |
| Ein Unterzeichner abgelehnt hat |
| Eine Vorlage erstellt wird |
#Was Drime sendet
Jeder Aufruf enthält diese Header:
X-Drime-Event: das Ereignis, zum Beispielenvelope.completed;X-Drime-Delivery: die Nummer der Zustellung;X-Drime-Signature:sha256=, gefolgt vom HMAC SHA-256 des Rohinhalts, berechnet mit Ihrem Secret.
Der JSON-Inhalt enthält event_type, event_uuid, timestamp und data, das betroffene Dokument mit seinen Unterzeichnern. Der Bereich Webhooks zeigt unter Beispielanfrage & Signaturprüfung ein vollständiges Beispiel.
Eine Zustellung kann mehrfach ankommen: Verwenden Sie event_uuid, um jedes Ereignis nur einmal zu verarbeiten.
#Die Signatur prüfen
Berechnen Sie mit Ihrem Secret den HMAC SHA-256 des rohen Anfrageinhalts und vergleichen Sie ihn mit dem Header X-Drime-Signature. Zum Beispiel in Node.js:
import crypto from 'node:crypto';
function isFromDrime(rawBody, header, secret) {
const expected = 'sha256=' + crypto.createHmac('sha256', secret).update(rawBody).digest('hex');
return header.length === expected.length && crypto.timingSafeEqual(Buffer.from(header), Buffer.from(expected));
}Verwenden Sie den Inhalt genau so, wie er empfangen wurde, vor jedem JSON-Parsing.
#Testen und Zustellungen verfolgen
Test senden sendet ein Testereignis: Testereignis in der Warteschlange, prüfen Sie das Zustellungsprotokoll.
Zustellungen listet jeden Aufruf mit seinem Status auf: Erfolg, Ausstehend oder Fehlgeschlagen. Erneut senden sendet eine Zustellung noch einmal.
Wenn Ihr Server nicht oder mit einem Fehler antwortet, versucht Drime es erneut, bis zu 10 Versuche über etwa 34 Stunden.
Der Schalter Ein / Aus pausiert einen Webhook, ohne ihn zu löschen: Webhook pausiert bestätigt es, und Webhook aktiviert, wenn Sie ihn wieder einschalten.
#Das Secret ändern oder den Webhook löschen
Schlüssel neu generieren erstellt ein neues Secret. Die App warnt: Secret neu generieren? Ihr aktuelles Secret funktioniert sofort nicht mehr. Aktualisieren Sie Ihren Server sofort.
Löschen entfernt den Webhook: Diesen Webhook und seinen Zustellungsverlauf löschen?
#Wenn es nicht funktioniert
Was Sie sehen | Was zu tun ist |
|---|---|
Geben Sie die Endpunkt-URL ein | Geben Sie die Adresse Ihres Servers ein, bevor Sie den Webhook erstellen. |
Aktivieren Sie mindestens ein Ereignis | Wählen Sie unter Ereignisse mindestens ein Ereignis. |
Zustellungen bleiben Fehlgeschlagen | Prüfen Sie, ob Ihr Server aus dem Internet erreichbar ist und mit einem Erfolgscode antwortet. Klicken Sie dann auf Erneut senden. |
Ihr Server lehnt die Signatur ab | Berechnen Sie den HMAC auf dem Rohinhalt, nicht auf geparstem JSON, und verwenden Sie das aktuelle Secret. Nach Schlüssel neu generieren funktioniert das alte nicht mehr. |
#Nächste Schritte
War das hilfreich?