> For the complete documentation index, see [llms.txt](https://leadtex-help.gitbook.io/baza-znanij-leadtex/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://leadtex-help.gitbook.io/baza-znanij-leadtex/bloki/integracii/http-zapros.md).

# HTTP-запрос

## Интеграция чат-бота с внешними сервисами с использованием API

Укажите ваш URL, тип запроса и заголовки для обработки запроса.

Поддерживаются методы GET, POST, PUT, DELETE и PATCH.

<figure><img src="/files/tzNJTI5PWIA8tQ6gw6ZK" alt="http в боте"><figcaption><p>Блок "HTTP-запрос" в сценарии</p></figcaption></figure>

При использовании метода POST дополнительно появляется возможность передать body в запросе.

## Запрос

Для отправки в запросе всех пользовательских переменных, полученных на предыдущих шагах, контакт пользователя и данных crm систем, необходимо включить "Отправлять в запросе данные контакта".

<figure><img src="/files/JKDbdQuuyEJzrJVJ7DS1" alt="интеграции бот"><figcaption><p>Отправка данных контакта в запросе</p></figcaption></figure>

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

```javascript
{
    "variables": [
        {
            "name": "Город",
            "value": "Москва"
        }
    ],
    "contact": {
        "name": "Дмитрий",
        "messenger": "whatsapp",
        "phone": "79999999999"
    }
}
```

{% hint style="warning" %}
**Время ожидания соединения:** 3 секунды
{% endhint %}

## Отправка файла

Для отправки файла выберете метод POST.&#x20;

В разделе body выберете режим multipart/form-data и нажмите на кнопку "Добавить файл".

Выберете способ добавления файла:

* "Загрузить файл" — выберите файл на вашем устройстве. Файл будет загружен сразу и будет отправляться при каждой обработке данного HTTP-запроса.
* "Указать ссылку" — заполните key и url (в поле url можно указать ссылку на файл текстом или использовать локальную/глобальную переменную, которая содержит ссылку). Файл по ссылке будет загружаться в начале обработки блока HTTP-запроса и отправлен вместе с самим запросом.

{% hint style="warning" %}
Максимально допустимый размер передаваемого файла — 100 Мб.
{% endhint %}

<figure><img src="/files/LeT8FNGg9Xt6HQCFHEUQ" alt="интеграция бот" width="375"><figcaption><p>Добавление файла в настройках блока HTTP-запрос</p></figcaption></figure>

При выборе способа "**Указать ссылку**" можно указать переменную, в которую раннее в сценарии пользователем чат-бота был загружен файл. Файл из этой переменной будет передан в бинарном формате.

{% hint style="danger" %}
Ссылку из переменной с файлом предварительно нужно декодировать. Для этого в отдельном http-блоке выполните запрос — [Получить ссылку на медиафайл](https://docs.leadteh.ru/leadtex-api/rabota-s-api/dopolnitelnye-metody/ssylki-na-mediafaily)
{% endhint %}

<figure><img src="/files/BLMuJAxsgqsrlpLBF1jo" alt="отправка файлов бот" width="375"><figcaption><p>Загрузка файла по ссылке</p></figcaption></figure>

Если при загрузке файла по ссылке произошла ошибка —  выполнение всего сценария будет остановлено с выводом в чат поля с ошибкой.

{% hint style="info" %}
Отправка бинарных файлов используется, например, при передаче файлов в нейросеть для последующей обработки. &#x20;

При **интеграции с нейросетями** часто используется двухстадийный запрос (например, Gemini и Chat GPT): после первого запроса вы получаете file\_id, а затем отправляете этот file\_id с промптом.

Пример настройки http-блока для интеграции с Gemini.

![интеграция с gemini](/files/OssBkfMV8YAFKAUnehT9)
{% endhint %}

## Ответ

В случае успеха, сервер должен ответить кодом `200`, а тело должно содержать текст для пользователя.

Текст должен быть форматирован под стандарты WhatsApp. Форматирование под другие мессенджеры происходит автоматически на нашем сервере.

В случае ошибки (например валидации), вы можете сообщить пользователю об этом. Для этого сервер должен ответить кодом `422`, а тело должно содержать сообщение для пользователя.

Для записи кода ответа включите позицию **"Записать код ответа в переменную"**.

Добавили возможность **выводить тело ответа в чат** для дальнейшей работы с полученным ответом.

<figure><img src="/files/iAjyxBxnuklQJMxbf3s7" alt="отладка интеграции"><figcaption><p>Вывод тела ответа в чат</p></figcaption></figure>

{% hint style="warning" %}
**Время получения ответа можно регулировать** от 5 до 60 секунд
{% endhint %}

<figure><img src="/files/z578DR2GjxTi1cciv8ch" alt="интеграция бот"><figcaption><p>Timeout для получения ответа</p></figcaption></figure>

**Записать ответ json в переменные** позволяет записывать полученный ответ от сервера в переменные для дальнейшей работы с ними.

<figure><img src="/files/0N08xFXAeBvGxAIpKOR6" alt="интеграция бот"><figcaption><p>Запись ответа в json переменные</p></figcaption></figure>

#### Интеграция с Telegram API в чат-боте

Практическое руководство по настройке HTTP блоков для работы с Telegram API.

{% tabs %}
{% tab title="ВКонтакте" %}
{% embed url="<https://vk.com/video-38689596_456239959>" %}
HTTP запрос и API Telegram
{% endembed %}
{% endtab %}

{% tab title="YouTube" %}
{% embed url="<https://youtu.be/sj2hIEcRG3A>" %}
HTTP запрос и API Telegram
{% endembed %}
{% endtab %}
{% endtabs %}

Так же блок позволяет проводить **обработку ответа с помощью JavaScript** и дает возможность "дописать" свой скрипт для расширения функционала вашего бота.

<figure><img src="/files/vphSat96UK7iQsqa88V6" alt="внешние интеграции с ботом"><figcaption><p>Обработка ответа с помощью JavaScript в HTTP-блоке</p></figcaption></figure>

#### Создание умного бота с использованием JavaScript и HTTP запросов

Комплексный кейс разработки бота для фильтрации фильмов с использованием JavaScript логики и HTTP интеграций.

{% tabs %}
{% tab title="ВКонтакте" %}
{% embed url="<https://vk.com/video-38689596_456239930>" %}
Поиск фильмов в Телеграм боте
{% endembed %}
{% endtab %}

{% tab title="YouTube" %}
{% embed url="<https://youtu.be/1sx2QvRZhH8>" %}
Поиск фильмов в Телеграм боте
{% endembed %}
{% endtab %}
{% endtabs %}

#### HR автоматизация: подключение Avito API для поиска персонала

Видео с разбором интеграции Avito API в чат-бот для автоматизации HR-процессов. Узнайте, как создать систему поиска и отбора кандидатов через популярную площадку объявлений.

{% tabs %}
{% tab title="ВКонтакте" %}
{% embed url="<https://vkvideo.ru/video-38689596_456240245>" %}
Парсинг резюме с Avito в Телеграм
{% endembed %}
{% endtab %}

{% tab title="YouTube" %}
{% embed url="<https://youtu.be/iz1bl_Vhqj0?si=glScXdhmjjq-nuFW>" %}
Парсинг резюме с Avito в Телеграм
{% endembed %}
{% endtab %}
{% endtabs %}

Готовый шаблон для внедрения проекта "Интеграция Авито и Телеграм бота | Парсинг резюме для HR" в один клик:&#x20;

{% embed url="<https://app.leadteh.ru/templates/65/bots/672483?utm_source=bz&utm_medium=templates>" %}

#### Telegram Gift: выдача подарков в Телеграм боте

Пошаговое руководство по подключению Telegram API для выдачи подарков в боте.

{% tabs %}
{% tab title="ВКонтакте" %}
{% embed url="<https://vkvideo.ru/video-38689596_456240326>" %}
Отправка подарков в Телеграм боте
{% endembed %}
{% endtab %}

{% tab title="YouTube" %}
{% embed url="<https://youtu.be/-4PIwB3w5rQ?si=pF4BHMvbjk58jEjS>" %}
Отправка подарков в Телеграм боте
{% endembed %}
{% endtab %}
{% endtabs %}

Готовый шаблон для внедрения проекта "ВСЁ, что нужно знать о ПОДАРКАХ в Telegram за 15 МИНУТ" в один клик:&#x20;

{% embed url="<https://app.leadteh.ru/templates/86/bots/754834?utm_source=bz&utm_medium=templates>" %}

{% content-ref url="/pages/oVey4f8eA3aG1EwX7ysI" %}
[Примеры интеграций](/baza-znanij-leadtex/bloki/specialnye/http-zapros/primery-integracii.md)
{% endcontent-ref %}

**Серия уроков с интеграцией нейросетей в чат-боты:**&#x20;

{% embed url="<https://help.leadteh.ru/baza-znanij-leadtex/bystryi-start/keisy-na-praktike/boty-s-ii>" %}

> Бонус для новых пользователей и возможность получить 500 рублей баллами в\
> подарок 🎁
>
> \
> \- Регистрируйтесь на LEADTEX\
> \- Создавайте и тестируйте первый проект\
> \- Не пропускайте специальный оффер.\
> [**Получить подарок 👈**](https://leadteh.ru/?utm_source=bz)
