Back to Help Center

Webhooks

Pro

Webhooks let you push real-time events from RadiusOS to external services — your own API, Zapier, Make, or any HTTP endpoint.

Overview

When something happens in RadiusOS (a contact is created, a stage changes, a task is completed), a webhook sends a JSON payload to a URL you specify. This lets you integrate RadiusOS with virtually any external tool without writing custom polling code.

Webhooks are a Pro feature. Free plan users cannot configure webhook endpoints.

Setting up a webhook

1

Go to Settings → Webhooks

Click + New Webhook to configure an endpoint.

2

Enter the endpoint URL

This is the URL that will receive POST requests when events fire. Must be HTTPS.

3

Select events

Choose which events trigger the webhook. Options include: contact.created, contact.updated, contact.deleted, contact.stage_changed, task.created, task.completed, email.sent, email.received.

4

Save and test

After saving, use the "Send Test" button to fire a sample payload to your endpoint and verify it's receiving data correctly.

Payload format

Webhooks send a JSON POST request with the following structure:

```json

{

"event": "contact.stage_changed",

"timestamp": "2025-01-15T10:30:00Z",

"workspace_id": "ws_...",

"data": {

"contact_id": "...",

"from_stage": "Lead",

"to_stage": "Qualified"

}

}

```

The `data` field varies by event type. All payloads include `event`, `timestamp`, and `workspace_id`.

Retry behavior

If your endpoint returns a non-2xx status code, RadiusOS retries up to 3 times with exponential backoff (30 seconds, 2 minutes, 10 minutes). After 3 failures, the delivery is marked as failed and visible in the webhook logs.

Related articles

Built a workflow that works? Share it with the world.

Publish your CRM template to the RadiusOS marketplace. Get discovered by thousands of users, build your reputation, and help others skip the setup.