POST request to your endpoint each time an event occurs.
Create a Webhook Endpoint
Webhook endpoints are registered in the Dashboard. You can create separate endpoints for test and live modes, and choose which event types each endpoint receives.Open the Webhooks settings
Go to Dashboard > Settings > Webhooks and click Add endpoint.

Configure your endpoint
Enter the URL of your webhook endpoint, select the events you want to receive, and save. You can subscribe to individual event types or receive all events.
Webhooks are scoped to the mode you are currently viewing in the Dashboard. Make sure you are in the correct mode (test or live) before creating your endpoint.
Webhook Payload
When an event occurs, SignatureAPI sends aPOST request to your endpoint with the Event object as the JSON body.
Here is an example payload for a recipient.completed event:
id, type, and timestamp, along with a data object whose shape depends on the event type. The envelope_metadata property reflects any custom metadata you attached to the envelope when creating it.
Some common event types:
| Event type | When it fires |
|---|---|
envelope.created | A new envelope is created |
envelope.started | The envelope finishes processing and recipients are notified |
envelope.completed | All recipients have completed the envelope |
envelope.canceled | The envelope is explicitly canceled |
recipient.completed | A recipient finishes their signing step |
recipient.soft_bounced | A notification email to a recipient bounced |
Verify the Signature
Every webhook request includes awebhook-signature header. You should always verify this header to confirm the request came from SignatureAPI and was not tampered with.
SignatureAPI follows the Standard Webhooks specification for signature verification. The Standard Webhooks project provides verification libraries for most languages, so you do not need to implement the HMAC logic yourself.
For example, to verify signatures in JavaScript or TypeScript:
signing_secret value.
Respond to Webhooks
Your endpoint must return a response with a status code in the2XX range (200 to 299) to acknowledge that the event was received successfully. Any other status code is treated as a failed delivery.
SignatureAPI does not guarantee the order of event delivery. Your endpoint should handle events arriving out of order.
Filter by Topic
By default, your webhook endpoint receives events for all envelopes in the selected mode. If you need to route events from specific envelopes to a particular endpoint, use topic filters. When creating an envelope, include up to 10 topics in thetopics array of the Envelope object. When configuring your webhook endpoint, specify the topics it should receive events for. Only envelopes tagged with a matching topic will trigger that endpoint.
Topic filters are not enabled by default. Contact support@signatureapi.com to enable this feature for your account.
Testing
These tools are useful for testing your webhook setup before connecting a real backend:- Webhook.site: Generates a temporary endpoint URL and lets you inspect incoming
POSTrequests in real time. Useful for verifying the payload structure. - ngrok: Creates a secure tunnel from a public URL to your local machine, so you can receive and process webhook events during local development.
Keep Learning
- Review the Webhooks reference for a complete overview of event delivery, retries, and authentication.
- Explore all event types and their payloads.
- Learn about test mode to safely develop and test your integration without affecting live data.
