API & Webhook Settings
Manage OAuth 2.0 API access and webhook subscriptions for third-party integrations like Zapier, Make, and custom applications.
API access and webhooks are available exclusively on the Enterprise plan. Admins on other plans see an upgrade prompt on these tabs.
Only organization administrators can access the API Settings and Webhooks tabs.
API Settings Tab
Navigate to Settings → API Settings to manage API access.
Enabling API Access
API access is disabled by default. Use the toggle at the top of the tab to enable it. While disabled, OAuth clients cannot be created and third-party applications cannot access your organization's data.
OAuth Clients
Each integration that connects to the API needs an OAuth client. The clients table shows:
- Client ID - Public identifier (with copy button)
- Allowed Scopes - Permissions granted to the client
- Created date
- Delete action
Creating an OAuth Client
- Enable API access
- Click Create OAuth Client
- Enter a descriptive name (e.g., "Zapier Integration", "Mobile App")
- Select the scopes the client is allowed to request
- Add one or more redirect URIs (where users are sent after authorizing)
- Click Create Client
The client secret is shown only once, immediately after creation. Copy it and store it securely. If you lose it, delete the client and create a new one.
Available Scopes
| Scope | Description |
|---|---|
portal:read | List and view portals |
portal:write | Create and update portals |
file:list | List file names and metadata |
file:upload | Upload files |
task:read | List tasks |
task:write | Create, update, and complete tasks |
guest:invite | Invite guests to portals |
webhook:manage | Manage webhooks |
Users authorizing a client can choose which of the allowed scopes to grant on the consent screen. Connected apps never have access to download file contents.
Webhooks Tab
Navigate to Settings → Webhooks to manage webhook subscriptions. Webhooks send real-time HTTP notifications to your systems when events occur in your organization.
Webhook Table
Each webhook shows:
- URL - Where events are delivered
- Events - Subscribed event types
- Status - Active or Disabled
- Stats - Successful / failed delivery counts
- Last Triggered - Most recent delivery
Creating a Webhook
- Click Create Webhook
- Enter the destination URL (must be HTTPS)
- Select one or more event types
- Click Create
Available Events
| Event | When Triggered |
|---|---|
portal.created | New portal created |
portal.workflow_changed | Portal workflow state changed |
file.uploaded | File uploaded to a portal |
file.signed | PDF signature completed |
task.created | New task created |
task.completed | Task marked as done |
guest.invited | Guest invited to a portal |
Webhook Actions
For each webhook you can:
- Pause/Resume - Temporarily disable without deleting
- Send Test - Deliver a test event to verify your endpoint
- View Delivery Logs - Inspect recent delivery attempts and responses
- Copy Secret - Copy the signing secret for signature verification
- Delete - Remove the webhook
Verifying Deliveries
Every delivery is signed with HMAC-SHA256 using the webhook's secret. Verify the X-Webhook-Signature header on your endpoint before trusting the payload. See the Developer Quickstart for example code.
Failed deliveries are retried 3 times with exponential backoff.
Managing via API
Everything on these tabs can also be managed programmatically — see the API Reference for the webhook endpoints.
Related Topics
- Developer Quickstart - OAuth flow and first API calls
- Settings Overview - All settings tabs
- Feature Comparison - Enterprise features