# Интеграция с Albato

Source: https://docs.botman.pro/a/31-integratsiya-s-albato

**Что такое интеграция с Albato и зачем она нужна?**

**Albato** — это сервис-коннектор, который связывает BotMan с сотнями других сервисов (CRM, Google Таблицы, мессенджеры, платёжные и рекламные системы) без программирования. Интеграция работает в обе стороны:

- **из BotMan в другие сервисы** — события бота (новый подписчик, входящее сообщение, добавленный тег, оплата) автоматически запускают сценарии в Albato;
- **из других сервисов в BotMan** — по событию в любом сервисе можно отправить сообщение, добавить тег, записать поле, запустить или остановить сценарий и т.д.

Вы сможете:

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

Интеграция особенно полезна для:

- ведения клиентской базы, заявок и заказов;
- сквозной автоматизации «бот ↔ CRM ↔ таблицы»;
- передачи оплат и конверсий во внешние системы;
- работы без разработчика.

**Как подключить Albato: пошаговая инструкция**

Подключение строится на API-ключе BotMan: вы создаёте ключ в личном кабинете и указываете его в Albato.

**Шаг 1️⃣: Получите API-ключ в BotMan**

1. Войдите в личный кабинет BotMan.
2. Перейдите в раздел **Интеграции**.
3. Нажмите кнопку **«Подключить API»** — будет создан ваш персональный API-ключ.
4. Скопируйте ключ.

🔒 API-ключ даёт доступ к данным вашего аккаунта — не передавайте его третьим лицам. При необходимости ключ можно перевыпустить.

**Шаг 2️⃣: Создайте подключение BotMan в Albato**

1. В Albato создайте новую связку (или откройте существующую).
2. В качестве триггера или действия выберите приложение **BotMan**.
3. На шаге подключения нажмите **«Добавить подключение»**.
4. В поле **«API Key»** вставьте ключ из Шага 1 и сохраните.

**Шаг 3️⃣: Проверьте подключение**

Если ключ верный, Albato создаст подключение без ошибок. Одно подключение можно использовать в любом числе связок — повторно вводить ключ не нужно.

**Триггеры: какие события BotMan запускают связку**

- **Новый подписчик** — пользователь впервые подписался на бота.
- **Входящее сообщение** — подписчик написал боту.
- **Изменение подписчика** — у подписчика изменились теги, системные или пользовательские поля. Что именно изменилось, видно в поле «Изменённые поля».
- **Добавление тега подписчику** — подписчику назначен тег.
- **Новая оплата** — подписчик оплатил счёт в боте через подключённую платёжную систему.

Каждый триггер передаёт в связку данные события (подписчик, канал, тег, платёж и т.д.), которые можно подставлять в следующие шаги. Во всех триггерах есть поле **«ID подписчика»** — передавайте его в действия BotMan, чтобы они нашли нужного подписчика.

**Пользовательские поля.** В триггерах «Новый подписчик» и «Изменение подписчика», а также в действиях «Поиск подписчика» и «Получение подписчика по ID» пользовательские поля вашего аккаунта приходят отдельными полями — с названиями из BotMan и подходящими типами: число, дата, дата и время, да/нет, список. Теги подписчика приходят списком названий. Если нужного поля нет в списке переменных, нажмите **«Обновить»** в блоке «Пользовательские поля» шага связки — Albato подтянет актуальные поля вашего аккаунта.

⚠️ **Триггеры BotMan работают только на платных тарифах.** Запуская связку, Albato подписывается на события вашего аккаунта, а подписка на события доступна на платном тарифе BotMan. На тарифе Free связка с триггером BotMan не запустится.

**Действия: что можно сделать в BotMan**

Большинству действий нужен **«ID подписчика»** — это ID подписчика в BotMan, а не ID пользователя в соцсети. Возьмите его из любого триггера BotMan или из действия «Поиск подписчика».

- **Отправка сообщения** — отправить подписчику текст, вложение или и то и другое. Вложение — картинка, видео, файл или аудио по публичной ссылке http(s), до 50 МБ: BotMan скачает файл и отправит его вложением. Сообщение уйдёт в тот канал, из которого пришёл подписчик. Чтобы отправить не сразу, заполните «Отложить на» и «Единицу времени» (минуты, часы или дни).
- **Поиск подписчика** — найти подписчика по значению поля и получить его данные, теги и пользовательские поля, в том числе «ID подписчика». Выберите поле для поиска (телефон, email, имя пользователя, ID в соцсети, имя, фамилия) и укажите значение — оно должно совпадать точно.
- **Получение подписчика по ID** — получить те же данные подписчика по его «ID подписчика».
- **Изменение системного поля подписчика** и **Сброс системного поля подписчика** — записать или очистить имя, фамилию, телефон, email, заметку или UTM-метку.
- **Изменение пользовательского поля подписчика** и **Сброс пользовательского поля подписчика** — записать или очистить значение пользовательского поля; поле выбирается из списка. Для поля со списком передайте код варианта, а не его подпись. Поля с множественным выбором этим действием не заполняются.
- **Изменение глобального поля** — записать значение в глобальное поле: оно общее для всех подписчиков аккаунта.
- **Запуск сценария** — запустить сценарий для подписчика. Сценарий выбирается из списка (рядом с названием указан канал) и должен быть из того же канала, что и подписчик. «ID шага для старта» необязателен: если оставить его пустым, сценарий начнётся с первого шага.
- **Остановка сценария** — остановить сценарий у подписчика: запланированные шаги отменяются. Если сценарий у подписчика не запущен, ничего не произойдёт.
- **Запуск рассылки** — запустить рассылку, выбранную из списка рассылок аккаунта. Она уйдёт по аудитории из своих настроек.
- **Добавление тега подписчику** и **Удаление тега у подписчика** — назначить или снять тег; тег выбирается из списка тегов аккаунта.

Сценарии каналов-эмуляторов через API не запускаются, а тестовые подписчики эмулятора не находятся поиском.

**Пример связки**

**Задача:** при добавлении тега «Оплатил» сохранять подписчика в Google Таблицы.

1. Триггер: **BotMan → Добавление тега подписчику**.
2. (Опционально) фильтр по нужному тегу.
3. Действие: **Google Sheets → Добавить строку**, подставив поля из триггера.

**🧠 Полезно знать**

- Одно подключение (один API-ключ) обслуживает любое число связок.
- Триггеры срабатывают только на включённой связке; в режиме теста они работают временно.
- Данные триггера доступны для подстановки во все последующие шаги связки.
- Если поставить связку на паузу, Albato отпишется от событий BotMan; при повторном запуске подписка создастся заново.

**🛠 Частые проблемы**

- **Вебхуки доступны на платном тарифе** — связка с триггером BotMan не запускается на тарифе Free: подписка на события доступна только на платном тарифе BotMan.
- **Не удалось проверить тариф для вебхуков, попробуйте позже** — временный сбой проверки тарифа, запустите связку ещё раз через пару минут.
- **Subscriber with provided id was not found** — подписчик с таким ID не найден в вашем аккаунте. Передайте в действие поле «ID подписчика» из триггера BotMan или из действия «Поиск подписчика», а не ID в соцсети.
- **Flow belongs to another channel than the subscriber** — выбранный сценарий из другого канала. Выберите сценарий того канала, из которого пришёл подписчик.
- **Subscriber has blocked the bot** или **Chat with the subscriber no longer exists** — подписчик заблокировал бота или чат с ним удалён, сообщение доставить нельзя.
- **Message needs text or an attachment** — в сообщении нет ни текста, ни вложения: заполните хотя бы одно из них.
- **Attachment could not be downloaded from the link** — BotMan не смог скачать файл. Ссылка должна быть публичной (http или https) и вести на файл до 50 МБ.
- **Attachment needs a link to the file** или **Attachment type … is not supported** — выберите тип вложения из списка и укажите ссылку на файл.
- **Shift time requires a value and a unit…** — для отложенной отправки заполните и «Отложить на», и «Единицу времени».
- **Field … cannot be changed via public API** — это системное поле нельзя изменить через API. Доступные поля — в списке действия «Изменение системного поля подписчика».

👆 На этом пока всё

