Webhook Events
When you create a webhook you choose which events it should receive. Each event is
named <resource>.<action> — for example, submission.processed.
Events marked Default are pre-selected when you create a webhook in the dashboard. The rest are opt-in — select them explicitly if you want them.
Submissions
Section titled “Submissions”| Event | Description | |
|---|---|---|
submission.processed | When PDF generation completes | Default |
submission.failed | When PDF generation fails | Default |
submission.created | When a submission is created | |
submission.updated | When a submission is updated | |
submission.expired | When a submission expires |
Data Requests
Section titled “Data Requests”| Event | Description | |
|---|---|---|
submission_data_request.viewed | When a data request is first viewed | Default |
submission_data_request.completed | When a data request is completed | Default |
submission_data_request.updated | When a data request is updated |
Combined Submissions
Section titled “Combined Submissions”| Event | Description | |
|---|---|---|
combined_submission.processed | When combined PDF generation completes | Default |
combined_submission.failed | When combined PDF generation fails | Default |
combined_submission.expired | When a combined submission expires |
Submission Batches
Section titled “Submission Batches”| Event | Description | |
|---|---|---|
submission_batch.processed | When every submission in a batch has processed | Default |
submission_batch.failed | When a batch finishes and at least one submission failed | Default |
Templates
Section titled “Templates”| Event | Description |
|---|---|
template.created | When a template is created |
template.updated | When a template is updated |
template.deleted | When a template is deleted |
API Tokens
Section titled “API Tokens”| Event | Description |
|---|---|
api_token.created | When an API token is created |
api_token.revoked | When an API token is revoked |
api_token.deleted | When an API token is deleted |
Webhooks
Section titled “Webhooks”| Event | Description |
|---|---|
webhook.created | When a webhook is created |
webhook.updated | When a webhook is updated |
webhook.deleted | When a webhook is deleted |
Integrations, Files, Folders & Users
Section titled “Integrations, Files, Folders & Users”| Event | Description |
|---|---|
account_integration.created | When an account integration is created |
account_integration.updated | When an account integration is updated |
account_integration.deleted | When an account integration is deleted |
custom_file.created | When a custom file is uploaded |
folder.created | When a folder is created |
folder.updated | When a folder is updated |
folder.deleted | When a folder is deleted |
user.created | When a user is created without an invitation |
user.invited | When a user is invited (sent instead of user.created) |
user.updated | When a user is updated |
user.deleted | When a user is deleted |
Scoping which events a webhook receives
Section titled “Scoping which events a webhook receives”Beyond choosing event types, you can narrow down when a webhook fires.
Mode (test vs. live)
Section titled “Mode (test vs. live)”The Mode setting limits a webhook to a particular environment:
- All submissions: fire for both test and live submissions (the default).
- Test only: only fire for test submissions.
- Live only: only fire for live submissions.
The mode of an event is determined by the submission it relates to (test or live), or by whether it was generated by a test (development) API token.
Template, folder, user, webhook, and integration events aren’t test or live, so they’re sent to webhooks of every mode. API token events use the mode of the token itself.
API tokens, templates, and folders
Section titled “API tokens, templates, and folders”You can limit a webhook to specific resources by listing their IDs. In the
dashboard, add the IDs to the API Token IDs, Template IDs, and Folder
IDs fields (one ID per row). Through the API, set the api_token_ids,
template_ids, and folder_ids arrays.
- API Token IDs: only fire for events generated by one of these API tokens (submission, data request, combined submission, submission batch, and custom file events).
- Template IDs: only fire for events related to one of these templates (their submissions, data requests, and template events). Matched by ID, so it keeps working across template versions.
- Folder IDs: only fire for events related to templates in one of these folders or any of their subfolders (folder scoping is hierarchical), and for folder events about those folders and their subfolders.
Leave all three empty to receive events for everything in the account.
A scoped webhook can only subscribe to event types that at least one of its scope lists applies to. The dashboard disables the other event types, and the API rejects them with a validation error.