Gary Club

Webhook Integration

Send call data to any URL in real-time using webhooks.

Updated March 1, 20265 min read
webhooksintegrationdeveloper

What Are Webhooks?

A webhook is a way for your AI agent to send call data to another system automatically. Think of it like a notification — when something happens (a call ends, an appointment is booked, a new contact is created), the platform sends the details to a URL you specify.

Webhooks are the most flexible connector available because they work with any system that can receive HTTP requests. Whether it's a custom application, a no-code automation platform, or a CRM, if it has a webhook URL, your AI agent can send data to it.

Common Use Cases

Here are the most popular ways agencies use webhooks:

Use CaseHow It Works
Push leads to a CRMAfter each call, send caller details to your client's CRM (even if we don't have a native connector)
Notify via Slack/TeamsTrigger a message in a team channel with the call summary and caller info
Update a spreadsheetVia Zapier or Make — add a row to Google Sheets for every call
Trigger an emailSend a custom follow-up email to the caller using your email marketing tool
Log to a dashboardFeed call data into a BI tool or custom dashboard for reporting
Kick off a workflowStart an onboarding sequence, create a support ticket, or assign a task

Webhook Payload Data

When a webhook fires, it sends a JSON payload containing the call details. Here's the data included:

{
  "event": "call.completed",
  "timestamp": "2026-02-15T14:32:00Z",
  "call": {
    "id": "call_abc123",
    "duration_seconds": 187,
    "caller_phone": "+15551234567",
    "agent_id": "agent_xyz",
    "quality_score": 88,
    "sentiment": "positive",
    "goodbye": true
  },
  "contact": {
    "name": "Sarah Johnson",
    "email": "sarah@example.com",
    "phone": "+15551234567"
  },
  "summary": "Caller asked about teeth whitening options and pricing. Agent provided information about in-office and take-home whitening kits. Caller booked a consultation for next Tuesday.",
  "intent": "appointment_booking",
  "data_collected": {
    "service_requested": "teeth whitening consultation",
    "preferred_date": "next Tuesday"
  },
  "actions": [
    {
      "type": "booking",
      "details": "Consultation booked for 2026-02-18 at 10:00 AM"
    }
  ]
}

Note: This payload structure represents the standard webhook format. Field names and nesting may vary slightly depending on your configuration and which event types you’ve subscribed to. Test your webhook endpoint with a real call to confirm the exact payload your system receives.

Warning: Your webhook endpoint must use HTTPS (not HTTP) and return a 200 status code within 10 seconds. If the endpoint fails to respond, is unreachable, or returns an error, the platform will retry up to 3 times with exponential backoff. After 3 failures, the webhook delivery is marked as failed and logged for troubleshooting.

Setting Up Webhooks

Get Your Webhook URL

First, you need a URL to receive the data. This could be from Zapier (use "Webhooks by Zapier" trigger), n8n (use the "Webhook" node), Make.com, or your own custom endpoint. Copy the URL.

Navigate to Connectors

In your agency portal, go to the client's agent settings and find the Connectors section. Select Webhooks.

Add the Webhook URL

Paste your HTTPS webhook URL into the endpoint field. Give it a descriptive name (e.g., "Zapier — New Call to Google Sheets").

Select Trigger Events

Choose which events should fire the webhook. Options typically include:

  • Call completed — fires after every call ends
  • Booking made — fires when the agent books an appointment
  • New contact created — fires when a first-time caller is detected

Send a Test Event

Click the "Send Test" button to fire a sample payload to your URL. Verify that it arrives correctly in your receiving system and that the data maps properly.

Activate and Monitor

Enable the webhook and make a real test call. Check the webhook delivery log in the connector settings to confirm successful delivery. Green checkmarks mean success; red Xs mean the endpoint returned an error.

Tip: Pairing webhooks with Zapier or n8n is the easiest way to connect your AI agent to thousands of apps without writing any code. A Zapier webhook can route call data to Google Sheets, Slack, email, HubSpot, Trello, Asana — you name it. It's the Swiss Army knife of integrations.

Troubleshooting Webhooks

If your webhook isn't working as expected, check these common issues:

ProblemLikely CauseSolution
Webhook never firesWrong trigger event selectedVerify the event type matches what you expect
Delivery shows "failed"Endpoint returned non-200 statusCheck your receiving service is running and healthy
Data arrives but looks wrongField mapping issue in receiving appReview the JSON structure and remap fields
Delivery times outEndpoint takes too long to respondEnsure your endpoint responds within 10 seconds
Duplicate deliveriesRetries after initial timeoutUse the call ID to deduplicate on the receiving end

Security Considerations

Webhook payloads contain caller information (phone numbers, names, emails), so security matters:

  • Always use HTTPS endpoints — never send call data over unencrypted HTTP
  • If your receiving system supports it, verify the webhook signature to ensure requests are genuine
  • Limit access to the webhook endpoint to known IP ranges if possible
  • Don't log raw payloads in publicly accessible locations

Was this page helpful?