Skip to content

Webhooks Overview ​

Webhooks let you receive real-time HTTP notifications when events occur in your Replicer account. Instead of polling the API, you configure an endpoint URL and Replicer pushes events to you.

How it works ​

1. An event occurs (e.g., a call ends)
2. Replicer finds your active webhook endpoints subscribed to that event
3. Replicer sends a POST request to each endpoint with the event payload
4. Your server responds with 2xx to acknowledge receipt
5. If delivery fails, Replicer retries up to 5 times with exponential backoff

Setting up webhooks ​

From the Dashboard ​

  1. Go to Dashboard → Settings → Webhooks
  2. Click Add Endpoint
  3. Enter your endpoint URL (must be HTTPS in production)
  4. Select the events you want to receive
  5. Copy the signing secret — it's shown only once

Endpoint requirements ​

  • Must accept POST requests with Content-Type: application/json
  • Must respond with a 2xx status code within 10 seconds
  • Should be HTTPS in production (HTTP allowed for local development)

Payload format ​

All webhook events are delivered as JSON with a consistent envelope:

json
{
  "id": "evt-unique-delivery-id",
  "event": "call.ended",
  "timestamp": "2026-04-05T14:04:00Z",
  "data": {
    // Event-specific data
  }
}

Request headers ​

HeaderDescription
Content-Typeapplication/json
X-Replicer-EventEvent type (e.g., call.ended)
X-Replicer-Delivery-IdUnique delivery ID
X-Replicer-TimestampUnix timestamp of the delivery
X-Replicer-SignatureHMAC-SHA256 signature for verification

Retry policy ​

If your endpoint doesn't respond with a 2xx status code, Replicer retries the delivery with exponential backoff:

AttemptDelay
1st retry5 seconds
2nd retry30 seconds
3rd retry2 minutes
4th retry10 minutes
5th retry30 minutes

After 5 failed retries, the delivery is marked as failed. You can view delivery history in the dashboard.

Delivery logs ​

Every delivery attempt is logged. View the history in Settings → Webhooks → click the delivery icon on an endpoint. Each log entry includes:

  • Event type
  • HTTP response status code
  • Attempt number
  • Success/failure status
  • Timestamp

Replicer API Documentation