Calls API Endpoints
The Calls API provides access to normalized call tracking data from CallRail, CallSource, CallRevu, and other connected call tracking providers.
List Calls
bash
GET /api/v1/callsQuery Parameters:
| Parameter | Type | Default | Description |
|---|---|---|---|
dealershipId | uuid | — | Filter by dealership |
startDate | ISO date | — | Start of date range |
endDate | ISO date | — | End of date range |
status | string | — | Filter: answered, missed, voicemail, abandoned |
direction | string | — | Filter: inbound, outbound |
limit | number | 50 | Records per page (max 200) |
offset | number | 0 | Pagination offset |
Example Request:
bash
curl "https://app.carfluence.io/api/v1/calls?dealershipId=uuid&startDate=2026-02-01&endDate=2026-02-10&status=missed&direction=inbound" \
-H "Authorization: Bearer <token>"Response:
json
{
"calls": [
{
"id": "uuid",
"dealership_id": "uuid",
"external_id": "callrail-123",
"caller_number": "+15551234567",
"tracking_number": "+15559876543",
"direction": "inbound",
"status": "missed",
"duration": 0,
"source": "Google Paid",
"recording_url": null,
"started_at": "2026-02-05T14:30:00Z",
"answered_at": null,
"plugin_slug": "callrail"
}
],
"pagination": {
"total": 47,
"limit": 50,
"offset": 0
}
}Call Statistics
bash
GET /api/v1/calls/statsQuery Parameters: Same filters as list endpoint (dealershipId, startDate, endDate).
Response:
json
{
"stats": {
"total_calls": 234,
"answered": 189,
"missed": 32,
"voicemail": 13,
"avg_duration": 142,
"inbound": 210,
"outbound": 24,
"by_source": [
{ "source": "Google Paid", "count": 87 },
{ "source": "Website", "count": 63 },
{ "source": "Direct", "count": 42 }
]
}
}Merged Call View
bash
GET /api/v1/calls/mergedReturns calls from all connected call tracking providers, deduplicated by phone number and timestamp. Useful when multiple providers track the same calls.
Response format: Same as the list endpoint, with an additional sources array on each call indicating which plugins reported it.