Перейти к содержанию

Создание Заказа

Синхронный метод создания нового Заказа в Лайнере. В случае успеха возвращает идентификатор созданного Заказа.


Адрес и метод

POST /v2/order/create/


Параметры

serviceTitle string
Внутреннее название заказа.

title string
Отображаемое название заказа.

status string
Статус заказа. Доступные значения: success, secondary, info.

sipEndpointIds array
Список идентификаторов виртуальных номеров.

code string необязательный
Код заказа в Лайнере.

callSchedule array необязательный
Список, каждый элемент которого содержит время начала и конца рабочего дня.

callHolidayOverrides array необязательный
Список праздничных дней.

autoDialingEnabled bool необязательный
Разрешены ли звонки в заказе.

predictiveModeEnabled bool необязательный
Разрешены ли звонки в предиктивном режиме.

aiModeEnabled bool необязательный
Разрешен ли ИИ звонок.

standaloneAiModeEnabled bool необязательный
ИИ-обработка без онлайн агентов.

aiModePrompt string необязательный
Базовый промпт для ИИ бота.

aiModeFirstPhrase string необязательный
Первая фраза для ИИ бота.

aiDefaultLanguage string необязательный
Язык по-умолчанию для ИИ. Доступные значения: ru, gb.

amdDetectionEnabled bool необязательный
Включено ли распознавание автоответчиков.

callRecordRule string необязательный
Когда начинать запись разговора. Доступные значения: client_is_connected, agent_is_connected.

callCenterPhone string необязательный
Основной номер телефона КЦ.

additionalCallCenterPhones array необязательный
Дополнительные номера телефона КЦ.

sipEndpointUsageScheme string необязательный
Схема использования номеров. Доступные значения: random_default, random_without_repetition, even_loaded, even_loaded_daily.

agentUserIds array необязательный
Идентификаторы агентов, которые могут работать в этом заказе.

agentGroupIds array необязательный
Идентификаторы групп агентов, которые могут работать в этом заказе.

showLeadContactsToAgent bool необязательный
Могут ли агенты видеть контакты лидов.

callAttemptsGroupId int необязательный
Идентификатор группы интервалов попыток дозвона.

qualifiedLeadsPerDayLimit int необязательный
Максимальное количество целевых лидов в день.

callScenarioId int необязательный
Идентификатор сценария разговора.

leadTransformEnabled bool необязательный
Разрешено ли агенту изменять тип лида.

leadsPriority int необязательный
Приоритет Лидов в заказе.

speechRecognitionEnabled bool необязательный
Включено ли распознавание звонков.

ignoreLeadTimezone bool необязательный
Игнорировать ли часовой пояс клиента.

customValues object необязательный
Словарь значений пользовательских полей: ключ — ID пользовательского поля, значение — сохраняемое значение этого поля.


Пример запроса

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}},
    "aiModeEnabled": {{aiModeEnabled}},
    "standaloneAiModeEnabled": {{standaloneAiModeEnabled}},
    "aiModePrompt": "{{aiModePrompt}}",
    "aiModeFirstPhrase": "{{aiModeFirstPhrase}}",
    "aiDefaultLanguage": "{{aiDefaultLanguage}}",
    "amdDetectionEnabled": {{amdDetectionEnabled}},
    "callRecordRule": "{{callRecordRule}}",
    "callCenterPhone": "{{callCenterPhone}}",
    "additionalCallCenterPhones": ["{{additionalCallCenterPhone}}", ...],
    "sipEndpointUsageScheme": "{{sipEndpointUsageScheme}}",
    "agentUserIds": [{{agentUserId}}, ...],
    "agentGroupIds": [{{agentGroupId}}, ...],
    "showLeadContactsToAgent": {{showLeadContactsToAgent}},
    "callAttemptsGroupId": {{callAttemptsGroupId}},
    "qualifiedLeadsPerDayLimit": {{qualifiedLeadsPerDayLimit}},
    "callScenarioId": {{callScenarioId}},
    "leadTransformEnabled": {{leadTransformEnabled}},
    "leadsPriority": {{leadsPriority}},
    "speechRecognitionEnabled": {{speechRecognitionEnabled}},
    "ignoreLeadTimezone": {{ignoreLeadTimezone}}
    "customValues": {
      "{{customFieldId}}": "{{customFieldValue}}"
    }
  }'
<?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,
    'aiModeEnabled' => (bool)$aiModeEnabled,
    'standaloneAiModeEnabled' => (bool)$standaloneAiModeEnabled,
    'aiModePrompt' => $aiModePrompt,
    'aiModeFirstPhrase' => $aiModeFirstPhrase,
    'aiDefaultLanguage' => $aiDefaultLanguage,
    'amdDetectionEnabled' => (bool)$amdDetectionEnabled,
    'callRecordRule' => $callRecordRule,
    'callCenterPhone' => $callCenterPhone,
    'additionalCallCenterPhones' => [$additionalCallCenterPhone, ...],
    'sipEndpointUsageScheme' => $sipEndpointUsageScheme,
    'agentUserIds' => [$agentUserId, ...],
    'agentGroupIds' => [$agentGroupId, ...],
    'showLeadContactsToAgent' => (bool)$showLeadContactsToAgent,
    'callAttemptsGroupId' => (int)$callAttemptsGroupId,
    'qualifiedLeadsPerDayLimit' => (int)$qualifiedLeadsPerDayLimit,
    'callScenarioId' => (int)$callScenarioId,
    'leadTransformEnabled' => (bool)$leadTransformEnabled,
    'leadsPriority' => (int)$leadsPriority,
    'speechRecognitionEnabled' => (bool)$speechRecognitionEnabled,
    'ignoreLeadTimezone' => (bool)$ignoreLeadTimezone,
    'customValues' => [
        $customFieldId => $customFieldValue,
    ],
];

$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),
  aiModeEnabled: Boolean(aiModeEnabled),
  standaloneAiModeEnabled: Boolean(standaloneAiModeEnabled),
  aiModePrompt: aiModePrompt,
  aiModeFirstPhrase: aiModeFirstPhrase,
  aiDefaultLanguage: aiDefaultLanguage,
  amdDetectionEnabled: Boolean(amdDetectionEnabled),
  callRecordRule: callRecordRule,
  callCenterPhone: callCenterPhone,
  additionalCallCenterPhones: [additionalCallCenterPhone, ...],
  sipEndpointUsageScheme: sipEndpointUsageScheme,
  agentUserIds: [agentUserId, ...],
  agentGroupIds: [agentGroupId, ...],
  showLeadContactsToAgent: Boolean(showLeadContactsToAgent),
  callAttemptsGroupId: Number(callAttemptsGroupId),
  qualifiedLeadsPerDayLimit: Number(qualifiedLeadsPerDayLimit),
  callScenarioId: Number(callScenarioId),
  leadTransformEnabled: Boolean(leadTransformEnabled),
  leadsPriority: Number(leadsPriority),
  speechRecognitionEnabled: Boolean(speechRecognitionEnabled),
  ignoreLeadTimezone: Boolean(ignoreLeadTimezone),
  customValues: {
    [customFieldId]: customFieldValue
  }
};

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);

Пример ответа

{
  "success": true,
  "message": "",
  "data": {
    "id": 100200300
  }
}

Структура ответа

Поле Тип Описание
id int Идентификатор созданного Заказа.

Примечание

Выше описана структура поля data. Общий формат ответа API см. в разделе Схема запросов