Слова «интеграция», «API» и «вебхук» часто звучат так, будто речь о чём-то сложном и только для программистов. На деле это три простых понятия, и понять их нужно любому, кто заказывает автоматизацию: от этого зависит, будет ли она надёжной и сколько будет стоить.
Что такое интеграция
В компании обычно несколько систем: сайт принимает заявки, CRM хранит клиентов, учётная система ведёт заказы, таблица считает отчёты. Пока они не связаны, человек переносит данные между ними руками: скопировал заявку из письма в CRM, пересчитал заказ в таблице. Это долго, и в этих переносах чаще всего происходят ошибки.
Интеграция — это связь между системами, при которой данные идут сами. Заявка пришла на сайт, и уже через секунду есть карточка в CRM и сообщение менеджеру. Как именно системы «договариваются», бывает по-разному: через файл, который одна кладёт, а другая забирает, через готовую связку или через API.
API: меню в ресторане
Представьте ресторан. Вы не идёте на кухню и не готовите сами. У вас есть меню: там написано, что можно заказать, как это называется и что нужно сказать официанту. Вы делаете заказ по правилам, а что происходит на кухне, вам знать не обязательно.
API — это меню программы: что у неё можно попросить, в каком виде и что она ответит.
Так же устроен API. У программы есть «окно», через которое другая программа может попросить: «покажи заказы за сегодня», «создай клиента с таким именем», «измени статус сделки». Всё это делается по заранее описанным правилам, поэтому не нужно трогать внутренности и ничего не ломается.
У API есть три важные особенности, о которых стоит знать заказчику:
- Доступ по ключу. Просто так программу не попросишь: нужен ключ или токен, как пропуск. Ключ выдаёт владелец системы и может отозвать.
- Лимиты. Часто можно сделать не больше определённого числа запросов в минуту или день. Для маленькой компании это обычно не проблема, для больших объёмов надо проверять.
- Версии. Сервис может обновить правила, а старые закрыть. Это одна из причин, по которым автоматизация ломается даже тогда, когда ничего не трогали.
Вебхук: не спрашивать, а ждать сообщения
Есть два способа узнать, что в системе что-то произошло. Первый: спрашивать каждые несколько минут, не появилось ли новое. Это называется опрос. Он простой, но бестолковый: почти все запросы впустую, а новое событие обнаруживается с задержкой.
Второй способ: попросить систему самой сообщить, когда событие случится. Вы заранее оставляете адрес: «когда придёт новая заявка, отправь сюда сообщение». Это и есть вебхук. Событие произошло, система сразу отправила его на ваш адрес, и ваша автоматизация проснулась.
- Опрос — как каждые пять минут проверять почтовый ящик. Надёжно, но медленно и расточительно.
- Вебхук — как уведомление на телефоне: письмо пришло, и вы узнали сразу.
Вебхук быстрее и дешевле опроса, но требует аккуратности: если ваша сторона в момент события не работала, сообщение можно потерять. Хорошие системы повторяют отправку несколько раз, но предусмотреть это нужно заранее, например настроить уведомление о сбоях.
Пример: одна заявка, три системы
Допустим, клиент оставляет заявку на сайте. Что происходит при хорошей интеграции:
- сайт по вебхуку сообщает: «пришла заявка»;
- автоматизация через API создаёт карточку в CRM и записывает строку в таблицу;
- менеджеру уходит уведомление в мессенджер со ссылкой на карточку;
- если один из шагов не получился, ответственному приходит сообщение о сбое, а не тишина.
Всё это занимает секунды и не требует, чтобы человек что-то копировал. Такие цепочки мы и собираем: как связать сервисы между собой и как не терять заявки.
Есть ли API у вашей системы
У большинства современных систем — CRM, учёта, рассылок, мессенджеров — API есть, но не у всех и не всегда на вашем тарифе. Бывает, что возможности ограничены: можно читать данные, но нельзя записывать, или доступно только на платном тарифе. Поэтому первое, что мы делаем, — смотрим, что именно ваша система позволяет, а потом выбираем способ связи. Если API нет совсем, бывают обходные пути: выгрузка файлов, импорт по расписанию, подключение через готовые блоки конструкторов. Какие бывают конструкторы.
Пять вопросов, которые стоит задать до интеграции
- Есть ли у каждой системы API и достаточно ли его возможностей на вашем тарифе?
- Какие данные и в каком направлении должны идти: только читать или ещё и записывать?
- Что произойдёт, если одна из сторон временно недоступна: потеряются данные или система повторит попытку?
- Кто получит уведомление, если связка перестала работать?
- Где хранятся ключи доступа и можно ли быстро отозвать их, если сотрудник ушёл?
Если на эти вопросы есть ответы, интеграция будет надёжной. Если нет, лучше выяснить это до начала работы, а не после первого сбоя.