> ## Documentation Index
> Fetch the complete documentation index at: https://signatureapi-daf4ee54.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Manage Webhooks

> Set up webhook endpoints to receive real-time notifications when events happen in your account.

Webhooks let your application receive automatic notifications when something happens in your SignatureAPI account — for example, when a recipient signs an envelope or a deliverable is generated. Instead of polling the API, SignatureAPI sends events directly to a URL you provide.

To manage your webhooks, go to [Settings > Webhooks](https://dashboard.signatureapi.com/settings/webhooks) in the Dashboard.

<Frame>
  <img src="https://mintcdn.com/signatureapi-daf4ee54/lmkLIZqVCRcDzDPb/docs/dashboard/images/webhooks.png?fit=max&auto=format&n=lmkLIZqVCRcDzDPb&q=85&s=15c40c5415a9ea43e8fcc53f083ec699" alt="Webhooks settings page" width="2880" height="1702" data-path="docs/dashboard/images/webhooks.png" />
</Frame>

For technical details on event delivery, retries, and signature verification, see [Webhooks](/docs/api/webhooks).

## Adding a webhook endpoint

<Steps>
  <Step title="Open the Webhooks page">
    Go to [Settings > Webhooks](https://dashboard.signatureapi.com/settings/webhooks) and click **New Webhook Endpoint**.
  </Step>

  <Step title="Enter the endpoint URL">
    Enter the URL where SignatureAPI should send events. This must be a publicly accessible HTTPS URL.

    <Frame>
      <img src="https://mintcdn.com/signatureapi-daf4ee54/to2kcqhpCDnABjF5/docs/images/create-webhook-screen.png?fit=max&auto=format&n=to2kcqhpCDnABjF5&q=85&s=54868cbcb87f597f8f99a33e25d32b58" alt="New webhook endpoint form" width="3120" height="1858" data-path="docs/images/create-webhook-screen.png" />
    </Frame>
  </Step>

  <Step title="Select events">
    Choose which events you want to receive at this endpoint. You can subscribe to envelope events, recipient events, deliverable events, or sender events.

    See the full list of [available events](/docs/api/resources/events/envelope-events).
  </Step>

  <Step title="Choose the mode">
    Select whether this endpoint receives **test** events, **live** events, or both. Use test mode while building your integration, and add a live endpoint when you're ready for production.
  </Step>
</Steps>

## Signing secret

Each webhook endpoint has a signing secret. Your application uses this secret to verify that incoming requests are genuinely from SignatureAPI.

To find the signing secret, click on the endpoint in [Settings > Webhooks](https://dashboard.signatureapi.com/settings/webhooks).

<Frame>
  <img src="https://mintcdn.com/signatureapi-daf4ee54/UqiVROmDb8Tz-1YC/docs/images/webhook-signing-secret.png?fit=max&auto=format&n=UqiVROmDb8Tz-1YC&q=85&s=db0d7e1dae2d580facc85b6286a24da3" alt="Webhook signing secret" width="1444" height="939" data-path="docs/images/webhook-signing-secret.png" />
</Frame>

For instructions on verifying signatures in your code, see [Webhook Authentication](/docs/api/webhooks#authentication).

## Event types

You can subscribe to events across four categories:

### [Envelope events](/docs/api/resources/events/envelope-events)

| Event                | Description                                                        |
| :------------------- | :----------------------------------------------------------------- |
| `envelope.created`   | A new envelope was created                                         |
| `envelope.started`   | The envelope finished processing and recipients are being notified |
| `envelope.completed` | All recipients have completed the envelope                         |
| `envelope.failed`    | The envelope encountered an internal error                         |
| `envelope.canceled`  | The envelope was canceled                                          |

### [Recipient events](/docs/api/resources/events/recipient-events)

| Event                    | Description                                          |
| :----------------------- | :--------------------------------------------------- |
| `recipient.released`     | The recipient is ready to receive an invitation      |
| `recipient.sent`         | The invitation email was sent                        |
| `recipient.accessed`     | The recipient opened the ceremony URL                |
| `recipient.viewed`       | The recipient authenticated and viewed the documents |
| `recipient.completed`    | The recipient finished all required actions          |
| `recipient.rejected`     | The recipient declined the envelope                  |
| `recipient.soft_bounced` | The invitation email is temporarily undeliverable    |
| `recipient.hard_bounced` | The invitation email is permanently undeliverable    |
| `recipient.failed`       | An error prevented the invitation from being sent    |
| `recipient.replaced`     | The recipient was replaced with a new person         |
| `recipient.resent`       | The invitation email was resent                      |

### [Deliverable events](/docs/api/resources/events/deliverable-events)

| Event                   | Description                               |
| :---------------------- | :---------------------------------------- |
| `deliverable.generated` | The signed document is ready for download |
| `deliverable.failed`    | Document generation failed                |

### [Sender events](/docs/api/resources/events/sender-events)

| Event             | Description                                              |
| :---------------- | :------------------------------------------------------- |
| `sender.created`  | A sender was created and the verification email was sent |
| `sender.verified` | The sender completed email verification                  |
| `sender.failed`   | Sender verification failed                               |
| `sender.deleted`  | A sender was deleted from the account                    |

## Managing endpoints

To edit or delete an endpoint, go to [Settings > Webhooks](https://dashboard.signatureapi.com/settings/webhooks) and click on the endpoint.

<Frame>
  <img src="https://mintcdn.com/signatureapi-daf4ee54/lmkLIZqVCRcDzDPb/docs/dashboard/images/webhooks-detail.png?fit=max&auto=format&n=lmkLIZqVCRcDzDPb&q=85&s=7e035140ab057249a71d92e402b43034" alt="Webhook endpoint detail" width="2880" height="1702" data-path="docs/dashboard/images/webhooks-detail.png" />
</Frame>

You can update the URL, change the subscribed events, or delete the endpoint. Deleting an endpoint is permanent — SignatureAPI stops sending events to that URL immediately.

## Testing webhooks

Use test-mode webhook endpoints while building your integration. Test events behave the same as live events but are triggered by envelopes created with a test API key.

These tools can help you inspect and debug webhook deliveries:

* **[Webhook.site](https://webhook.site)** — generates a temporary URL and shows every request sent to it.
* **[ngrok](https://ngrok.com)** — creates a tunnel from a public URL to your local machine so you can process webhooks locally.

<Note>You need the **Manage webhooks** permission to add or remove webhook endpoints. See [Dashboard Users](/docs/dashboard/users) for details on roles and permissions.</Note>
