Skip to main content
Webhooks send HTTP POST requests to your server whenever specific events occur in Quikly. Use them to sync with your CRM, trigger n8n workflows, send Slack notifications, or build custom automations.

Create a webhook

You can create webhooks from the Quikly UI or through the API.

From the UI

Go to Settings → Webhooks and click Create Webhook. Enter a name, your endpoint URL, and select the events you want to subscribe to.

From the API

The response includes a secret field that is shown only once. Store it immediately — you need it to verify webhook signatures.

Available events

You can subscribe to specific events or listen to all of them by including each event in the events array.

Payload format

Every webhook delivery sends a JSON payload with this structure:
For lead_session events, the data object contains session fields like channel, channel_id, client_name, brief, and status.

HTTP headers

Each webhook request includes these headers:

Verify signatures

Every webhook is signed with the secret you received when creating it. Verify the X-Quikly-Signature header to confirm the request came from Quikly.
Always verify signatures before processing webhook payloads. This prevents attackers from sending fake events to your endpoint.

Retry policy

If your endpoint returns a non-2xx status code or times out (10-second limit), Quikly retries the delivery with exponential backoff: After 5 failed retries, the delivery is marked as failed. You can see all attempts in the webhook logs.

Test a webhook

Send a test event to verify your endpoint is reachable:
The test payload uses the event type test and contains sample data. Your endpoint should return a 200 status code.

View delivery logs

Check recent deliveries and debug failures:
Each log entry includes the HTTP status code, response body, response time, and the full payload that was sent. You can also view logs in the Quikly UI under Settings → Webhooks → (select webhook) → Logs.

Managing webhooks