Список звонков
Метод для получения списка звонков по конкретному Лиду.
Адрес и метод
GET /v2/call/
Параметры
createdAt[0]string
Начало периода создания лида для выборки в формате ISO_8601
createdAt[1]string
Конец периода создания лида для выборки в формате ISO_8601
leadIdsarray<int>обязательный, если нетorderIds
Идентификаторы Лидов в Лайнере, список звонков которых необходимо получить. Значение> 0.
orderIdsarray<int>обязательный, если нетleadIds
Идентификаторы Заказов в Лайнере, список звонков которых необходимо получить. Значение> 0.
userIdsarray<int>необязательный
Идентификаторы пользователей в Лайнере, которые обработали звонки. Значение> 0.
statusIdsarray<int>необязательный
Идентификаторы статусов звонка в Лайнере. Значение> 0.
offsetintнеобязательный
Параметр используется для управления постраничной навигацией. Указывает на смещение (offset), с которого начинается выборка. По умолчанию — 0.
limitintнеобязательный
Параметр используется для управления постраничной навигацией. Количество элементов, которое возвращается за один запрос. Максимально доступное значение — 100. По умолчанию — 50.
Пример запроса
<?php
$host = 'https://YOUR_LINER_API_HOST';
$token = 'YOUR_API_TOKEN';
$query = http_build_query([
'createdAt' => [
'2023-01-01T00:00:00Z',
'2023-01-31T23:59:59Z',
],
'leadIds' => [(int) $leadId],
'orderIds' => [(int) $orderId],
'userIds' => [(int) $userId],
'statusIds' => [(int) $statusId],
'offset' => 0,
'limit' => 50,
]);
$ch = curl_init($host . '/v2/call/?' . $query);
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-Api-Key: ' . $token,
],
CURLOPT_TIMEOUT => 15,
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($response === false) {
throw new RuntimeException('cURL error: ' . curl_error($ch));
}
curl_close($ch);
echo "HTTP {$httpCode}\n";
echo $response;
const host = "https://YOUR_LINER_API_HOST";
const token = "YOUR_API_TOKEN";
const params = new URLSearchParams();
params.set("createdAt[0]", "2023-01-01T00:00:00Z");
params.set("createdAt[1]", "2023-01-31T23:59:59Z");
params.append("leadIds[]", String(leadId));
params.append("orderIds[]", String(orderId));
params.append("userIds[]", String(userId));
params.append("statusIds[]", String(statusId));
params.set("offset", "0");
params.set("limit", "50");
const res = await fetch(`${host}/v2/call/?${params.toString()}`, {
method: "GET",
headers: {
"Content-Type": "application/json",
"X-Api-Key": token
}
});
const data = await res.json();
console.log("HTTP", res.status, data);
Пример ответа
{
"success": true,
"message": "",
"data": {
"list": [
{
"id": "{{id}}",
"sipEndpointId": "{{sipEndpointId}}",
"finishInitiator": "{{finishInitiator}}",
"direction": "{{direction}}",
"leadId": "{{leadId}}",
"statusCode": "{{statusCode}}",
"userId": "{{userId}}",
"totalDurationSeconds": "{{totalDurationSeconds}}",
"waitTimeDurationSeconds": "{{waitTimeDurationSeconds}}",
"talkTimeDurationSeconds": "{{talkTimeDurationSeconds}}",
"isPredictive": "{{isPredictive}}",
"clientPhone": "{{clientPhone}}",
"createdAt": "{{createdAt}}"
}
],
"next": 50,
"total": 12345
}
}
Поля ответа
Поля в data
| Поле | Тип | Описание |
|---|---|---|
list |
array |
Список звонков. |
next |
int |
Смещение для следующего запроса. |
total |
int |
Общее количество звонков. |
Поля в list
| Поле | Тип | Описание |
|---|---|---|
id |
int |
Идентификатор звонка в Лайнере. |
sipEndpointId |
int |
Идентификатор виртуального номера (SIP endpoint). |
finishInitiator |
string |
Инициатор завершения звонка. Доступные значения: client, operator, system. |
direction |
string |
Направление звонка. Доступные значения: incoming, outgoing. |
leadId |
int |
Идентификатор Лида, к которому относится звонок. |
userId |
int |
Идентификатор пользователя, который обработал звонок. |
orderId |
int |
Идентификатор заказа, к которому относится звонок. |
statusId |
int |
Идентификатор статуса звонка. |
totalDurationSeconds |
int |
Общая длительность звонка. |
waitTimeDurationSeconds |
int |
Общая длительность ожидания ответа. |
talkTimeDurationSeconds |
int |
Длительность разговора. |
isPredictive |
bool |
Предиктивного ли звонок. |
clientPhone |
string |
Телефон клиента (как правило, в формате E.164, например +79001234567). |
hasRecords |
bool |
Есть ли сохраненная записи разговора у звонка. |
createdAt |
string |
Дата и время создания записи о звонке (ISO 8601). |
Примечание
Выше описана структура поля data. Общий формат ответа API см. в разделе Схема запросов