# How to use Call Accepted Webhook

There is a significant difference between a call being initiated and a call actually being answered. A customer can call your business, the phone can ring, and the call can still go unanswered. Or an agent can initiate an outgoing call that the customer never picks up.

For businesses tracking communication activity, this difference matters enormously. A call that rang and went unanswered tells a very different story than a call that was picked up and a real conversation took place.

The **Call Accepted Webhook** captures that precise moment — the instant a call is answered and an active conversation begins. Not when the call was initiated. Not when it ended. But the exact moment it connected.

***

#### <mark style="color:$primary;">**What Is the Call Accepted Webhook?**</mark>

In DoubleTick, every WhatsApp call goes through a lifecycle. It is first initiated, then either accepted or rejected, and eventually ended. The **Call Accepted** webhook fires at the second stage of this lifecycle — the moment the call is answered and moves into an active session.

This webhook fires when a call is answered either by the customer receiving an outgoing call from an agent, or by an agent receiving an incoming call from a customer. In both cases, the moment the call is picked up and the status moves to in progress, this webhook fires and sends the details to your connected system.

Think of it as a live signal that tells your system: this call is no longer just ringing — it is now an active conversation happening right now.

***

#### <mark style="color:$primary;">**When Does This Webhook Trigger?**</mark>

This webhook activates when:

* A customer answers an outgoing call initiated by a DoubleTick agent
* A DoubleTick agent answers an incoming call from a customer
* The call status changes to in progress — marking the start of an active call session

***

#### <mark style="color:$primary;">**Step-by-Step Setup Guide**</mark>

<figure><img src="https://2303112206-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F53n17VnOICC1LtDqlENV%2Fuploads%2F2rBOlrIYp50ZXCJCuHr6%2FUntitled%20design%20-%202026-03-31T143010.540.gif?alt=media&#x26;token=f58d17ba-d7a8-4812-8a4c-fa90e596dfa6" alt=""><figcaption></figcaption></figure>

#### <mark style="color:$primary;">**Step 1: Open Webhooks in DoubleTick**</mark>

1. Log in to your DoubleTick account
2. Go to **Settings**
3. Click on **Webhooks**

#### <mark style="color:$primary;">**Step 2: Create a New Webhook**</mark>

1. Click **New Webhook**
2. Give it a clear name — for example: `Call Accepted Tracker`

#### <mark style="color:$primary;">**Step 3: Get Your Webhook URL**</mark>

You need a destination URL — this is where DoubleTick will send the data the moment a call is accepted.

You can connect it to:

* A **CRM** like Zoho, HubSpot, or Salesforce
* An **automation tool** like Zapier or Pabbly to route the data into your CRM
* Your own **backend or internal logging system**

**For testing purposes**, you can use DoubleTick's **Bot Studio** to capture and preview the data first:

1. Open a new tab and go to **Bot Studio**
2. Click **Create New Bot**
3. Set the trigger to **On Webhook**
4. **Copy the webhook URL** that appears

#### <mark style="color:$primary;">**Step 4: Fill in Webhook Details**</mark>

1. Go back to the **Webhooks** page
2. Paste the webhook URL
3. Select your **API Number** (your WABA/WhatsApp Business number)
4. Click **Continue**

#### <mark style="color:$primary;">**Step 5: Choose the Event**</mark>

1. Select **Call Accepted** from the event list
2. Click **Create Webhook**

Your webhook is now live and tracking every call the moment it connects.

***

#### <mark style="color:$primary;">**How to Test It**</mark>

1. Make or receive a WhatsApp call through DoubleTick and answer it
2. Go to **Bot Studio → Capture Response → View Response Data**

You will see all the data captured at the exact moment the call was accepted and moved to in progress.

***

#### <mark style="color:$primary;">**What Data Do You Receive?**</mark>

When this webhook fires, it sends the following information to your system:

| Field                 | What It Tells You                                         |
| --------------------- | --------------------------------------------------------- |
| Event                 | "CALL\_ACCEPTED" — confirms this is a call accepted event |
| Call ID               | A unique identifier for this specific call session        |
| Chat ID               | The ID of the chat thread this call is linked to          |
| Device ID             | The device from which the call was handled                |
| Picked By             | The phone number of the agent who is on the call          |
| Call Status           | "IN\_PROGRESS" — confirms the call is now active          |
| Customer ID           | The unique identifier of the customer in DoubleTick       |
| WABA Number           | Which WhatsApp Business number is being used              |
| Customer Name         | The name saved for this customer in DoubleTick            |
| Call Direction        | Whether the call is incoming or outgoing                  |
| Call Started At       | The exact date and time the call was accepted and began   |
| Chat Message ID       | The ID linking this call to the customer's chat thread    |
| Customer Phone Number | The customer's WhatsApp number                            |

The **Call Status field showing IN\_PROGRESS** is the key signal here — it confirms that this is not just a ringing call but an actual live conversation that has started. Combined with the **Call Started At** timestamp, you have a precise record of exactly when each conversation began.

***

#### <mark style="color:$primary;">**Real-Life Business Use Case: A Home Services Company Tracking Agent Connect Rates and Live Call Activity in Real Time**</mark>

**The Situation**

A home services company — offering plumbing, electrical, and carpentry services — manages all customer communication through DoubleTick. Their agents make outgoing calls to customers to confirm bookings, follow up on inquiries, and coordinate service appointments. Customers also call in directly when they have urgent requirements or want to check on a technician's arrival time.

The operations manager needs visibility into two things: how many calls are actually connecting versus just ringing unanswered, and which agents are currently on active calls at any given moment so workload can be distributed effectively.

**The Problem**

The company could see from the Outgoing Call Initiated webhook that agents were making calls. But they had no way to distinguish between calls that actually connected and resulted in a real conversation versus calls that rang and went unanswered. An agent could show a high call initiation count while actually speaking to very few customers — because most of their calls were going unanswered.

This distinction is critical for the operations team. A customer booking confirmation that was initiated but never accepted means the customer was never actually confirmed. If the operations manager assumes the call was successful simply because it was initiated, a technician could be dispatched to a job the customer has no idea about.

Additionally, the operations team had no way to see in real time which agents were currently on active calls. When a high-priority customer called in, the manager had no way to know which agents were free to take it without manually checking with everyone.

**How the Call Accepted Webhook Solves This**

The company connects this webhook directly to their CRM.

Every time a call is accepted and moves to in progress, the CRM automatically creates a call activity entry in the customer's record with the call started at timestamp, the agent's phone number from the picked by field, the call direction, and the call status as in progress.

This gives the operations manager a clean distinction in the CRM between calls that were merely initiated and calls that were actually answered and resulted in a real conversation. Booking confirmations are only marked as confirmed in the CRM when a call accepted event is logged — not simply when a call was initiated.

For real-time workload visibility, the company builds a simple internal dashboard fed by the CRM data. The dashboard shows all calls currently in progress — pulled from records where call status is in progress and no corresponding call ended event has been logged yet. The operations manager can see at a glance exactly how many agents are on active calls at any moment and route incoming calls to agents who are free.

**The Result**

* The operations team can clearly distinguish between call attempts and actual conversations, giving them an accurate picture of real customer communication
* Booking confirmations are only recorded when a call is actually answered — eliminating the risk of dispatching technicians for unconfirmed jobs
* The operations manager has real-time visibility into which agents are on active calls, enabling smarter call routing and workload distribution
* Agent performance is measured not just on how many calls they initiate but on how many calls actually connect — a far more meaningful metric
* The CRM builds a precise timeline of every customer interaction, with exact timestamps of when each conversation actually began

***

#### <mark style="color:$primary;">**Summary**</mark>

The Call Accepted Webhook captures the moment that truly matters in any call — not when it was attempted, but when it actually connected. For businesses that need to distinguish between call attempts and real conversations, track live call activity, or log the precise start time of every customer interaction, this webhook provides exactly the signal they need.

Set it up once, and your system always knows which calls turned into real conversations — and exactly when they began.
