# Call Events


## lead.call_initiated

Triggered when an outbound call to a lead is initiated by the system.

```json
{
  "metadata": {
    "apiVersion": "2026-02-09",
    "eventType": "lead.call_initiated",
    "campaignId": "abc456xyz",
    "eventTime": "2024-01-28T12:00:00.000Z"
  },
  "data": {
    "phone": "+1234567890",
    "externalLeadId": "abc123",
    "isScheduled": true
  }
}
```

| Field | Type | Description |
| :--- | :--- | :--- |
| `data.phone` | string | E.164 formatted phone number |
| `data.externalLeadId` | string? | Your external lead ID, if one was provided |
| `data.isScheduled` | boolean | `true` if the call was requested by the lead, `false` if system-initiated |

---

## lead.call_received

Triggered when an inbound call from a lead is received and answered by the system.

```json
{
  "metadata": {
    "apiVersion": "2026-02-09",
    "eventType": "lead.call_received",
    "campaignId": "abc456xyz",
    "eventTime": "2024-01-28T12:00:00.000Z"
  },
  "data": {
    "phone": "+1234567890",
    "externalLeadId": "abc123"
  }
}
```

| Field | Type | Description |
| :--- | :--- | :--- |
| `data.phone` | string | E.164 formatted phone number |
| `data.externalLeadId` | string? | Your external lead ID, if one was provided |

---

## lead.call_scheduled

Triggered when a call requested by a lead is scheduled for a future time. Only fires for lead-initiated calls (e.g., when a lead responds with interest or requests a callback), not for system-initiated flow step calls.

```json
{
  "metadata": {
    "apiVersion": "2026-02-09",
    "eventType": "lead.call_scheduled",
    "campaignId": "abc456xyz",
    "eventTime": "2024-01-28T12:00:00.000Z"
  },
  "data": {
    "phone": "+1234567890",
    "externalLeadId": "abc123",
    "scheduledTime": "2024-01-28T14:00:00.000Z"
  }
}
```

| Field | Type | Description |
| :--- | :--- | :--- |
| `data.phone` | string | E.164 formatted phone number |
| `data.externalLeadId` | string? | Your external lead ID, if one was provided |
| `data.scheduledTime` | string | ISO 8601 timestamp of when the call is scheduled |

---

## lead.call_ended

Triggered when a call with a lead ends (either inbound or outbound). Includes the call result and type information.

```json
{
  "metadata": {
    "apiVersion": "2026-02-09",
    "eventType": "lead.call_ended",
    "campaignId": "abc456xyz",
    "eventTime": "2024-01-28T12:05:00.000Z"
  },
  "data": {
    "phone": "+1234567890",
    "externalLeadId": "abc123",
    "callType": "inbound",
    "callResult": "transfer",
    "isScheduled": false
  }
}
```

| Field | Type | Description |
| :--- | :--- | :--- |
| `data.phone` | string | E.164 formatted phone number |
| `data.externalLeadId` | string? | Your external lead ID, if one was provided |
| `data.callType` | string | `"inbound"`, `"scheduled"`, or `"unscheduled"` |
| `data.callResult` | string | `"transfer"`, `"dnc"`, `"reschedule"`, or `"no_response"` |
| `data.isScheduled` | boolean | `true` if `callType` is `"scheduled"` |

---

## lead.call_transferred

Triggered when an active call with a lead is transferred to an agent/representative.

```json
{
  "metadata": {
    "apiVersion": "2026-02-09",
    "eventType": "lead.call_transferred",
    "campaignId": "abc456xyz",
    "eventTime": "2024-01-28T12:00:00.000Z"
  },
  "data": {
    "phone": "+1234567890",
    "externalLeadId": "abc123",
    "transferredTo": "+1987654321",
    "callType": "inbound",
    "isScheduled": false
  }
}
```

| Field | Type | Description |
| :--- | :--- | :--- |
| `data.phone` | string | E.164 formatted phone number |
| `data.externalLeadId` | string? | Your external lead ID, if one was provided |
| `data.transferredTo` | string | E.164 phone number the call was transferred to |
| `data.callType` | string | `"inbound"`, `"outbound"`, or `"unknown"` |
| `data.isScheduled` | boolean | `true` if the call was a scheduled callback |

---

## lead.call_key_pressed

Triggered when a lead presses a key during an IVR call.

```json
{
  "metadata": {
    "apiVersion": "2026-02-09",
    "eventType": "lead.call_key_pressed",
    "campaignId": "abc456xyz",
    "eventTime": "2024-01-28T12:00:00.000Z"
  },
  "data": {
    "phone": "+1234567890",
    "externalLeadId": "abc123",
    "callType": "scheduled",
    "isScheduled": true,
    "keypressNumber": "1"
  }
}
```

| Field | Type | Description |
| :--- | :--- | :--- |
| `data.phone` | string | E.164 formatted phone number |
| `data.externalLeadId` | string? | Your external lead ID, if one was provided |
| `data.callType` | string | `"inbound"`, `"scheduled"`, or `"unscheduled"` |
| `data.isScheduled` | boolean | `true` if `callType` is `"scheduled"` |
| `data.keypressNumber` | string | The key pressed: `"1"` (transfer), `"2"` (reschedule), or `"9"` (remove from list) |

### IVR Key Options

| Key | Action | Available For |
| :--- | :--- | :--- |
| `1` | Transfer to agent | All call types |
| `2` | Reschedule call | Outbound calls only |
| `9` | Remove from list (DNC) | All call types |
