Webhooks & API — приём данных извне
С помощью webhook внешний сервис может обновлять данные пользователя, менять status чата, переключать шаги Flow?

С помощью webhook внешний сервис может обновлять данные пользователя, менять status чата, переключать шаги Flow, записывать значения в Custom Fields, добавлять или удалять tags, управлять диалогом из внешней системы.
Проще говоря
внешний сервис отправляет данные в Chatterfy, а не бот отправляет данные наружу.
Это противоположность шагу: Webhook — отправка данных наружу Там уже сам бот отправляет запросы во внешние системы.
Когда использовать Webhooks & API
Webhooks & API нужны, когда внешний сервис должен обновлять данные внутри Chatterfy.
Например:
- платёжная система сообщает об оплате
- внешний сервис проверяет пользователя
- нужно переключить пользователя на другой шаг Flow
- нужно записать данные в карточку клиента
- нужно автоматически выдать тег или передать чат оператору
Что можно делать через webhook
Возможность | Что делает |
|---|---|
Обновление пользователя | Обновляет данные чата |
Изменение status | Переводит чат в auto, manual или blocked |
Переключение шага | Переводит пользователя на нужный step_id |
Обновление Custom Fields | Записывает данные в поля пользователя |
Добавление тегов | Назначает tags |
Удаление тегов | Удаляет tags |
Добавление данных до первого сообщения | Позволяет заранее передать нужные значения |
Использование данных в Flow и AI | Переданные значения можно использовать в сообщениях, условиях и AI |
Как это работает
Логика работы простая:
Шаг | Что происходит |
|---|---|
1 | Вы создаёте webhook-ссылку |
2 | Внешний сервис отправляет HTTP GET-запрос |
3 | Chatterfy получает параметры |
4 | Система обрабатывает webhook |
5 | Данные обновляются внутри CRM |
Все запросы работают через:
HTTP GET + query stringgicon:TriangleAlert
POST и JSON-body сейчас не поддерживаются.
Важное про переменные
В Chatterfy переменные используются в формате двойных фигурных скобок:
{{variable}}Такой формат применяется в сообщениях, ссылках, AI-инструкциях, webhook-настройках.
Примеры:
{{name}} · {{chatId}} · {{username}} · {{fields.refId}} · {{tracker.clickid}} · {{variables.reglink}}gicon:TriangleAlert
Используйте именно двойные фигурные скобки {{ }}. Одинарные скобки { } не используются для переменных Chatterfy.
Создание webhook-ссылки
Откройте:
Bot Settings → Webhooks & API

Далее:
- Нажмите Add Webhook
- Нажмите Save

Выберите параметры.

После сохранения создаётся уникальная webhook-ссылка.

Пример:
https://api.chatterfy.ai/api/postbacks/{POSTBACK_ID}/bot-postbackPOSTBACK_ID
POSTBACK_ID — уникальный идентификатор webhook.
Пример:
https://api.chatterfy.ai/api/postbacks/019df6e7-54fe-7bc6-9024-88bebc27fc78/bot-postbackКаждый webhook имеет свой уникальный ID.
gicon:Lightbulb
Можно создавать несколько webhook для одного бота.
Например: отдельный webhook для CRM, отдельный webhook для партнёрки, отдельный webhook для платёжной системы. Так проще управлять integration-сценариями.
Параметры webhook
Параметры передаются после символа ?.
Пример:
?status=auto&step_id=019decee-8444-76ff-b068-357c8418c23eПолный пример:
https://api.chatterfy.ai/api/postbacks/019df6e7-54fe-7bc6-9024-88bebc27fc78/bot-postback? status=auto&step_id=019decee-8444-76ff-b068-357c8418c23egicon:TriangleAlert
Набор параметров зависит от вашего сценария.
chat_id
Во многих webhook-сценариях используется параметр:
chat_idПример:
?chat_id=1227280chat_id позволяет Chatterfy определить, какого пользователя нужно обновить.
Как получить chat_id:
- из CRM
- из внешнего сервиса
- через предыдущие webhook-сценарии
gicon:TriangleAlert
В некоторых сценариях webhook уже связан с конкретным пользователем, поэтому набор обязательных параметров может отличаться.
Управление шагом Flow
step_id
Параметр step_id используется для переключения пользователя на другой шаг Flow.
Пример:
?step_id=019decee-8444-76ff-b068-357c8418c23eили:
?chat_id=1227280&step_id=019decee-8444-76ff-b068-357c8418c23eГде взять step_id
Откройте:
Flow Settings
Выберите нужный step и скопируйте его ID.
Изменение status чата
Параметр status изменяет статус диалога.
Значение | Что делает |
|---|---|
auto | Чат обрабатывается ботом |
manual | Чат переводится оператору |
blocked | Чат блокируется |
Пример:
?status=manualили:
?chat_id=1227280&status=manualРабота с tags через webhook
Через webhook можно автоматически назначать теги и удалять теги.
assign_tags
Добавляет тег пользователю.
Пример:
?assign_tags=VIPили:
?assign_tags=VIP,FDremove_tags
Удаляет тег у пользователя.
Пример:
?remove_tags=Coldили:
?remove_tags=Old,Testgicon:TriangleAlert
Теги должны быть заранее созданы в: Tags — теги для сегментации Webhook не создаёт tags автоматически.
Custom Fields через webhook
Для этого используется формат:
fields. ключ=значениеПример:
?fields.refId=12345или:
?fields.userBalance=5000Что произойдёт:
- fields.refId сохранит 12345
- fields.userBalance сохранит 5000
gicon:TriangleAlert
Custom Field должен быть заранее создан в разделе Custom Fields. Webhook не создаёт поля автоматически.
Использование переменных
Все данные можно использовать внутри сообщений, AI, URL, Flow, Conditions.
Формат:
{{переменная}}Системные переменные
Переменная | Что подставляет |
|---|---|
{{chatId}} | Telegram ID |
{{username}} | username |
{{name}} | Имя пользователя |
{{createdAt}} | Дата создания чата |
Custom Fields в сообщениях
Custom Fields используются так:
{{fields. ключ}}Пример:
{{fields.refId}}Tracker-переменные
Если пользователь пришёл через Tracker, доступны:
Переменная | Что подставляет |
|---|---|
{{tracker.clickid}} | clickid пользователя |
{{tracker.sub1}} | Значение sub1 |
{{tracker.ad_name}} | Название рекламы |
Также доступны другие tracker-параметры.
Пример ссылки:
https://partner.com/signup?sub1={{tracker.clickid}}После подстановки:
https://partner.com/signup?sub1=test123gicon:TriangleAlert
Tracker-переменные работают только для пользователей из Tracker-кампаний. Для органического трафика многие переменные будут пустыми.
Примеры использования
Внешняя система сообщает о депозите
Система отправляет webhook:
?chat_id=1227280&status=manual&assign_tags=FDПосле этого:
- чат переводится оператору
- пользователю назначается тег FD
Передача clickid
Пользователь получает ссылку:
https://partner.com/?clickid={{tracker.clickid}}Партнёрка потом возвращает этот же clickid обратно в Chatterfy.
Персонализация сообщений
Сообщение:
Привет, {{name}}!Пользователь увидит своё имя.
Внешняя проверка пользователя
Сценарий:
- бот отправляет запрос во внешний сервис
- внешний сервис проверяет пользователя
- сервис отправляет webhook обратно в Chatterfy
- пользователь переключается на нужный step
Что важно учитывать
gicon:CircleAlert
Webhook-ссылка даёт доступ к управлению чатами.
Не публикуйте её: в открытых доступах, в публичных чатах, в сторонних сервисах без необходимости.
Webhooks работают только через GET
Сейчас Webhooks & API работают только через:
HTTP GETPOST и JSON-body не поддерживаются.
Tracker-переменные могут быть пустыми
Если пользователь пришёл не через Tracker-кампанию, многие переменные вида:
{{tracker.ключ}}могут отсутствовать.
Как протестировать webhook
Самый простой способ — открыть ссылку в браузере.
Пример:
https://api.chatterfy.ai/api/postbacks/{POSTBACK_ID}/bot-postback? chat_id=1227280status=manual&assign_tags=VIPПосле открытия запроса:
- status изменится
- tags обновятся
Для тестирования также подходят:
- Postman
- Insomnia
- curl
- любые HTTP-клиенты
Что должно получиться
После настройки Webhooks & API внешние сервисы смогут управлять диалогами, CRM сможет обновлять данные пользователей, данные будут автоматически попадать в Flow и AI, появится двусторонняя интеграция с внешними системами.
Если что-то не работает
Webhook ничего не меняет
Проверьте:
- правильный ли POSTBACK_ID
- сохранён ли webhook
- правильно ли написаны параметры
- существует ли пользователь
- не допущена ли ошибка в URL
Custom Field не обновляется
Проверьте:
- создано ли поле заранее
- совпадает ли ключ поля
- нет ли ошибки в fields.*
Tags не назначаются
Проверьте:
- созданы ли теги заранее
- правильно ли написан tag name
- нет ли ошибки в assign_tags или remove_tags
step_id не работает
Проверьте:
- правильный ли ID шага
- существует ли step
Tracker-переменные пустые
Скорее всего пользователь пришёл не через ссылку из кампании.
Частые вопросы
Связанные статьи
Эта статья была полезна?







