Получение данных по HTTP-запросу Создание или обновление контакта в OkoCRM

Интеграция

Получение данных по HTTP-запросу → Создание или обновление контакта в OkoCRM

В этой инструкции мы по шагам с примерами разберём, как настроить оба сервиса и связать их между собой:

  1. Настройка приёма HTTP-запросов (вебхука): метод, ответ отправителю, URL приёма, параметры из запроса и разбор JSON из тела.
  2. Действие создаёт контакт в OkoCRM или обновляет найденный дубликат по ФИО, телефону, почте или ID. Телефоны и почту можно передать списком.

Отдельные инструкции: источник «Получение данных по HTTP-запросу» · действие «Создание или обновление контакта в OkoCRM»

Не хотите настраивать сами? Сделаем бесплатно

Напишите, какие сервисы нужно связать. Специалист настроит интеграцию, проверит, что данные доходят, и оставит вам готовый процесс.

Получить бесплатную настройку Или следуйте инструкции ниже

Создание подключений

Если вы ещё не создавали нужные подключения - не пропускайте этот блок: без них настроить интеграцию не получится. Если подключения уже есть в WebJack, можно сразу перейти к настройке источника и действия ниже.

Подключение OkoCRM

Как подключить OkoCRM

«Подключение» хранит токен API аккаунта OkoCRM. С ним Вебджек создаёт и обновляет контакты и сделки.

  1. Войдите в OkoCRM.
  2. Нажмите иконку аватара, затем имя пользователя.
  3. Прокрутите профиль вниз и скопируйте значение поля «Токен для API».
  1. В Вебджеке откройте подключение «OkoCRM».
  2. Вставьте токен в поле «Токен API».
  3. Нажмите «Подключить».

Вебджек проверяет токен запросом списка пользователей. Если токен принадлежит одному пользователю, подключение получит его имя и почту. Иначе название будет «OkoCRM».

Создайте обработку

В левом меню откройте «Обработки» и нажмите «+».

integrations: В левом меню откройте «Обработки» и нажмите «+»

Источник «HTTP (Webhook)»

Приём входящих HTTP-запросов (вебхуков) на уникальный URL. В источнике выберите метод, настройте ответ и при необходимости укажите параметры и заголовки для разбора входящего запроса.

Выбор типа источника

  1. В списке типов источника выберите «HTTP (Webhook)» и нажмите «Выбрать».
    Получение данных по HTTP-запросу: В списке типов источника выберите «HTTP (Webhook)» и нажмите «Выбрать»

Метод и ответ

  1. В поле «HTTP-метод» выберите метод, который нужно принимать, или оставьте «Любой».
  2. При необходимости задайте ответ отправителю: «Код статуса ответа», «Текст статуса ответа», «Заголовки ответа» и «Тело ответа».
  3. Нажмите «Сохранить».
    Получение данных по HTTP-запросу: Нажмите «Сохранить»

URL приёма

  1. Откройте вкладку «Источник данных».
  2. Скопируйте «URL» - на этот адрес нужно отправлять HTTP-запросы из внешней системы.
    Получение данных по HTTP-запросу: Скопируйте «URL» - на этот адрес нужно отправлять HTTP-запросы из внешней системы

Параметры и заголовки

  1. В блоке «Параметры» нажмите «Добавить параметр», укажите «Название» и «Приоритет» («Строка запроса» или «Тело запроса»).
  2. В блоке «Заголовки» при необходимости нажмите «Добавить заголовок» и укажите «Название».
  3. Нажмите «Сохранить».

Получить из последнего запроса

  1. Отправьте тестовый запрос на скопированный «URL».
  2. Откройте вкладку «Источник данных» и нажмите значок редактирования у «Настройки».
    Получение данных по HTTP-запросу: Откройте вкладку «Источник данных» и нажмите значок редактирования у «Настройки»
  3. Нажмите «Получить параметры из последнего запроса».
    Получение данных по HTTP-запросу: Нажмите «Получить параметры из последнего запроса»
  4. Нажмите «Сохранить».

Поля, которые приходят сами

Эти поля появляются в заявке без настройки в блоках «Параметры» и «Заголовки».

  • «Дата и время создания» - момент, когда запрос попал в обработку.
  • «Версия HTTP»
  • «HTTP-метод»
  • «Строка запроса»
  • «Заголовки» - все заголовки входящего запроса списком.
  • «Тело» - сырое тело запроса.
  • «Тело (строка)» - то же тело текстом. Если тело бинарное и не декодируется, поле будет пустым.

Отдельными полями станут только те параметры и заголовки, которые вы добавили в блоки или получили кнопкой «Получить параметры из последнего запроса».

Парсер JSON

Если внешняя система шлёт тело в JSON, разберите его действием «Парсер JSON».

  1. Если образца JSON нет, отправьте тестовую заявку. Откройте вкладку «Экземпляры данных», откройте нужную строку и скопируйте значение, например из «Тело (строка)».
    Получение данных по HTTP-запросу: Во вкладке «Экземпляры данных» откройте нужную строку
    Получение данных по HTTP-запросу: В поле «Тело (строка)» скопируйте значение JSON
  2. Добавьте действие «Парсер JSON» и нажмите «Выбрать».
  3. В поле «JSON» нажмите значок выбора переменной и выберите поле с JSON, например «Источник данных Тело (строка)».
    Получение данных по HTTP-запросу: В поле «JSON» нажмите значок выбора переменной
    Получение данных по HTTP-запросу: Выберите «Источник данных Тело (строка)» и нажмите «Выбрать»
  4. Вставьте скопированный образец в поле «Пример».
  5. Нажмите «Сохранить» под полем «Пример».
    Получение данных по HTTP-запросу: Вставьте образец в поле «Пример» и нажмите «Сохранить»
  6. Кликами отметьте нужные элементы, чтобы собрать список «Поля».
  7. Проверьте «Название» полей и дополнительные настройки: «Тип», «Путь».
  8. Нажмите «Сохранить».
    Получение данных по HTTP-запросу: Проверьте список «Поля» и нажмите «Сохранить»

Полная настройка действия: Парсер JSON.

Если запрос не приходит

  • Проверьте, что в списке выбран «HTTP».
  • Скопированный «URL» вставьте целиком, параметры из него не удаляйте.
  • Если в «HTTP-метод» выбран метод, внешняя система должна слать именно его.
  • Для полей формы нажмите «Получить параметры из последнего запроса» после теста.
  • Для JSON добавьте действие «Парсер JSON»: скопируйте образец из «Экземпляров данных», выберите «Тело (строка)», вставьте пример и отметьте поля.

Действие «OkoCRM: Создать или обновить контакт»

Перейдите в обработке во вкладку "Действия" и нажмите на кнопку "Добавить действие"
actions: Перейдите в обработке во вкладку Действия и нажмите на кнопку Добавить действие

Что делает действие

«Действие» создаёт контакт в OkoCRM или обновляет уже существующий.

Обязательное поле при создании: «ФИО».

Как настроить

  1. Выберите подключение «OkoCRM». Поля аккаунта подгрузятся ниже.
  2. В поле «Обработка дубликатов» выберите режим:
    • «Не проверять на дубликаты». Всегда создавать новый контакт.
    • «Не создавать при дубликате». Если контакт найден, новый не создавать.
    • «Обновить дубликат, иначе создать». Обновить найденный контакт или создать новый.
    • «Только обновить дубликат». Менять только найденный контакт.
  3. Заполните поля. У нужных колонок включите поиск или запись:
    • «Искать дубликат по значению поля»
    • «Обновить поле в дубликате»
    • «Не обновлять поле в дубликате»
    • «Добавить к значению в дубликате»
  4. Нажмите «Сохранить».

Поиск идёт по полям, у которых включён поиск: «ФИО», «Телефоны», «E-mail». Если отмечено несколько, в OkoCRM уходит самая длинная строка, а остальные проверяются по ответу. Телефон сравнивается по цифрам, почта без учёта регистра.

Если найденных контактов больше одного, действие останавливается с ошибкой «Количество дубликатов больше одного». Включите «Выбирать дубль по макс. ID», чтобы взять контакт с наибольшим ID.

Поле «ID» ищет контакт напрямую. Если такого ID нет, действие останавливается с сообщением «Не найден объект» и этим ID. Пока «ID» заполнен, поиск по другим полям не нужен.

«Телефоны» и «E-mail» принимают список. Несколько значений можно передать списком или через переменную-список. При дополнении дубликата новые номера и адреса добавляются к уже записанным, повторы пропускаются.

Дополнительные поля карточки контакта из OkoCRM появляются под стандартными после выбора подключения. Системные поля вроде даты создания в форму не выводятся.

После выполнения в сценарии доступны «ID контакта», «Дубликат» и «ID ответственного».

Запустите обработку

  1. В обработку начнут поступать данные из настроенного источника.
  2. По очереди выполнятся все добавленные действия.
  3. Входящие данные, статус и история отобразятся в «Истории операций».

integrations: Входящие данные, статус и история отобразятся в «Истории операций»

Застряли на подключении или полях?

Соберём обработку «Получение данных по HTTP-запросу → Создание или обновление контакта в OkoCRM», проверим тест и запустим.