Действие: HTTP-запрос к API
Действие «HTTP-запрос» обращается к внешней системе по её API прямо из сценария: проверить остаток на складе, узнать статус заказа, отправить данные в свою систему. Ответ можно разобрать в переменные и дальше ветвить сценарий или показать результат клиенту.
Параметры запроса
| Параметр | Описание |
|---|---|
| Метод | GET, POST, PUT, PATCH, DELETE — как требует API внешней системы. |
| URL | Адрес эндпоинта. Можно подставлять переменные, например https://api.example.com/order/{{order_id}}. |
| Заголовки (Headers) | Пары «ключ — значение», например Authorization или Content-Type. |
| Тело (Body) | Данные запроса для POST/PUT/PATCH — обычно JSON. |
Переменные и секреты
- В URL, заголовках и теле подставляются переменные в фигурных скобках:
{{phone}},{{order_id}}. - Токены и ключи подставляются через секреты —
{{secret.имя}}. Сами ключи не хранятся в открытом виде в графе сценария и не видны в логах.
Никогда не вписывайте API-ключи прямо в заголовки текстом. Сохраните их как секрет и подставляйте
через {{secret.имя}} — это безопаснее и переживёт смену ключа без правки
сценария.
Разбор ответа
Ответ внешней системы можно разобрать в переменные: указать, какое поле ответа в какую переменную положить. Дальше эти переменные используются в «Условии» (ветвление по результату) или в тексте сообщения (показать клиенту).
Защита от SSRF
Действие защищено от SSRF: запросы к внутренним и служебным адресам блокируются, проверка идёт в несколько слоёв (статический разбор адреса и проверка при подключении, включая редиректы). Обращаться можно только к публичным внешним API.
Похожее действие: «Отправить вебхук»
Рядом есть действие «Отправить вебхук» — оно делает POST с карточкой подписчика (его поля) на ваш URL. Это упрощённый вариант, когда не нужно собирать тело вручную: достаточно указать адрес, куда отдать данные клиента.
Как настроить
Добавьте ноду «Действия»
На канвасе добавьте шаг «Действия» и выберите «HTTP-запрос».
Укажите метод и URL
Выберите метод и впишите адрес эндпоинта. Подставьте переменные через
{{переменная}}.Добавьте заголовки и тело
Заполните заголовки (авторизацию — через
{{secret.имя}}) и тело запроса, если оно нужно.Разберите ответ в переменные
Сопоставьте поля ответа с переменными бота, чтобы использовать их дальше.
Обработайте результат
Поставьте после ноды «Условие» или «Сообщение», чтобы среагировать на ответ.
Когда применять
- Статус заказа. GET-запрос в вашу систему по
{{order_id}}, ответ — в переменную, а сообщение показывает клиенту статус доставки. - Проверка наличия. Перед оформлением бот спрашивает API об остатке товара и ветвит сценарий: есть в наличии или предложить аналог.
- Передача заявки. POST с данными клиента в стороннюю систему учёта сразу после заполнения формы.