Перейти к основному контенту

bot.findLeads()

Получить лида по атрибутам

bot.findLeads($columns = [], $where = [], $orderBy = [], ?int $limit = null, ?int $offset = null)
Описание:

Находит лида по указанным атрибутам и другим данным.

Атрибуты:
Имя Тип Описание
columns object Возвращаемые поля лидов, по умолчанию все поля
where object

Ищет лиды по:

- атрибутам - для этого вводим в $where названия полей атрибутов как lead_attributes.<имя поля>
- статусам - используем в $where leadstatuses.<имя поля>
- каналам - используем в $where channels.<имя поля>

orderBy object Атрибут сортировки возвращаемых значений
limit int Максимальное число возвращаемых лидов
offset int Параметр показывающий с какого по счету найденного лида начать возвращать значения
Возвращает:

array - массив полей лидов.

В массиве следующие поля:

 
    id - id лида; identification - внешний id лида; manager_id - id менеджера привязанного к лиду; bot_id - id бота лида; channel_id - id канала лида; status_id - id статуса лида; extra - ??? is_mute - включен ли бот для лида; все системные поля лида (по английски).
    Пример:
    let leads = bot.findLeads(
        [],
        [
         ['lead_attributes.attribute_type', 'variable'],
         ['lead_attributes.attribute_key', 'nlpLastIntentName'],
         ['lead_attributes.attribute_value', 'позвать_человека'],
        ],
        [['updated_at']]
    );
    
    if (leads.length) {
        let statusName = leads[0].getData('id');
    }

    или получаем поля для первого найденного лида (без условий):

    let leads = bot.findLeads(['status_name', 'channel_name', 'channel_code']);
    if (leads.length) {
        let statusName = leads[0].getData('status_name');
        let channelName = leads[0].getData('channel_name');
        let channelCode = leads[0].getData('channel_code');
    }