Интеграции — Каналы, CRM, Вебхуки

Источник: doc.nextbot.ru/functional/integrations


Обзор

Интеграции — основной раздел для управления подключёнными каналами связи (мессенджеры, чаты), CRM-системами и внешними сервисами.


Каналы связи (мессенджеры)

Канал Особенности
Telegram (Бот) Полная поддержка: текст, файлы, кнопки. Нет ограничения 24ч
Telegram (Личный) Ограничение: можно писать только тем, кто писал < 24ч назад
WhatsApp Через Green API. Строгие ограничения на массовые рассылки
Instagram Через Meta API. Ограничение 24ч на инициативные сообщения
Avito Pro Интеграция с мессенджером Avito
VK Сообщества ВКонтакте
Виджет на сайте Встроенный чат-виджет
Тестовый чат Встроенный тестовый чат для отладки

CRM-интеграции

CRM Возможности
amoCRM Создание сделок, обновление контактов, передача данных
Bitrix24 Создание лидов, задач, контактов
Kommo Интеграция с Kommo CRM
U-ON.Travel Специализированная CRM для туристической отрасли
Мой Склад Складской учёт и торговля
Google Calendar Двусторонняя интеграция с календарем

Google Calendar

Возможности

Подключение

  1. Перейдите в Интеграции → Google Calendar.
  2. Нажмите «Подключить» и выберите Google-аккаунт.
  3. Предоставьте права доступа ("Выбрать всё").

Настройки


Bitrix24

Возможности интеграции

Сценарий использования

  1. Квалификация: Агент задает вопросы, выявляет потребность.
  2. Сбор данных: Имя, телефон, детали заказа.
  3. Действие в CRM: Создание лида, смена стадии сделки.
  4. Передача: Если нужно, подключение оператора.

Особенности


Вебхуки (Webhooks)

Что такое вебхуки

Вебхуки позволяют получать данные от внешних сервисов в NextBot. Это двунаправленная интеграция: NextBot может и отправлять, и принимать данные.

Два способа подключения

1. Вебхук по правилам NextBot (без адаптера)

Используется, когда внешний сервис может отправлять данные в предопределённом JSON-формате.

URL эндпоинта:

https://app.nextbot.ru/api/webhooks/v1/{agent_hash}/{url_token}

Обязательные поля JSON:

Поле Тип Обязательно Описание
dialog_id int ID существующего диалога в NextBot
text str Текст сообщения
message_type str Тип сообщения (по умолчанию input)
message_id str Уникальный ID сообщения

Типы сообщений (message_type):

Тип Описание
input Имитация входящего сообщения от клиента (не отправляется клиенту)
forwarded_output Отправляется клиенту как обычное сообщение от агента
output Сохраняется как сообщение оператора (только контекст, не видно клиенту)
notification Системное уведомление (не отправляется клиенту)

Пример запроса:

{
  "dialog_id": 10177062,
  "text": "Оплата получена",
  "message_type": "notification"
}

Ответ при успехе:

200 OK "Webhook received and queued for processing"

Отладка: Добавьте ?debug=true к URL для получения подробных логов.


2. Вебхук с обработкой через адаптер

Используется, когда внешний сервис отправляет данные в произвольном формате — нужен Python-скрипт для преобразования.

Схема работы:

Внешний сервис → POST-запрос (произвольный JSON)
    → Адаптер (Python) 
    → Формат NextBot 
    → Обработка в диалоге

Доступные данные в адаптере:

Переменная Тип Описание
args["request"] dict JSON-тело входящего запроса
args["headers"] dict HTTP-заголовки (content_type, user_agent)
args["meta"] dict Метаданные (agent_hash, url_token)

Что должен вернуть адаптер (result):

Поле Тип Обязательно Описание
dialog_id int ID диалога
text str Текст сообщения
message_type str Тип (по умолчанию input)
message_id str Уникальный ID

Пример адаптера: обработка платёжного вебхука:

request = args.get("request", {})

metadata = request.get("metadata", {})
dialog_id = metadata.get("dialog_id")
if not dialog_id:
    raise ValueError("dialog_id not found in metadata")

amount = request.get("amount", {})
amount_value = amount.get("value", "0")
currency = amount.get("currency", "RUB")

card_info = request.get("payment_method", {}).get("card", {})
last4 = card_info.get("last4", "****")

order_id = metadata.get("order_id", "—")

text = f"Оплата получена: {amount_value} {currency} (карта *{last4}). Заказ: {order_id}"

result = {
    "dialog_id": int(dialog_id),
    "text": text,
    "message_type": "output"
}

Возможности адаптера:


Прочие интеграции

Интеграция Описание
Google Calendar Создание событий в календаре
Yandex.Metrica Отправка данных о конверсиях
Custom API Универсальный HTTP-вызов к любому API