Skip to main content
Webhooks allow you to receive real-time HTTP notifications when events occur in your organization. Instead of polling the API, you can subscribe to specific events and receive push notifications to your server.

Available event types

The following event types are available for webhook subscriptions:
  • workflow.started - A workflow has started execution
  • workflow.completed - A workflow has completed successfully
  • workflow.failed - A workflow has failed
  • workflow.step.started - A workflow step has started
  • workflow.step.completed - A workflow step has completed
  • workflow.step.failed - A workflow step has failed

Webhook payload

When an event occurs, your webhook URL will receive a POST request with the following payload structure:

Security

If you provide a secret when creating a webhook, all requests will include an X-Webhook-Signature header containing an HMAC-SHA256 signature of the request body. Verify this signature to ensure requests are authentic.

The webhook subscription model

The webhook subscription model contains information about a webhook configuration.

Properties

integer
Unique identifier for the webhook subscription.
string
Human-readable name for the webhook.
string
The target URL where webhook payloads will be delivered.
array
List of event types this webhook is subscribed to.
boolean
Whether the webhook is currently active.
timestamp
When the webhook subscription was created.
timestamp
When the webhook subscription was last updated.

Create webhook subscription

POST /webhooks This endpoint allows you to create a new webhook subscription for your organization.

Required attributes

string
required
A human-readable name for the webhook (max 255 characters).
string
required
The target URL for webhook delivery (max 2048 characters). Must be HTTPS.
array
required
List of event types to subscribe to.

Optional attributes

string
A secret key for HMAC-SHA256 signature verification (max 255 characters).
object
Custom headers to include in webhook requests.
string
Organization identifier (header). If not provided, uses your default organization.
Response

List webhook subscriptions

GET /webhooks This endpoint returns all webhook subscriptions for your organization.

Optional attributes

string
Organization identifier (header). If not provided, uses your default organization.
Response

Get webhook subscription

GET /webhooks/:subscription_id This endpoint returns details of a specific webhook subscription.

Required attributes

integer
required
The unique identifier for the webhook subscription.

Optional attributes

string
Organization identifier (header). If not provided, uses your default organization.
Response

Update webhook subscription

PATCH /webhooks/:subscription_id This endpoint allows you to update an existing webhook subscription. All fields are optional - only provided fields will be updated.

Required attributes

integer
required
The unique identifier for the webhook subscription.

Optional attributes

string
A new name for the webhook.
string
A new target URL for webhook delivery.
array
Updated list of event types to subscribe to.
string
A new secret key for signature verification.
object
Updated custom headers.
boolean
Enable or disable the webhook.
string
Organization identifier (header). If not provided, uses your default organization.
Response

Delete webhook subscription

DELETE /webhooks/:subscription_id This endpoint deletes a webhook subscription. This action cannot be undone.

Required attributes

integer
required
The unique identifier for the webhook subscription to delete.

Optional attributes

string
Organization identifier (header). If not provided, uses your default organization.
Response

List webhook delivery logs

GET /webhooks/:subscription_id/logs This endpoint returns delivery logs for a specific webhook subscription, showing all delivery attempts including retries.

Required attributes

integer
required
The unique identifier for the webhook subscription.

Optional attributes

integer
Maximum number of logs to return (default: 50).
integer
Number of logs to skip for pagination (default: 0).
string
Organization identifier (header). If not provided, uses your default organization.
Response

List all delivery logs

GET /webhooks/logs/all This endpoint returns all webhook delivery logs for your organization, optionally filtered by event type.

Optional attributes

string
Filter logs by event type.
integer
Maximum number of logs to return (default: 50).
integer
Number of logs to skip for pagination (default: 0).
string
Organization identifier (header). If not provided, uses your default organization.
Response

Test webhook

POST /webhooks/:subscription_id/test This endpoint sends a test event to a webhook subscription to verify your configuration. A test workflow.completed event will be sent, and the delivery will appear in the subscription’s logs.

Required attributes

integer
required
The unique identifier for the webhook subscription to test.

Optional attributes

string
Organization identifier (header). If not provided, uses your default organization.
Response