Создание Заказа
Синхронный метод создания нового Заказа в Лайнере. В случае успеха возвращает идентификатор созданного Заказа.
Адрес и метод
POST /v2/order/create/
Параметры
serviceTitlestring
Внутреннее название заказа.
titlestring
Отображаемое название заказа.
statusstring
Статус заказа. Доступные значения:success,secondary,info.
sipEndpointIdsarray
Список идентификаторов виртуальных номеров (int). Не может быть пустым.
codestringнеобязательный
Код заказа в Лайнере. Допустимые символы:a-z,0-9,-,_. Должен быть уникальным. Если не передан — генерируется изtitle.
callSchedulearrayнеобязательный
Расписание звонков: до 7 элементов, позиция элемента — день недели (Пн → Вс). Элемент —["HH:MM", "HH:MM"](начало и конец рабочего дня) или[]— выходной.
callHolidayOverridesarrayнеобязательный
Список праздничных дней (string). Принимается любой распознаваемый формат даты, хранится и возвращается в форматедд.мм.гггг.
autoDialingEnabledboolнеобязательный
Разрешены ли звонки в заказе.
predictiveModeEnabledboolнеобязательный
Разрешены ли звонки в предиктивном режиме.
aiDefaultLanguagestringнеобязательный
Язык по-умолчанию для ИИ. Код одного из доступных языков, напримерru,gb.
amdDetectionEnabledboolнеобязательный
Включено ли распознавание автоответчиков.
callRecordRulestringнеобязательный
Когда начинать запись разговора. Доступные значения:client_is_connected,agent_is_connected.
sipEndpointUsageSchemestringнеобязательный
Схема использования номеров. Доступные значения:random_default,random_without_repetition,even_loaded,even_loaded_daily.
agentUserIdsarrayнеобязательный
Идентификаторы агентов (int), которые могут работать в этом заказе.
agentGroupIdsarrayнеобязательный
Идентификаторы групп агентов (int), которые могут работать в этом заказе.
showLeadContactsToAgentboolнеобязательный
Могут ли агенты видеть контакты лидов.
callAttemptGroupIdintнеобязательный
Идентификатор группы интервалов попыток дозвона. Значение>= 1.
qualifiedLeadsPerDayLimitintнеобязательный
Максимальное количество целевых лидов в день. Значение>= 1.
callScenarioIdintнеобязательный
Идентификатор сценария разговора. Значение>= 1.
leadTransformEnabledboolнеобязательный
Разрешено ли агенту изменять тип лида.
speechRecognitionEnabledboolнеобязательный
Включено ли распознавание звонков.
ignoreLeadTimezoneboolнеобязательный
Игнорировать ли часовой пояс клиента.
customValuesarrayнеобязательный
Словарь значений пользовательских полей: ключ — ID пользовательского поля, значение — сохраняемое значение этого поля. Поле должно существовать и относиться к заказам, значение должно соответствовать типу поля (для мультиселекта — строка со значениями через запятую).
transferNumbersarrayнеобязательный
Номера для перевода звонка. Каждый элемент — объект:number(string, обязателен, без пробелов) иnames(object, необязателен: ключ — код языка, значение — название).
autoProcessCallboolнеобязательный
Автоматическая обработка звонка.
agentLeadCreationIsAllowedboolнеобязательный
Разрешено ли агенту создавать лидов.
agentLeadEditModestringнеобязательный
Режим редактирования лида агентом, напримерduring-call.
Примечание
Неизвестные поля в теле запроса игнорируются. Поля createdAt, updatedAt, createdBy, updatedBy задать нельзя.
Пример запроса
curl -X POST "https://YOUR_LINER_API_HOST/v2/order/create/" \
-H "Content-Type: application/json" \
-H "X-Api-Key: YOUR_API_TOKEN" \
-d '{
"code": "{{code}}",
"serviceTitle": "{{serviceTitle}}",
"title": "{{title}}",
"status": "{{status}}",
"sipEndpointIds": [{{sipEndpointId}}, ...],
"callSchedule": [["{{start}}", "{{end}}"], ...],
"callHolidayOverrides": ["{{holiday}}", ...],
"autoDialingEnabled": {{autoDialingEnabled}},
"predictiveModeEnabled": {{predictiveModeEnabled}},
"aiDefaultLanguage": "{{aiDefaultLanguage}}",
"amdDetectionEnabled": {{amdDetectionEnabled}},
"callRecordRule": "{{callRecordRule}}",
"sipEndpointUsageScheme": "{{sipEndpointUsageScheme}}",
"agentUserIds": [{{agentUserId}}, ...],
"agentGroupIds": [{{agentGroupId}}, ...],
"showLeadContactsToAgent": {{showLeadContactsToAgent}},
"callAttemptGroupId": {{callAttemptGroupId}},
"qualifiedLeadsPerDayLimit": {{qualifiedLeadsPerDayLimit}},
"callScenarioId": {{callScenarioId}},
"leadTransformEnabled": {{leadTransformEnabled}},
"speechRecognitionEnabled": {{speechRecognitionEnabled}},
"ignoreLeadTimezone": {{ignoreLeadTimezone}},
"customValues": {
"{{customFieldId}}": "{{customFieldValue}}"
},
"transferNumbers": [
{
"number": "{{transferNumber}}",
"names": {
"{{langCode}}": "{{transferNumberName}}"
}
}
],
"autoProcessCall": {{autoProcessCall}},
"agentLeadCreationIsAllowed": {{agentLeadCreationIsAllowed}},
"agentLeadEditMode": "{{agentLeadEditMode}}"
}'
<?php
$host = 'https://YOUR_LINER_API_HOST';
$token = 'YOUR_API_TOKEN';
$payload = [
'code' => $code,
'serviceTitle' => $serviceTitle,
'title' => $title,
'status' => $status,
'sipEndpointIds' => [$sipEndpointId, ...],
'callSchedule' => [[$start, $end], ...],
'callHolidayOverrides' => [$holiday, ...],
'autoDialingEnabled' => (bool)$autoDialingEnabled,
'predictiveModeEnabled' => (bool)$predictiveModeEnabled,
'aiDefaultLanguage' => $aiDefaultLanguage,
'amdDetectionEnabled' => (bool)$amdDetectionEnabled,
'callRecordRule' => $callRecordRule,
'sipEndpointUsageScheme' => $sipEndpointUsageScheme,
'agentUserIds' => [$agentUserId, ...],
'agentGroupIds' => [$agentGroupId, ...],
'showLeadContactsToAgent' => (bool)$showLeadContactsToAgent,
'callAttemptGroupId' => (int)$callAttemptGroupId,
'qualifiedLeadsPerDayLimit' => (int)$qualifiedLeadsPerDayLimit,
'callScenarioId' => (int)$callScenarioId,
'leadTransformEnabled' => (bool)$leadTransformEnabled,
'speechRecognitionEnabled' => (bool)$speechRecognitionEnabled,
'ignoreLeadTimezone' => (bool)$ignoreLeadTimezone,
'customValues' => [
$customFieldId => $customFieldValue,
],
'transferNumbers' => [
[
'number' => $transferNumber,
'names' => [$langCode => $transferNumberName],
],
],
'autoProcessCall' => (bool)$autoProcessCall,
'agentLeadCreationIsAllowed' => (bool)$agentLeadCreationIsAllowed,
'agentLeadEditMode' => $agentLeadEditMode,
];
$ch = curl_init($host . '/v2/order/create/');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-Api-Key: ' . $token,
],
CURLOPT_POSTFIELDS => json_encode($payload, JSON_UNESCAPED_UNICODE),
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 payload = {
code: code,
serviceTitle: serviceTitle,
title: title,
status: status,
sipEndpointIds: [sipEndpointId, ...],
callSchedule: [[start, end], ...],
callHolidayOverrides: [holiday, ...],
autoDialingEnabled: Boolean(autoDialingEnabled),
predictiveModeEnabled: Boolean(predictiveModeEnabled),
aiDefaultLanguage: aiDefaultLanguage,
amdDetectionEnabled: Boolean(amdDetectionEnabled),
callRecordRule: callRecordRule,
sipEndpointUsageScheme: sipEndpointUsageScheme,
agentUserIds: [agentUserId, ...],
agentGroupIds: [agentGroupId, ...],
showLeadContactsToAgent: Boolean(showLeadContactsToAgent),
callAttemptGroupId: Number(callAttemptGroupId),
qualifiedLeadsPerDayLimit: Number(qualifiedLeadsPerDayLimit),
callScenarioId: Number(callScenarioId),
leadTransformEnabled: Boolean(leadTransformEnabled),
speechRecognitionEnabled: Boolean(speechRecognitionEnabled),
ignoreLeadTimezone: Boolean(ignoreLeadTimezone),
customValues: {
[customFieldId]: customFieldValue
},
transferNumbers: [
{ number: transferNumber, names: { [langCode]: transferNumberName } }
],
autoProcessCall: Boolean(autoProcessCall),
agentLeadCreationIsAllowed: Boolean(agentLeadCreationIsAllowed),
agentLeadEditMode: agentLeadEditMode
};
const res = await fetch(`${host}/v2/order/create/`, {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-Api-Key": token
},
body: JSON.stringify(payload)
});
const data = await res.json();
console.log("HTTP", res.status, data);
Пример ответа
Структура ответа
| Поле | Тип | Описание |
|---|---|---|
id |
int |
Идентификатор созданного Заказа. |
Примечание
Выше описана структура поля data. Общий формат ответа API см. в разделе Схема запросов