# Импорт бота

Экспорт и импорт бота используется для переноса бота с одной платформы на другую или для создания тестовых копий бота.

Кнопка **Импорт бизнеса/ботов** находится на главной странице бизнеса.

[![Импорт.png](https://docs.metabot24.ru/uploads/images/gallery/2024-11/scaled-1680-/C9ZXJ5N1uSJi8LDf-import.png)](https://docs.metabot24.ru/uploads/images/gallery/2024-11/C9ZXJ5N1uSJi8LDf-import.png)

При переходе по кнопке открывается окно настроек импорта со следующими полями:

[![image.png](https://docs.metabot24.ru/uploads/images/gallery/2024-11/scaled-1680-/0Ure0PqAte0fxT2U-image.png)](https://docs.metabot24.ru/uploads/images/gallery/2024-11/0Ure0PqAte0fxT2U-image.png)

- **Алгоритм импорта** — **Только добавление новых данных:**
    - Только создание новых ботов без слияния;
    - Если данные уже существуют, то будет выведена ошибка, импорт будет отменен;

<p class="callout info">Подходит для импорта нового бота, импорта данных в новый бизнес или импорта "порции" новых данных в бизнес. Режим гарантирует, что **имеющиеся данные не будут затронуты**, т.к. обновление в данном режиме не выполняется.</p>

- **JSON файл** — возможность добавления JSON файла для импорта данных;

<p class="callout warning">Максимальный размер импортируемого JSON файла = **20 Мб**.</p>

- **JSON** — окно добавления JSON кода для импорта данных. Если указан JSON-файл, то текстовое содержимое JSON из поля будет проигнорировано.

В верхней части окна указано предупреждение о выполняемых действиях: в какой бизнес происходит импорт и куда будут добавлены данные по ботам.

[![image.png](https://docs.metabot24.ru/uploads/images/gallery/2024-11/scaled-1680-/v39yb5x6av9smz5z-image.png)](https://docs.metabot24.ru/uploads/images/gallery/2024-11/v39yb5x6av9smz5z-image.png)

После нажатия на кнопку **Импорт**, если не было обнаружено конфликтов, то данные будут обновлен ы в указанном бизнесе.

<p class="callout warning">При переносе полностью всего бизнсеа с заявками и персонами, необходимо **предварительно добавить пользователей в бизнес**, в который выполняется перенос.</p>

Если у пользователя бота есть роль **bots\_merger**, ему будут доступны следующие дополнительные поля:

- **Алгоритм импорта** — выпадающий список с типом импорта: 
    - **Только добавление новых данных (с поддержкой добавления в уже существующие боты)**:  
        
        - Режим идентичен режиму **Только добавление новых данных**, за исключением пункта ниже;
        - Осуществляется поиск ботов по полю "код" для добавления в них данных. Если бот не найден, то будет создан новый;

<p class="callout info">Подходит для добавления новых данных в имеющиеся боты. Режим гарантирует, что **имеющиеся данные не будут затронуты**, т.к. обновление в данном режиме не выполняется.</p>

- - **Только обновление существующих данных**:  
        
        - Только обновление имеющихся данных по ботам и бизнесу, создание новых ботов, данных по ботам и бизнесу не будет выполняться;
        - Поиск ботов для обновления их параметров и связанных с ботом данных выполняется по полю "код", если бот не найден, будет выведена ошибка, импорт будет отменен;
        - Если данные уже существуют, то они будут обновлены (поиск выполняется по коду, наименованию и т.д.);

<p class="callout info">Подходит для обновления параметров сущностей (например, когда структура бота не меняется, а меняются только текст сообщений или, например, изменены данные кастомных таблиц, в данном случае будут только обновлены имеющиеся записи в таблицах, новые таблицы также не будут созданы).</p>

- - **Добавление новых и обновление существующих данных**:  
        
        - Будет выполнено создание новых и обновление существующих данных по бизнесу и ботам;
        - Новые боты будут созданы, если они не будут найдены по полю "код";
        - Если боты будут найдены по полю "код", то будут обновлены их параметры и связанные с ботом данные;
        - Если данные по ботам и бизнесу уже существуют, то они будут обновлены (поиск выполняется по коду, наименованию и т.д.);

<p class="callout info">Подходит для слияния данных (например, для переноса новой версии бота или данных по бизнесу);  
</p>

<p class="callout warning">Будьте аккуратны при импорте в уже работающий бизнес, **предварительно экспортируйте данные по бизнесу**, чтобы можно было восстановить предыдущую версию.</p>

Ниже приведена таблица слияния — по каким полям выполняется поиск сущностей в БД для того, чтобы определить есть сущность и нужно ли ее обновлять или добавлять.

<table border="1" id="bkmrk-%D0%A1%D1%83%D1%89%D0%BD%D0%BE%D1%81%D1%82%D1%8C-%D0%9F%D0%BE%D0%BB%D0%B5-%D0%94%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5" style="border-collapse: collapse; width: 100%; height: 1033.8px;"><tbody><tr style="background-color: #c2e0f4; height: 29.537px;"><td class="align-left" style="width: 50.0458%; height: 29.537px;">**Сущность**</td><td style="width: 50.0458%; height: 29.537px;">**Поле**</td></tr><tr style="background-color: #ced4d9; height: 29.537px;"><td class="align-left" colspan="2" style="height: 29.537px; width: 100.092%;">**Данные по ботам**  
</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Настройки бота</td><td style="width: 50.0458%; height: 29.537px;">Код</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Интеграции </td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Статусы лидов</td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Маршруты </td><td style="width: 50.0458%; height: 29.537px;">Код</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Ссылки</td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Рассылки </td><td style="width: 50.0458%; height: 29.537px;">Код</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Внутреннее API (Конечные точки)</td><td style="width: 50.0458%; height: 29.537px;">Алиас</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Внешнее API (Конечные точки)</td><td style="width: 50.0458%; height: 29.537px;">Код</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Системные атрибуты бота</td><td style="width: 50.0458%; height: 29.537px;">По типу и наименованию</td></tr><tr style="height: 29.537px; background-color: #ecf0f1;"><td class="align-left" colspan="2" style="height: 29.537px; width: 100.092%;">Скрипты, команды и меню  
</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Разделы скриптов</td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Скрипты </td><td style="width: 50.0458%; height: 29.537px;">Код</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Команды скрипта</td><td style="width: 50.0458%; height: 29.537px;">Алиас (в рамках импортируемого бота и скрипта)</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Пункты меню</td><td style="width: 50.0458%; height: 29.537px;">Алиас (в рамках импортируемого бота и скрипта)</td></tr><tr style="height: 29.537px; background-color: #ecf0f1;"><td class="align-left" colspan="2" style="height: 29.537px; width: 100.092%;">Триггеры  
</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Триггеры</td><td style="width: 50.0458%; height: 29.537px;">Код</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">События на которые подписан триггер</td><td style="width: 50.0458%; height: 29.537px;">По виду события</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Привязка триггера к ссылке</td><td style="width: 50.0458%; height: 29.537px;">По наименованию ссылки</td></tr><tr style="height: 29.537px; background-color: #ced4d9;"><td colspan="2" style="height: 29.537px; width: 100.092%;">**Данные по бизнесу**  
</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Роли персон</td><td style="width: 50.0458%; height: 29.537px;">Имя</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Персоны </td><td style="width: 50.0458%; height: 29.537px;">guid</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Заявки </td><td style="width: 50.0458%; height: 29.537px;">guid</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Виды заявок</td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Статусы заявок</td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Произвольные поля заявок</td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Привязки произвольных полей заявок к видам заявок</td><td style="width: 50.0458%; height: 29.537px;">По виду заявки и наименованию поля</td></tr><tr style="height: 29.537px; background-color: #ced4d9;"><td colspan="2" style="height: 29.537px; width: 100.092%;">**Плагины бизнеса**  
</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Плагины </td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Скрипты плагина</td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="background-color: #ced4d9; height: 29.537px;"><td colspan="2" style="width: 100.092%; height: 29.537px;">**Кастомные таблицы**  
</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Параметры таблицы</td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Поля таблицы</td><td style="width: 50.0458%; height: 29.537px;">Наименование</td></tr><tr style="height: 29.537px;"><td style="width: 50.0458%; height: 29.537px;">Данные </td><td style="width: 50.0458%; height: 29.537px;">ID каждой записи</td></tr></tbody></table>