> For the complete documentation index, see [llms.txt](https://doc.nextbot.ru/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.nextbot.ru/functional/integrations/vebkhuki/vebkhuk-po-pravilam-nextbot.md).

# Вебхук по правилам Nextbot

Способ подключения "**Вебхук по правилам Nextbot"** можно использовать, когда внешний сервис может отправлять вебхук в предопределенном JSON-формате. Это удобный способ интеграции, не требующий написания скрипта-адаптера.

<h2 align="center">Конфигурация</h2>

### Ссылка вебхука

URL-адрес (endpoint) для получения вебхука находится в поле "Ссылка вебхука" на главной странице интеграции.\
Используйте этот URL для отправки POST-запросов с данными вебхука.

**Пример:**

```http
https://app.nextbot.ru/api/webhooks/v1/682db757-7981-4bd4-8bb4-61bd1665a29/923ef269bf224bacadafb5ab05a2e75
```

Если необходимо обновить токен (например, при компрометации старого), нажмите кнопку "Обновить токен". Прежний URL станет недействительным.

### Формат входящего JSON

Отправляйте POST-запрос с JSON-телом в указанном формате. Через вебхуки можно передавать не только текст, но и изображения, документы и аудио.

| Поле                             | Тип                   | Статус          | Описание                                                                                                                                                                                                                                                                                      |
| -------------------------------- | --------------------- | --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `dialog_id`                      | `number`              | **обязательно** | ID существующего диалога в Nextbot                                                                                                                                                                                                                                                            |
| `content_type`                   | `string`              | опционально     | Тип контента. Если не указан, определяется автоматически по файловым полям (или `text` по умолчанию). Возможные значения: `text` — текстовое сообщение; `image` — сообщение с image\_url/image\_urls; `document` — сообщение с document\_url/document\_urls; `audio` — сообщение с audio\_url |
| `text`                           | `string`              | опционально     | Текст сообщения. Обязателен для `content_type=text`, для файловых сообщений — опционален (подпись/контекст)                                                                                                                                                                                   |
| `image_url` / `image_urls`       | `string` / `string[]` | опционально     | URL изображения (или массив `image_urls`) для `content_type=image`                                                                                                                                                                                                                            |
| `document_url` / `document_urls` | `string` / `string[]` | опционально     | URL документа (или массив `document_urls`) для `content_type=document`                                                                                                                                                                                                                        |
| `audio_url`                      | `string`              | опционально     | URL аудиофайла для `content_type=audio`                                                                                                                                                                                                                                                       |
| `message_type`                   | `string`              | опционально     | Тип сообщения. По умолчанию: `input`. См. раздел «Типы сообщений» ниже                                                                                                                                                                                                                        |
| `message_id`                     | `string`              | опционально     | Уникальный ID сообщения. Если не указан — генерируется автоматически (UUID)                                                                                                                                                                                                                   |

<figure><img src="/files/wd4d15l5DrUl1XJeEhiD" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Для включения режима отладки добавьте параметр `?debug=true` к URL вебхука. В ответе вы получите подробные логи выполнения запроса.
{% endhint %}

### Типы сообщений (message\_type)

В зависимости от значения `message_type` сообщение будет обработано по-разному. Доступны четыре типа, каждый из которых определяет, как сообщение появится в диалоге:

{% tabs %}
{% tab title="input" %}
Имитация входящего сообщение от клиента (не будет отправлено клиенту в диалог)

<div align="left"><figure><img src="/files/qjSOReZYDOjdozKbTjdW" alt=""><figcaption></figcaption></figure></div>
{% endtab %}

{% tab title="forwarded\_output" %}
Текст будет отправлен клиенту в мессенджер как обычное сообщение от ИИ-Агента

<div align="left"><figure><img src="/files/nZWTAkEhd1MHhcwUmukG" alt=""><figcaption></figcaption></figure></div>
{% endtab %}

{% tab title="output" %}
Текст сохраняется как отправленное сообщение оператора. Используется только для контекста ИИ-агента и не отображается клиенту

<div align="left"><figure><img src="/files/i2yNbqQLjOBFo17Bv5Et" alt=""><figcaption></figcaption></figure></div>
{% endtab %}

{% tab title="notification" %}
Текст придёт как системное уведомление (не будет отправлено клиенту в диалог)

<div align="left"><figure><img src="/files/hloAr8yeQVOujPl5hc84" alt=""><figcaption></figcaption></figure></div>
{% endtab %}
{% endtabs %}

<h2 align="center">Отправка тестового запроса</h2>

Для примера используем JSON с типом сообщения `message_type = "notification"`:

```
{
  "dialog_id": 10177062,
  "text": "проверка вебхука",
  "message_type": "notification"
}
```

Пример отправки изображения с подписью:

```
{
  "dialog_id": 10177062,
  "content_type": "image",
  "image_url": "https://example.com/photo.jpg",
  "text": "Подпись к изображению"
}
```

Для нескольких изображений используйте `image_urls` (массив URL). Аналогично для документов — `document_url` или `document_urls`; для аудио — `audio_url`.

Отправим на наш URL и получим ответ:

<mark style="color:green;">200 OK</mark> "Webhook received and queued for processing" — значит вебхук успешно отправлен

<figure><img src="/files/B5VUbYkQG5cAZfNPByf8" alt=""><figcaption></figcaption></figure>

На скриншоте показан результат обработки вебхука: в диалоге появилось входящее сообщение от клиента, как если бы оно было отправлено через обычный канал связи.

<figure><img src="/files/H3tm3srGEhcdzKA7SCEf" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://doc.nextbot.ru/functional/integrations/vebkhuki/vebkhuk-po-pravilam-nextbot.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
