Skip to main content
GET
Retrieve a Webhook Subscription

Authorizations

Authorization
string
header
required

Token-based authentication with required prefix "Token"

Path Parameters

id
integer
required

A unique integer value identifying this webhook.

Response

Webhook subscription retrieved successfully.

id
integer
required
read-only
url
string<uri>
required

Webhook URL. Supports {{variable}} placeholders resolved from the webhook payload (e.g. https://api.example.com/leads/{{id}}/notify). Use dot notation for nested values (e.g. {{metadata.us_state}}).

Maximum string length: 255
trigger
enum<string>[]
Available options:
LEAD_CREATED,
LEAD_UPDATED,
LEAD_CLOSED,
LEAD_CLOSED_INCOMPLETE,
LEAD_LOST,
LEAD_SCHEDULE_COMPLETED,
LEAD_LATE_CALLBACK,
LEAD_OUT_OF_TERRITORY,
LEAD_BAD_NUMBER,
LEAD_CANCELLED,
LEAD_CALLBACK_TO_TRANSFER,
LEAD_BEFORE_REENGAGEMENT,
LEAD_REENGAGEMENT,
LEAD_FIRST_INBOUND,
CALL_COMPLETE,
BEFORE_CALLING,
CALL_FAILED,
CALL_ENDED,
CALL_TRANSFER_INITIATED,
SMS_COMPLETE,
SMS_DNC,
CALL_DNC
method

HTTP method to use when sending the webhook request. NULL or blank defaults to POST.

  • GET - GET
  • POST - POST
  • PUT - PUT
  • PATCH - PATCH
Available options:
GET,
POST,
PUT,
PATCH
filter_condition
string | null

Optional filter expression that controls when the webhook fires. The expression is evaluated against the webhook payload - the same data sent in the request body. Leave blank to always fire. Use has('field') to check whether a field exists, get('path.to.value', default) for safe nested access, and comparison operators such as ==, !=, and, or. Examples: status == 'CLOSED', has('last_chat') and last_chat['is_contact'], get('last_chat.call_direction', '') == 'INBOUND'