basket
Личный кабинет
  • ЛК Пинкит
  • Акции
  • Интеграции
    Поддержка сайта Интеграция с 1С Корпортал Интернет магазин
  • Реквизиты
  • Контакты
order@pinall.ru 8 (800) 222-53-76 
Пинол - сервис внедрения Пинкит
  • Меню
  • Каталог
  • Акции
  • Интеграции
    Поддержка сайта Интеграция с 1С Корпортал Интернет магазин
  • О компании
    Кейсы Компетенции Новости Сертификаты Реквизиты Вакансии
  • Кейсы
  • Обучение
  • Контакты
pinkit
Товаров: 0 на 0 руб.
Корзина: +0 Отложено 0
В корзину добавлено
Ваша корзина пуста
К сожалению, ваша корзина пуста.
Исправить это недоразумение очень просто:
выберите в каталоге интересующий товар и нажмите кнопку «В корзину».
Итого:0 руб.

Продолжить покупки Перейти в корзину
  • CRM
    img Лицензия на Пинкит (тариф Команда) img Лицензия на Пинкит (тариф Компания) img Лицензия на Пинкит (тариф Корпорация) img Лицензия на Пинкит (тариф Энтерпрайз) img Битрикс24 (Облако) тариф «Базовый» img Битрикс24 (Облако) тариф «Стандартный» img Битрикс24 (Облако) тариф «Профессиональный» img Битрикс24 (Облако) тариф «Энтерпрайз» 250 img Битрикс24 (Облако) тариф «Энтерпрайз» 500 img Битрикс24 (Облако) тариф «Энтерпрайз» 1 000 img Битрикс24 (Коробка) тариф «Корпоративный портал» img Битрикс24 (Коробка) тариф «Интернет-магазин + CRM» img Переход с «1С-Битрикс24». Лицензия Корпоративный портал - 50 на другие редакции img Переход с «1С-Битрикс24». Лицензия Корпоративный портал - 100 на другие редакции img Переход с «1С-Битрикс24». Лицензия Корпоративный портал - 250 на другие редакции img Переход с «1С-Битрикс24». Лицензия Корпоративный портал - 500 img Wazzup PRO img WhatsApp Business Api img Wazzup Max img Wazzup Start img Wazzup Inbox
  • CMS
    img 1С-Битрикс: Управление сайтом img Лицензия на «1С-Битрикс: Управление сайтом - Малый бизнес» img Лицензия на «1С-Битрикс: Управление сайтом - Бизнес»
  • Пинкит
    img Лицензия на Пинкит (тариф Команда) img Лицензия на Пинкит (тариф Компания) img Лицензия на Пинкит (тариф Корпорация) img Лицензия на Пинкит (тариф Энтерпрайз)
  • Бизнес-процессы
    img Шаблон бизнес-процесса для распределения лидов (заявок) по компетенции менеджеров img Шаблон бизнес-процесса в Битрикс24 для автоматизации контроля заполнения полей при создании Лида img Шаблон бизнес-процесса в Битрикс24 для автоматизации обработки входящих заявок img Шаблон бизнес-процесса в Битрикс24 по согласованию договора с клиентом из сделки img Шаблон бизнес-процесса в Битрикс24 принятия сотрудника на работу img Шаблон бизнес-процесса в Битрикс24 для автоматизации работы выездных менеджеров img Шаблон бизнес-процесса в Битрикс24 для автоматического назначения ответственного менеджера за входящие заявки (Барабан) img Шаблон бизнес-процесса в Битрикс24 для автоматической отправки письма-поздравления с Днем рождения img Шаблон бизнес-процесса в Битрикс24 для распределения Лидов по ответственным img Шаблон бизнес-процесса в Битрикс24 приёма и распределения между отделами входящей документации в компании img Шаблон бизнес-процесса в Битрикс24 для контроля оплаты по счетам из сделки
  • Услуги
    img Онлайн-консультация по работе с Пинкит img Техническая поддержка Битрикс24 img Онлайн-консультация и настройка Битрикс24 img Техническая поддержка amoCRM img Разработка технического задания img Онлайн-консультация и настройка amoCRM img CRM: онлайн-вебинар по сравнению CRM-систем img Офлайн консультация по работе в CRM на территории Пинол img Онлайн консультация по работе в CRM img Онлайн-консультация по Битрикс24 пакет «Пользователь» img Онлайн-консультация по Битрикс24 пакет «Продавец» img Онлайн-консультация Битрикс24 пакет «Руководитель» img Онлайн консультация по Битрикс24 пакет "Администратор портала" img Вебинар Мясорубка CRM
  • Кейсы
  • Обучение
  • Форум
  • basket
  • Еще
ГлавнаяО компанииКейсыКейсыПеренос облака в коробку Битрикс24 с помощью REST API

Перенос данных из облака Битрикс24 в коробку Битрикс24 при помощи REST API

  • Кейсы
  • Компетенции
  • Новости
  • Сертификаты
  • Реквизиты
  • Вакансии
08.07.2024
Любому бизнесу в определенный момент может понадобится переезд из облака в коробку Битрикс24. Поводом для этого могут послужить различные ситуации, однако в любом случае этот процесс будет долгим и ресурсозатратным. В данном кейсе попытаемся разобраться, как сделать переезд менее трудоемким при помощи переноса данных через REST API с сохранением всех сущностей и связей между ними.


1. Из облака в коробку Битрикс24: готовимся к переезду грамотно

В большинстве случаев бизнесу, принявшему решение о переезде из облачного Битрикс24 в коробочный, нужно перенести задачи, сделки, компании и контакты с сохранением связей между ними.

Также среди наших заказчиков были запросы и на перенос бизнес-процессов и смарт-процессов.

Все зависит от того, какие сущности удобнее использовать компании в работе.

Инструкцию по настройке обмена данными между облаком Битрикс24 и коробкой (создание и обновление сделок) читайте по ссылке.

Но всех их объединяет одна проблема при старте переезда - ручной перенос данных. Напомним, что бэкап облака невозможен с 1 сентября 2023 года.

Такая ситуация приводит к серьезному затягиванию сроков переноса данных, что ведет к простоям, а следом и к убыткам.

Особо остро проблема встает для крупных компаний. В их CRM информация копится годами и перенести ее вручную крайне сложно.

Решение этой задачи - выгрузка данных при помощи интеграций Пинкит посредством REST API.

Инструкция по обмену задачами Битрикс24 (из коробки в облако) и проверка интеграции на успех здесь.

Все ваши данные останутся в целости и сохранности, плюс процесс завершится в максимально короткие сроки.

Следуйте инструкциям, описанным ниже и сможете настроить все интеграции без посторонней помощи.

Передача сделок из коробки Битрикс24 в облако Битрикс24 с сегментацией по пользовательским полям описана в этой нашей статье.

2. Инструкция по настройке интеграций Пинкит по переносу задач из облака в коробку Битрикс24

Допустим, нам требуется выгрузить задачу и последние 50 комментариев ней, а также вложения, тайминги, названия и пункты чек-листа.

Для этого понадобится 6 интеграций.

2.1. Интеграция "Задача создана в облаке -> Задачу создать в коробке"

2.1.1. Шаг 1: Откуда

Откуда отправляем данные: Битрикс24 (Webhook), Когда - "Задача создана". Подключаем доступ к облаку.

2.1.2. Шаг 2: Инструменты

Инструмент "Сопоставление групп между облаком и коробкой"

Используем инструмент "Сопоставление данных по полю" source.groupId, чтобы сопоставить группы задач между облаком и коробкой.

Инструмент "Сопоставление Наблюдателей, Исполнителей, Постановщиков, Соисполнителей"

Сопоставление настроим по полям задач source.createdBy, source.responsibleId, source.auditors, source.accomplices.

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

Используем API-запрос GET-методом с указанием URL: /task.item.gettags?TASK_ID={{source.id}}.

Инструмент "Получить вложения задачи"

Используем API-запрос GET-методом с указанием URL: /task.item.getfiles.json?TASKID={{source.id}}.

Инструмент "Вложения в задаче найдены?"

Используем инструмент "Если-Иначе", название поля - step4.result, Условие - "Не пустое значение", Результат при успешной проверке - 1, Результат при неуспешной проверке - 0.

Инструмент "Получить ID Хранилища"

Используем API-запрос GET-методом с указанием URL: /disk.storage.getlist?filter[ENTITY_ID]={{step1}}&filter[ENTITY_TYPE]=group

Инструмент "Получить стадии канбана в облаке"

Используем API-запрос GET-методом с указанием URL: /task.stages.get?entityId={{source.groupId}}&isAdmin=true

Инструмент "Получить стадии канбана в коробке"

Используем API-запрос GET-методом с указанием URL: /task.stages.get?entityId={{step1}}&isAdmin=true

Инструмент "Отфильтровать стадию в облаке"

Используем фильтр элементов массива, Название поля - step7.result, Условие - "Текст содержит", Сравниваемое значение - source.stageId.

Инструмент "Найти нужную стадию канбана в коробке"

Используем фильтр элементов массива, Название поля - step8.result, Название поля внутри элемента массива - TITLE, Условие - Текст содержит, Сравниваемое значение - step9.0.TITLE.

2.1.3. Шаг 3: Куда

Куда отправляем данные - Битрикс24 (это уже будет коробка), Какое действие совершаем - "Создать задачу".

2.1.4. Шаг 4: Сопоставление данных

Сопоставляем название и описание задачи в облаке и коробке.

Указываем дополнительные сопоставления из шага 2.

Дополнительное тело запроса:

{

"fields": {

"RESPONSIBLE_ID": "{{step2.source_responsibleId|default()}}",

"MARK": "{{source.mark|default()}}",

"PRIORITY": "{{source.priority|default()}}",

"MULTITASK": "{{source.multitask|default()}}",

"NOT_VIEWED": "{{source.notViewed|default()}}",

"REPLICATE": "{{source.replicate|default()}}",

"STAGE_ID": "{{step10.0.ID|default()}}",

"START_DATE_PLAN": "{{source.startDatePlan|default()}}",

"END_DATE_PLAN": "{{source.endDatePlan|default()}}",

"XML_ID": "{{source.xmlId|default()}}",

"ALLOW_CHANGE_DEADLINE": "{{source.allowChangeDeadline|default()}}",

"TASK_CONTROL": "{{source.taskControl|default()}}",

"ADD_IN_REPORT": "{{source.addInReport|default()}}",

"TIME_ESTIMATE": "{{source.timeEstimate|default()}}",

"TIME_SPENT_IN_LOGS": "{{source.timeSpentInLogs|default()}}",

"MATCH_WORK_TIME": "{{source.matchWorkTime|default()}}",

"FORUM_TOPIC_ID": "{{source.forumTopicId|default()}}",

"FORUM_ID": "{{source.forumId|default()}}",

"SITE_ID": "{{source.siteId|default()}}",

"SUBORDINATE": "{{source.subordinate|default()}}",

"EXCHANGE_MODIFIED": "{{source.exchangeModified|default()}}",

"EXCHANGE_ID": "{{source.exchangeId|default()}}",

"OUTLOOK_VERSION": "{{source.outlookVersion|default()}}",

"VIEWED_DATE": "{{source.viewedDate|default()}}",

"SORTING": "{{source.sorting|default()}}",

"DURATION_FACT": "{{source.durationFact|default()}}",

"IS_MUTED": "{{source.isMuted|default()}}",

"IS_PINNED": "{{source.isPinned|default()}}",

"IS_PINNED_IN_GROUP": "{{source.isPinnedInGroup|default()}}",

"DURATION_PLAN": "{{source.durationPlan|default()}}",

"DURATION_TYPE": "{{source.durationType|default()}}",

"FAVORITE": "{{source.favorite|default()}}",

"ALLOW_TIME_TRACKING":"Y",

"UF_AUTO_299592262349":"{{source.ufAuto418665225732}}"

     }

}

И дополнительные сопоставления:

groupId

Тип: Тело

Название параметра: fields.GROUP_ID

Значение параметра: {{step1}}

Дата создания

Тип: Тело

Название параметра: fields.CREATED_DATE

Значение параметра: {{Дата создания}}

Дата изменения

Тип: Тело

Название параметра: fields.CHANGED_DATE

Значение параметра: {{Дата изменения}}

Статус

Тип: Тело

Название параметра: fields.STATUS

Значение параметра: {{Статус}}

Крайний срок

Тип: Тело

Название параметра: fields.DEADLINE

Значение параметра: {{Крайний срок}}

Постановщик

Тип: Тело

Название параметра: fields.CREATED_BY

Значение параметра: {{step2.source_createdBy}}

Дата начала

Тип: Тело

Название параметра: fields.DATE_START

Значение параметра: {{Дата начала}}

AUDITORS

Тип: Тело

Название параметра: fields.AUDITORS

Значение параметра: {{step2.source_auditors}}

ACCOMPLICES

Тип: Тело

Название параметра: fields.ACCOMPLICES

Значение параметра: {{step2.source_accomplices}}

TAGS

Тип: Тело

Название параметра: fields.TAGS

Значение параметра: {{step3.result|default()}}

2.1.5. Шаг 5: Запуск

Указываем название интеграции, периодичность запросов данных и запускаем.

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

2.2. Интеграция "Задача - добавить вложения"

2.2.1. Шаг 1: Откуда

Откуда отправляем данные - Пинкит, Когда - "Интеграция - успех", подключаем аккаунт Пинкит и выбираем интеграцию, настроенную нами ранее.

2.2.2. Шаг 2: Инструменты

Инструмент "Вложение было?"

Используем инструмент "Проверка", Название поля - source.int6551.step5, Условие - "ЧислоРавно", Сравниваемое значение - 1, Действие - Продолжить, если проверка пройдена.

Инструмент "Для каждого вложения"

Тип шага - "Для каждого", название поля - source.int6551.step4.result.

Инструмент "Получить развернутую информацию о вложениях"

Используем API-запрос GET-методом с указанием URL: /disk.attachedObject.get?id={{step2.ATTACHMENT_ID|default()}}

Инструмент "Скачать файл"

Тип шага - Скачать файл, для этого используем API-запрос GET-методом с указанием URL: {{step3.result.DOWNLOAD_URL|default()}}.

2.2.3. Шаг 3: Куда

Куда отправляем данные - коробка Битрикс24, когда: "Задача - добавить вложение".

2.2.4. Шаг 4: Сопоставление данных

Настраиваем сопоставление:

ID задачи - {{source.int6551.result.result.task.id|default()}}

Название файла - {{step3.result.NAME}}

URL файла - {{step4}}

2.2.5. Шаг 5: Запуск

Запускаем интеграцию.

2.3. Интеграция "Задача - Добавить комментарии 50 последних"

2.3.1. Шаг 1: Откуда

Откуда отправляем данные - Пинкит, Когда - "Интеграция - успех", подключаем аккаунт Пинкит и выбираем интеграцию, настроенную нами ранее.

2.3.2. Шаг 2: Инструменты

Инструмент "Получить комментарии из портала, откуда выгружаем"

Используем API-запрос GET-методом с указанием URL: /task.commentitem.getlist.json?TASKID={{source.int6551.source.id}}&order[POST_DATE]=asc.

Инструмент "Для каждого комментария"

Используем инструмент "Для каждого", Название поля - step1.result.

Инструмент "Убрать теги из комментария"

Используем инструмент "Замена по регулярному выражению", Название поля - step2.POST_MESSAGE, Регулярное выражение - /\[USER=\d+\](.*?)\[\/USER\]/.

Инструмент "Есть ли вложения"

Используем тип шага "Если-иначе", Название поля - step2.ATTACHED_OBJECTS, Условие - "Существует", Результат при успешной проверке - 1, Результат при неуспешной проверке - 0.

Инструмент "Отфильтровать файл"

Используем фильтр элементов массива, Условие выполнения - step5, Название поля - step2.ATTACHED_OBJECTS|default(), Название поля внутри элемента массива - DOWNLOAD_URL, Условие - "Не пустое значение".

Инструмент "Развернутая информация о вложениях"

Используем API-запрос GET-методом с указанием URL: /disk.attachedObject.get?id={{step6.0.ATTACHMENT_ID}}, Условие выполнения - step5.

Инструмент "Скачать файл"

Используем инструмент "Скачать файл", API-запрос GET-методом с указанием URL:{{step7.result.DOWNLOAD_URL}}, Условие выполнения - step5.

Инструмент "Загрузить файл на диск в Хранилище группы"

Используем API-запрос POST-методом с указанием URL: /disk.storage.uploadfile.

Тело запроса:

{

"id": {{source.int6551.step6.result.0.ID}},

"fileContent": ["file", "{{step8|get_http_content()|base64_encode()}}"],

"data": {"NAME": "{{step7.result.NAME|default()}}"},

"generateUniqueName": true

}

Условие выполнения - step5.

Инструмент "Закрепить файл или нет"

Используем инструмент "Если-Иначе", название поля - step5, Условие - "ЧислоРавно", Сравниваемое значение - 1, Результат при успешной проверке - n{{step9.result.ID|default()}}, результат при неуспешной проверке - {{step9.result.ID|default()}}.

2.3.3. Шаг 3: Куда

Куда отправляем данные - Битрикс24, Какое действие совершаем - "Задача - добавить комментарий", указываем пользователя, от чьего имени будут добавлены комментарии.

2.3.4. Шаг 4: Сопоставление данных

Настраиваем сопоставление:

ID задачи - {{source.int6551.result.result.task.id}}

Текст комментария - от: {{step2.AUTHOR_NAME}}

{{step4}}

И пользовательское сопоставление:

Файл в комментарий

Тип: Тело

Название параметра: fields.UF_FORUM_MESSAGE_DOC.0

Значение параметра: {{step10}}

2.3.5. Шаг 5: Запуск

Запускаем интеграцию.

2.4. Интеграция "Задача. Добавить название чек-листа"

2.4.1. Настройка 1 шага выполняется аналогично предыдущей интеграции.

2.4.2. Шаг 2: Инструменты

Инструмент "Получить чек-листы Задачи"

Используем API-запрос GET-методом с указанием URL: /task.checklistitem.getlist?TASKID={{source.int6551.source.id}}

Инструмент "Чек-листы есть?"

Тип шага - "Проверка", Название поля - step1.result, Условие - "Пустое значение", Действие - "Прервать, если проверка пройдена".

Инструмент "Отфильтровать заголовок чек-листа"

Инструмент - "фильтр элементов массива", Название поля - step1.result, Название поля внутри элемента массива - PARENT_ID, Условие - "ЧислоРавно".

Инструмент "Для каждого заголовка чек-листа"

Тип шага - "Для каждого", Название поля - step3.

2.4.3. Шаг 3: Куда

Выбираем Битрикс24, действие - "Создать элемент чек-листа", подключаем доступ к коробке.

2.4.4. Шаг 4: Сопоставление данных

Сопоставляем данные следующим образом:

ID задачи - {{source.int6551.result.result.task.id|default()}}

Название - {{step4.TITLE}}

Завершено? (Y/N) - {{step4.IS_COMPLETE}}

Важное? (Y/N) - {{step4.IS_IMPORTANT}}

И пользовательское сопоставление:

PARENT_ID

Тип: Тело

Название параметра: FIELDS.PARENT_ID

Значение параметра: 0

2.4.5. Запускаем интеграцию

2.5. Интеграция "Пункты чек-листа""

2.5.1. Шаг 1 аналогичен описанному выше, только интеграцию указываем по чек-листам.

2.5.2. Шаг 2: Инструменты

Инструмент "Отфильтровать чек-листы"

Используем фильтр элементов массива, Название поля - source.int6690.step1.result, Название поля внутри элемента массива -PARENT_ID, Условие - ЧислоРавно, Сравниваемое значение -source.int6690.step3.0.ID.

Инструмент "Для каждого пункта"

Тип шага - "Для каждого", Название поля - step1.

2.5.3. Шаг 3: Куда

Выбираем Битрикс24, действие - "Создать элемент чек-листа", подключаем доступ к коробке.

2.5.4. Шаг 4: Сопоставление данных

Настраиваем сопоставление:

ID задачи - {{source.int6551.result.result.task.id}}

Название - Тест

Завершено? (Y/N) - {{step2.IS_COMPLETE}}

Важное? (Y/N) - {{step2.IS_IMPORTANT}}

Дополнительное тело запроса:

{

    "FIELDS": {

        "TITLE": "{{step2.TITLE}}"

    }

}

Пользовательское сопоставление:

PARENT_ID

Тип: Тело

Название параметра: FIELDS.PARENT_ID

Значение параметра: {{source.int6690.result.result|default()}}

SORT_INDEX

Тип: Тело

Название параметра: FIELDS.SORT_INDEX

Значение параметра: {{step2.SORT_INDEX}}

2.5.5. Шаг 5: Запуск

Запускаем интеграцию.

2.6. Интеграция "Учёт рабочего времени"

2.6.1. Шаг 1 аналогичен описанному выше, выбираем самую первую интеграцию.

2.6.2. Шаг 2: Инструменты

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

Используем API-запрос GET-методом с указанием URL: /task.elapseditem.getlist?TASKID={{source.int6551.source.id}}

Инструмент "Для каждого тайминга"

Тип шага - "Для каждого", Название поля - step1.result.

Инструмент "Сопоставить пользователей"

Используем сопоставление данных по названию поля step2.USER_ID.

2.6.3. Шаг 3: Куда

Выбираем Битрикс24, действие - "Добавить запись учета времени".

2.6.4. Шаг 4: Сопоставление данных

Сопоставляем данные:

Идентификатор задачи - {{source.int6551.result.result.task.id|default()}}​

Длительность (секунд) - {{step2.SECONDS}}

Комментарий - {{step2.COMMENT_TEXT}}

Пользователь - {{step3}}

Время создания - {{step2.CREATED_DATE}}

2.6.5. Запускаем.

3. Резюмируем

Аналогичным способом можно перенести из облака в коробку Битрикс24 сделки, контакты, компании и другие необходимые сущности, сохранив связь между ними.

Алексей Окара

Регистрируйтесь по ссылке: https://lk.pinkit.io/register в личном кабинете Пинкит и тестируйте интеграции переноса облака в коробку самостоятельно по нашей инструкции или с нашей помощью.

Алексей Окара,
основатель Пинол и продакт-менеджер Пинкит



  • На главную
  • Компания
  • Информация
  • Помощь
8 (800) 222-53-76 
Сайт использует файлы cookie. Продолжая просмотр сайта, вы соглашаетесь с использованием файлов cookie.
  • PINALL © 2011 - 2025
    Все права защищены


    Роскомнадзор
    Рег.№ 77-17-007126


    ВКонтакте YouTube
    • Реквизиты
    • Вакансии
    • Новости
    • Пользовательское соглашение
    • Обработка данных
    • Лицензионный договор
    • Кейсы
    • Сертификаты
    • Компетенции
    • Способы оплаты
    • Партнерская программа
    • Статьи
    • Вопрос-ответ
    • Вики
    • Бренды
    • Интеграции
Информация на сайте www.pinall.ru не является публичной офертой