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

Создание Лида (асинхронное)

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

Рекомендация

Данный метод не гарантирует успешное создание лида — он возвращает лишь статус принятия задания на создание.
Если вам нужна гарантия создания лида и получение id, используйте синхронный метод: /lead/create/


Адрес и метод

POST /v1/lead/create-async/


Параметры

lead_type string
Тип лида. Возможные значения: straight — обычный лид, selection — подборный лид.

client_phone string
Телефон клиента в формате E.164 (допускается передача номеров с + и без него), например 79001234567.

order_id int
Идентификатор заказа в Лайнере. Значение > 0.

order_code string
Код заказа в Лайнере (строка).

telegramId int
Идентификатор пользователя в Telegram. Значение > 0.

vkId int
Идентификатор пользователя в VK. Значение > 0.

instagramLogin string
Логин пользователя в Instagram (строка).

client_name string необязательный
Имя клиента (строка).

quiz_log string необязательный
Комментарий/лог анкеты.

campaign_id string необязательный
Идентификатор рекламной кампании (строка).

external_id string необязательный
Идентификатор лида во внешней системе (строка).

priority int необязательный
Приоритет лида в очереди дозвона (целое число).

utc_offset int необязательный
Часовой пояс клиента — смещение от UTC, например 3, -5.


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

curl -X POST "https://YOUR_LINER_API_HOST/v1/lead/create-async/" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: YOUR_API_TOKEN" \
  -d '{
    "lead_type": "straight",
    "client_name": "{{client_name}}",
    "client_phone": "{{client_phone}}",
    "order_id": {{order_id}},
    "order_code": "{{order_code}}",
    "quiz_log": "",
    "campaign_id": "{{campaign_id}}",
    "external_id": "{{external_id}}",
    "priority": {{call_priority}},
    "utc_offset": {{utc_offset}},
    "telegramId": {{telegram_id}},
    "vkId": {{vk_id}},
    "instagramLogin": "{{instagram_login}}"
  }'
<?php

$host = 'https://YOUR_LINER_API_HOST';
$token = 'YOUR_API_TOKEN';

$payload = [
    'lead_type' => 'straight',
    'client_name' => $client_name,
    'client_phone' => $client_phone,
    'order_id' => (int)$order_id,
    'order_code' => $order_code,
    'quiz_log' => '',
    'campaign_id' => $campaign_id,
    'external_id' => $external_id,
    'priority' => (int)$call_priority,
    'utc_offset' => (int)$utc_offset,
    'telegramId' => (int)$telegram_id,
    'vkId' => (int)$vk_id,
    'instagramLogin' => $instagram_login,
];

$ch = curl_init($host . '/v1/lead/create-async/');
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 = {
  lead_type: "straight",
  client_name: client_name,
  client_phone: client_phone,
  order_id: Number(order_id),
  order_code: order_code,
  quiz_log: JSON.stringify({ "quiz_log_any_data:": "post anything here" }),
  campaign_id: campaign_id,
  external_id: external_id,
  priority: Number(call_priority),
  utc_offset: Number(utc_offset),
  telegramId: Number(telegram_id),
  vkId: Number(vk_id),
  instagramLogin: instagram_login
};

const res = await fetch(`${host}/v1/lead/create-async/`, {
  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": []
}