Overview
SignProof fires webhooks when significant events happen on your envelopes. Your backend receives an HTTPPOST with a JSON payload. You control what happens next — SignProof doesn’t know or care.
Configure a webhook endpoint
secret is used to sign the payload (HMAC-SHA256). Store it in your secrets manager.
Event types
Payload format
Verifying the webhook signature
Every webhook request includes aX-SignProof-Signature header containing an HMAC-SHA256
signature of the raw request body, computed using your webhook secret.
Always verify this signature before processing the payload. This prevents attackers from
spoofing events.
Responding to webhooks
Your endpoint must return2xx within 10 seconds. If it times out or returns a non-2xx status,
SignProof will retry.
Do not do heavy work inside the webhook handler. Acknowledge receipt immediately and process
asynchronously:
Retry schedule
If your endpoint doesn’t return2xx within 10 seconds, SignProof retries with exponential backoff:
After 5 failed attempts, the delivery is marked as failed. You can view failed deliveries and
trigger a manual resend in the Console under Webhooks → Deliveries.
Idempotency
Webhooks may be delivered more than once (network retries can cause duplicates even after a successful delivery). Use theid field (evt_01HX...) to deduplicate: