---
title: "Get webhooks when documents are signed or forms submitted"
description: "Add a webhook endpoint on Business to get signed JSON events when signature requests complete, forms get responses, exports finish or workflows run."
url: https://help.pdfbetter.com/automation/webhook-endpoints/
collection: "Workflows & integrations"
section: "API & agents"
updated: 2026-10-18
publisher: "PDFBetter (AI Generated Inc.)"
---

# Get webhooks when documents are signed or forms submitted

> In **Settings** → **API keys** → **Webhooks**, enter an https **Endpoint URL**, pick **Events** and click **Add endpoint**. Copy the signing secret (shown once) and use it to verify the `PDFBetter-Signature` header.

- Available on: Business

Do it in PDFBetter: https://pdfbetter.com/app/settings/api-keys/

Webhooks tell your server the moment something changes, so you don't have to poll. They're part of the Business plan and live on the same page as your API keys.

## Add an endpoint

1. **Open API keys**: Click **Settings** at the bottom of the sidebar, then **API keys**, and scroll to **Webhooks**.
2. **Enter the endpoint**: Type your **Endpoint URL**. It must use https and reach a public address. Add a **Description** if you have several.
3. **Pick events**: Tick the **Events** you want, or **All events (including ones added later)**.
4. **Save and copy the secret**: Click **Add endpoint**. Copy the signing secret now; it won't be shown again.
5. **Send a test**: Click **Test** next to the endpoint and check your server's logs for the event.

## Events

| Event | Type |
| --- | --- |
| Request sent / Recipient viewed / Recipient signed | `signature_request.sent`, `.viewed`, `.signed` |
| Request completed | `signature_request.completed` |
| Recipient declined / Request canceled / Request expired | `signature_request.declined`, `.canceled`, `.expired` |
| Form response | `form.response_created` |
| Document exported | `document.exported` |
| Bulk fill finished | `bulk_job.completed` |
| Workflow awaiting approval / succeeded / failed / export ready / webhook step | `workflow.run.*` |

## Receiving events

- Reply with any 2xx within 10 seconds and do slow work afterwards. Redirects count as failures.
- Verify the `PDFBetter-Signature` header with the endpoint's signing secret. The [developer docs](https://pdfbetter.com/developers/) show how, with code.
- Failed deliveries are retried. The event `id` stays the same, so de-duplicate on it.
- Order isn't guaranteed. Fetch the resource if you need its latest state.

> **Heads up:** When deliveries keep failing, the endpoint shows **Failing** and is disabled after 3 days of failures; the account owner is emailed. Events that happen while it's disabled aren't queued. Fix the server, then click **Enable**.

## Manage endpoints

Next to each endpoint: **Test** sends a test event, **Rotate secret** issues a new signing secret (it takes effect immediately), **Disable**/**Enable** pauses deliveries, and the trash icon deletes it. Deleting stops deliveries at once, including queued retries.

### Can a workflow send a webhook?

Yes. Add a **Send webhook** step, or set an **Export** step to **Also send to my webhook endpoints (Business)**. Both go to the endpoints set up here.

### I'm not on Business. Is there another way to get notified?

Zapier and Make triggers (for example **Document Fully Signed**) work on any plan with an account and don't use this page.

## Related articles

- [Use the PDFBetter API and create an API key](https://help.pdfbetter.com/automation/rest-api-keys.md): On Business, open Settings → API keys, name the key, tick its Permissions and click Create key. Copy it right away; send it as Authorization: Bearer pb_live_… to https://api.pdfbetter.com/v1/.
- [PDFBetter actions and triggers in Zapier and Make](https://help.pdfbetter.com/automation/zapier-make-actions-triggers.md): Zapier and Make get the same set: 15 instant triggers (signing, forms, exports, bulk fills, workflow runs) and actions for documents, pages, conversion, AI, extraction, workflows, workspaces, forms and signatures.
- [Automate repeated steps with saved workflows](https://help.pdfbetter.com/automation/saved-workflows.md): Open Workflows, pick a recipe or Start empty, add steps, choose how it starts, then click Create workflow. Each step uses its usual allowance (OCR pages, AI credits), and your plan sets how many workflows you can save.
- [Track, remind, cancel or resend a signature request](https://help.pdfbetter.com/signing/track-signature-requests.md): Open Sent in the sidebar and select a request. Each recipient shows Emailed, Opened, Signed or Declined. Use Remind, New link / fix email or Cancel request, and download the Signed PDF and Certificate once it's Completed.
- [View and export form responses](https://help.pdfbetter.com/forms/view-and-export-form-responses.md): Open Fill links in the sidebar and choose Responses next to the form. Each row expands to All answers and has Download filled PDF; the CSV and Excel buttons export every response with one column per field.

---
Source: https://help.pdfbetter.com/automation/webhook-endpoints/ · PDFBetter Help Center · Last checked against the product 2026-10-18. Questions: support@pdfbetter.com
