Цепочки

Webhook

Кратко

Блок WEBHOOK отправляет GET- или POST-запрос на внешний URL с параметрами из переменных цепочки и сохраняет ответ в {{webhookResult}} и {{webhook_N}}.

  • Методы: POST (по умолчанию) и GET; только HTTP/HTTPS
  • Таймаут 15 секунд; при ошибке блок сохраняет { error } и цепочка продолжается
  • includeUserData добавляет client_name, phone, email, client_identifier, tags
  • includeChainData добавляет last_message, ai_result, channel_type, chain_id, python_result, integration_result
  • includeDialog добавляет поле dialog с полной перепиской
  • Ответ: {{webhookResult}} как { status, body } или { error }, {{webhook_N}} как строка тела
На этой странице

Блок отправляет HTTP-запрос на указанный URL, ждёт ответ до 15 секунд и сохраняет его в контекст цепочки. Так цепочка обменивается данными с CRM, 1С, интернет-магазином или любым другим API.

К запросу можно автоматически добавить данные клиента, данные цепочки и полную историю диалога, а свои параметры заполнить переменными.

#Настройки

ПолеОписание
URLАдрес, на который уходит запрос
МетодGET или POST
ПараметрыПары ключ-значение, значения поддерживают переменные
Передать данные клиентаДобавить к запросу имя, телефон, email, идентификатор и теги клиента
Передать данные цепочкиДобавить последнее сообщение, результат AI, тип канала и другие поля
Передать историю диалогаДобавить поле dialog с полным текстом переписки

Когда какой метод:

МетодНазначение
POST (по умолчанию)Передать данные: создать запись, обновить, отправить информацию
GETЗапросить данные: статус, наличие, справочник

#Автоматические поля

Данные клиента (includeUserData):

ПолеЗначение
client_nameИмя клиента
phoneТелефон
emailEmail
client_identifierУникальный идентификатор клиента
tagsТеги клиента

Данные цепочки (includeChainData):

ПолеЗначение
last_messageПоследнее сообщение
ai_resultРезультат AI
channel_typeТип канала
chain_idИдентификатор цепочки
python_resultРезультат Python
integration_resultРезультат интеграции

История диалога (includeDialog): поле dialog с полной перепиской.

Свои параметры добавляются парами ключ-значение, в значениях работают переменные:

КлючЗначение
order_id{{lastMessage}}
client{{name}}
ai_summary{{aiResult}}

#Пример

Статус заказа из CRM:

text
Отправка сообщения: «Напишите номер заказа»
Ожидание ответа
Webhook: POST https://api.myshop.com/orders/status
  Параметр: order_id = {{lastMessage}}
Отправка сообщения: «Статус вашего заказа: {{webhook_3}}»

Запись в Google Sheets через Apps Script:

text
AI-обработка: «Извлеки имя и телефон»
Webhook: POST https://script.google.com/...
  Передать данные клиента: включено
  Параметр: ai_result = {{aiResult}}

#Что сохраняется в контексте

ПеременнаяЗначение
{{webhookResult}}Полный ответ: объект { status, body } или { error }
{{webhook_N}}Тело ответа строкой, N: номер блока

Разобрать JSON из ответа удобно в блоке Python-код.

#Ограничения

  • Таймаут 15 секунд. Если сервер не ответил, блок сохраняет ошибку в {{webhookResult}} и цепочка продолжается.
  • Только HTTP и HTTPS, другие протоколы не поддерживаются.