Передача записей из Rubitime в сделки Битрикс 24

Содержание:


В данной инструкции рассмотрим настройку передачи записей из Rubitime (API) в сделки Битрикс 24 (API).


Предположим, что каждая запись имеет свою карточку клиента, а так же дополнительные поля, которые необходимо сопоставить с полями в Битриксе. Работа с API в обоих системах возможна на платных тарифах - начиная с тарифа "Базовый" у Битрикса и "Standard" в Rubitime.


1. Подготовка к обмену данными


Для работы с данными потербуется создать входящий вебхук - он будет принимать записи в момент их создания из Rubitime и передавать в Bitrix.


1.1. Создание входящего вебхука в APInita


На странице "Сценарии" нажмите кнопку "+" (1):


Передача записей из Rubitime в сделки Битрикс 24


В левом верхнем угулу (2) укажите название сценария, например: "Создание сделки в Битрикс 24 из записи Rubitime". Затем нажмите кнопку "Добавить" (3), в открывшемся окне выберите "Webhook" (4):


Передача записей из Rubitime в сделки Битрикс 24


Скопируйте отобразившийся URL (5), нажав на него левой кнопкой:


Передача записей из Rubitime в сделки Битрикс 24


1.2. Исходящий вебхук из Rubitime


В личном кабинете Rubitime перейдите в раздел "Настройки -> Получение и сохранение данных при помощи API" и вставьте скопированный URL, полученный на шаге 1.1 (5) в поле "Вебхук URL" (1), в блоке событий выберите только "Создание записи (event-create-record)" и нажмите кнопку "Сохранить настройки" (2):


Передача записей из Rubitime в сделки Битрикс 24


1.3. Создание входящего вебхука в Битрикс 24


В левом меню системы перейдите в раздел "Приложения -> Разработчикам" (1) и нажмите кнопку "Другое" (2):


Передача записей из Rubitime в сделки Битрикс 24


Если Вы только зарегистрировались в системе, у Вас появится экран включения демо-тарифа и сообщение о том, что приложение доступно только на платных тарифах - нажмите "Включить Демо-тариф".


Нажмите кнопку "Входящий вебхук", скопируйте значение поля "Вебхук для вызова rest api" (3) и вставьте, например, в блокнот, ссылка понадобится позже. В разделе ниже "Настройка прав" (4) выберите "CRM", после нажмите кнопку "Сохранить":


Передача записей из Rubitime в сделки Битрикс 24


2. Получение ID пользовательских дополнительных полей


Если Вы не используете дополнительные поля, данный пункт можно пропустить.


В Rubitime ID дополнительных полей идут от custom_field1 до custom_field10, по порядку (custom_field1, custom_field2, custom_field3 и так далее). В Битрикс24 перед передачей значений в дополнительные поля необходимо узнать их ID следующим образом - в левом меню системы перейдите в раздел "Приложения -> Разработчикам" (1) и откройте вкладку "Интеграции" (2):


Передача записей из Rubitime в сделки Битрикс 24


Найдите во вкладке созданный Вами вебхук из шага 1.3, откройте его. Далее в блоке "Генератор запросов" выберите "crm.deal.fields" (3) и нажмите кнопку "Выполнить" (4):


Передача записей из Rubitime в сделки Битрикс 24


Откроется новое окно, в котором отобразятся данные всех доступных полей Ваших сделок. Промотайте список в самый низ и найдите в нем поля вида "UF_CRM_xxx" (5), где xxx - уникальный номер:


Передача записей из Rubitime в сделки Битрикс 24


Скопируйте полученные ID нужных Вам полей, например: UF_CRM_1703824067932 и UF_CRM_1703824019101.


Таким образом, мы сопоставили поля Rubitime и Bitrix, по типу:


  • custom_field1 - UF_CRM_1703824067932
  • custom_field2 - UF_CRM_170382401910

3. Создание сценария


Возвращаемся в APInita к сценарию, созданному на шаге 1.1. Первым шагом у нас идет Webhook, который принимает входящие записи из Rubitime. Вторым шагом нужно создать HTTP-запрос, который проверит наличие клиента в базе Битрикса и если его нет, создать его, после чего уже создать саму сделку, привязав к ней клиента и дополнительные поля.


Шаг 1. Входящие данные


Первым делом необходимо получить данные самой записи, созданной в Rubitime для возможности работы с ними. Для этого включите сценарий (1) и создайте новую запись в журнале записей в Rubitime. Если все настройки, произведенные выше, выполнены корректно - Вы увидите зеленый индикатор справа от модуля Webhook и дату поступления данных (2):


Передача записей из Rubitime в сделки Битрикс 24


Отключите сценарий (1) для возможности дальнейшего редактирования.


Шаг 2. Если создана новая запись


Rubitime отправляет вебхуки при 3 событиях: создание, обновление и удаление данных. Хоть в пункте 1.2 мы и выбрали только событие создания записи - дополнительно, на всякий случай, добавим фильтрацию при приеме данных, чтобы получать только новые записи. Нажмите "+" под 1 шагом (1) и выберите модуль IF, пропишите условие (2) и нажмите кнопку "Сохранить":


{{ s1.body.event == 'event-create-record' }}

Передача записей из Rubitime в сделки Битрикс 24


Шаг 3. Проверка наличия контакта


Нажмите "+" под 2 шагом и выберите модуль HTTP. В открывшемся окне введите следующие данные:


Передача записей из Rubitime в сделки Битрикс 24


URL запроса:


xxx/crm.contact.list.json

- где xxx - это URL, полученный из шага 1.3. (3). Например:


https://b24-4btk39.bitrix24.ru/rest/1/qkBrls3Hmw8tc511/

При этом полный адрес URL запроса будет таким:


https://b24-4btk39.bitrix24.ru/rest/1/qkBrls3Hmw8tc511/crm.contact.list.json

Поля запроса (ключ - значение # комментарий):


filter.PHONE - {{ s1.body.data.phone }} # номер телефона

Данный запрос либо вернет ID контакта, если такой есть в системе и соответственно не вернет, если нет.


Шаг 4. Если контакт существует


Добавляем фильтр на наличие существующего контакта - нажмите "+" под 3 шагом и выберите модуль IF, пропишите условие и нажмите кнопку "Сохранить":


{{ s3.body.total > 0 }}

Шаг 5. Если контакт не существует


Добавляем фильтр на отсутствие существующего контакта - нажмите "+" под 4 шагом и выберите модуль IF, пропишите условие и нажмите кнопку "Сохранить":


{{ s3.body.total == 0 }}

После добавления 5 шага - перетащите его на один уровень с шагом 4, наведя курсор в правый нижний угол модуля и зажав левую кнопку мыши:


Передача записей из Rubitime в сделки Битрикс 24


Шаг 6. Создаем сделку с существующим контактом


Нажмите "+" под 4 шагом и выберите HTTP-модуль, в открывшемся окне введите следующие данные:


Передача записей из Rubitime в сделки Битрикс 24


URL запроса:


xxx/crm.deal.add.json

- где xxx - это URL, полученный из шага 1.3. (3).


Поля запроса (ключ - значение # комментарий):


  • fields.CONTACT_ID - {{ s3.body.result.0.ID }} # указываем ID контакта, полученного на шаге 3
  • fields.TITLE - Запись на {{ s1.body.data.record|date('d.m.y H:i') }} # указываем название сделки в виде "Запись на 22.03.2024 12:15"
  • fields.ORIGIN_ID - {{ s1.body.data.id }} # указываем ID записи, может потребоваться в дальнейшем для изменения или например удаления записи по ее номеру
  • fields.UF_CRM_1703824067932 - {{ s1.body.data.custom_field1 }} # значение дополнительного поля 1
  • fields.UF_CRM_170382401910 - {{ s1.body.data.custom_field2 }} # значение дополнительного поля 2

Шаг 7. Создаем контакт


Нажмите "+" под 5 шагом и выберите HTTP-модуль, в открывшемся окне введите следующие данные:


Передача записей из Rubitime в сделки Битрикс 24


URL запроса:


xxx/crm.contact.add.json

- где xxx - это URL, полученный из шага 1.3. (3).


Поля запроса (ключ - значение # комментарий):


  • fields.NAME - {{ s1.body.data.name }} # ФИО клиента
  • fields.PHONE.0.VALUE - {{ s1.body.data.phone }} # номер телефона
  • fields.PHONE.0.VALUE_TYPE - WORK # тип телефона указываем как "рабочий"

Шаг 8. Создаем сделку с новым контактом


Нажмите "+" под 7 шагом и выберите HTTP-модуль, в открывшемся окне введите следующие данные:


Передача записей из Rubitime в сделки Битрикс 24


URL запроса:


xxx/crm.deal.add.json

- где xxx - это URL, полученный из шага 1.3. (3).


Поля запроса (ключ - значение # комментарий):


  • fields.CONTACT_ID - {{ s7.body.result }} # указываем ID контакта, полученного на шаге 7
  • fields.TITLE - Новая запись и клиент! # указываем название сделки
  • fields.ORIGIN_ID - {{ s1.body.data.id }} # указываем ID записи, может потребоваться в дальнейшем для изменения или например удаления записи по ее номе
  • fields.UF_CRM_1703824067932 - {{ s1.body.data.custom_field1 }} # значение дополнительного поля 1
  • fields.UF_CRM_170382401910 - {{ s1.body.data.custom_field2 }} # значение дополнительного поля 2

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

Попробуйте бесплатно

При регистрации Вы бесплатно получаете 14 дней и 1.000 запусков сценариев:

Нажимая кнопку «Регистрация» Вы принимаете условия лицензионного соглашения и даете согласие на обработку своих персональных данных. Если у Вас уже есть аккаунт, войдите в систему. Сайт защищен технологией reCAPTCHA и к нему применяются Google политика конфиденциальности и условия использования.
  • Техподдержка

    Ответим на Ваши вопросы, подскажем по настройкам модулей.

  • Доступные тарифы

    От 1000р. в месяц за полный функционал без ограничений.

  • Безопасность

    Сервера расположены на территории РФ, а все подключения дополнительно шифруются.