# HTTP-запрос

Отправляет запрос к внешнему API и раскладывает ответ по переменным: передать заказ в CRM, проверить промокод, получить статус доставки.

![Настройки блока «HTTP-запрос»](https://support.watbot.ru/_media/ru/02-mini-apps/_images/http.webp?v=1791781230)

## Настройки

- **«Адрес»** и метод: GET, POST, PUT, PATCH, DELETE. В адрес можно подставлять переменные: `{{ имя }}`.
- **«Таймаут, секунд»** — сколько ждать ответа. По умолчанию 15. Запрос с сервера ждёт не дольше 30 секунд, даже если в поле больше.
- **«Где выполнять запрос»**:
  - «На сервере» — адрес и заголовки остаются на сервере, ключи API в них в безопасности;
  - «На устройстве клиента» — запрос уйдёт из браузера или мессенджера человека. Сервис должен разрешать такие запросы (CORS), а адрес и заголовки человек сможет увидеть — не кладите в них секретные ключи. Ответ разбирается по переменным так же, как у запроса с сервера.
- **«Заголовки»** — до 30.
- **«Тело запроса»**: «Нет», JSON, «Форма» или «Текст».
- **«Ответ»**: «Ответ целиком в переменную», «Код ответа в переменную» и «Разбор ответа» — путь в JSON, например `data.user.name`, в переменную. Разборов — до 50.

У запроса с сервера есть «Сервер запроса»: «По умолчанию», «Европа» или «SOCKS5-прокси» — ваш прокси с хостом, портом, пользователем и паролем. Прокси во внутренней сети не подойдёт.

## Выходы

- **«Успешно»** — сервис ответил кодом 200–299.
- **«Ошибка»** — другой код ответа, сервис не ответил вовремя или адрес не прошёл проверку.

## Особенности

- Запросы на локальные и внутренние адреса запрещены — нужен публичный адрес сервиса.
- Неудачные запросы попадают в [журнал ошибок](https://support.watbot.ru/mini-apps/users#журнал-ошибок).
- Код ответа, записанный в переменную, можно проверить следующим блоком [«Условие»](https://support.watbot.ru/mini-apps/blocks/logic/condition).
