Поиск в CRM системе
Описание
Заголовок раздела «Описание»Процессор Поиск в CRM системе выполняет поиск информации в CRM-системе. Он позволяет находить лиды, сделки, компании, контакты и реквизиты по заданным условиям, включая поиск по связанным сущностям. Процессор поддерживает сложные запросы с несколькими условиями, разрешение переменных из цепочки данных и автоматическое расширение справочных полей (ID в текстовые значения).
Процессор получает входные пакеты от предыдущих процессоров и для каждого пакета выполняет CRM-запрос с подстановкой переменных из данных цепочки.
Сценарии использования
Заголовок раздела «Сценарии использования»- Проверка, существует ли компания в CRM перед созданием нового лида
- Поиск сделок по компании для анализа истории взаимодействий
- Получение данных о контактах, связанных с определенными компаниями
- Проверка наличия реквизитов у компании перед обновлением
- Поиск лидов по определенным условиям для отчетности
- Обогащение данных воронки информацией из CRM (статусы, ответственные, суммы)
Конфигурация
Заголовок раздела «Конфигурация»| Параметр | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|
| connectionId | string | Да | — | ID подключения к CRM (настраивается в разделе Подключения) |
| query | object | Да | — | Структура поискового запроса |
| query.entityType | "lead" / "deal" / "company" / "contact" / "requisite" | Да | — | Тип основной сущности для поиска |
| query.conditions | array | Нет | [] | Массив условий поиска по полям основной сущности |
| query.conditions[].field | string | Да | — | Код поля CRM (например, TITLE, UF_CRM_INN) |
| query.conditions[].operator | равно / не равно / пусто / не пусто | Да | — | Оператор сравнения |
| query.conditions[].value | string | Да | — | Значение для сравнения. Поддерживает переменные: {{registrySearch.inn}} |
| query.relatedEntities | array | Нет | [] | Массив связанных сущностей для фильтрации |
| query.relatedEntities[].entityType | string | Да | — | Тип связанной сущности |
| query.relatedEntities[].relationType | имеет / не имеет | Нет | имеет | Наличие или отсутствие связи |
| query.relatedEntities[].conditions | array | Нет | [] | Условия по полям связанной сущности |
| query.resultFields | object | Нет | — | Выбранные поля для включения в результат, по типам сущностей: { "company": ["TITLE", "UF_CRM_INN"], "contact": ["NAME"] } |
| resultFormat | количество строк / только первая строка / все строки / указанное количество строк | Нет | все строки | Формат результата |
| resultLimit | number | Нет | 50 | Максимальное количество возвращаемых записей (для указанное количество строк) |
| expandReferences | boolean | Нет | true | Автоматически расширять справочные поля (ID в текстовые значения). Для полей типа crm_status, user, enumeration создается дополнительное поле с суффиксом Label |
| maxPackets | number | Нет | 50 | Максимальное количество входных пакетов для обработки за один запуск |
Входные данные
Заголовок раздела «Входные данные»Процессор принимает DataPackets от родительских процессоров. Данные из цепочки (chainData) используются для подстановки переменных в условиях поиска.
Типичные источники:
- Registry Search — ИНН и данные компаний для проверки в CRM
- File Upload — списки компаний для массовой проверки в CRM
- HH Search — данные работодателей для поиска в CRM
- Contact Search — контактные данные для поиска связанных сделок
Выходные данные
Заголовок раздела «Выходные данные»Структура выходных пакетов данных зависит от формата результата и выбранных полей.
Формат все строки / указанное количество строк
Заголовок раздела «Формат все строки / указанное количество строк»Каждая найденная запись CRM создает отдельный DataPacket:
{ "company.TITLE": "ООО Рога и Копыта", "company.UF_CRM_INN": "7707083893", "company.ASSIGNED_BY_ID": "42", "company.ASSIGNED_BY_IDLabel": "Иванов Петр", "company.STAGE_ID": "WON", "company.STAGE_IDLabel": "Сделка выиграна", "contact.NAME": "Петр", "contact.LAST_NAME": "Иванов", "contact.PHONE": "+7 (495) 123-45-67"}Формат count_only
Заголовок раздела «Формат count_only»{ "count": 15}Формат first_row
Заголовок раздела «Формат first_row»Возвращает первую найденную запись с добавлением общего количества:
{ "count": 15, "company.TITLE": "ООО Рога и Копыта", "company.UF_CRM_INN": "7707083893"}Стоимость
Заголовок раздела «Стоимость»Процессор CRM Search использует API Bitrix24 через webhook и не расходует токены платформы, поэтому использование этого процессора бесплатно.
Примеры
Заголовок раздела «Примеры»Проверка наличия компании в CRM по ИНН
Заголовок раздела «Проверка наличия компании в CRM по ИНН»{ "connectionId": "conn_123", "query": { "entityType": "company", "conditions": [ { "field": "UF_CRM_INN", "operator": "equals", "value": "{{registrySearch.inn}}" } ] }, "resultFormat": "count_only"}Поиск сделок компании с контактами
Заголовок раздела «Поиск сделок компании с контактами»{ "connectionId": "conn_123", "query": { "entityType": "deal", "conditions": [ { "field": "STAGE_ID", "operator": "not_equals", "value": "LOSE" } ], "relatedEntities": [ { "id": "rel_1", "entityType": "company", "relationType": "has", "conditions": [ { "field": "UF_CRM_INN", "operator": "equals", "value": "{{fileUpload.inn}}" } ] } ], "resultFields": { "deal": ["TITLE", "OPPORTUNITY", "STAGE_ID", "ASSIGNED_BY_ID"], "company": ["TITLE", "UF_CRM_INN"] } }, "resultFormat": "all_rows", "expandReferences": true, "maxPackets": 50}Поиск компаний без реквизитов
Заголовок раздела «Поиск компаний без реквизитов»{ "connectionId": "conn_123", "query": { "entityType": "company", "conditions": [], "relatedEntities": [ { "id": "rel_1", "entityType": "requisite", "relationType": "not_has", "conditions": [] } ], "resultFields": { "company": ["TITLE", "UF_CRM_INN", "PHONE"] } }, "resultFormat": "limit_rows", "resultLimit": 100}