# Custom API

### Настройка

Этот функционал позволяет настраивать и отправлять запросы для передачи данных к вашей API системе. Вы можете указать метод запроса, адрес, параметры, заголовки и тело запроса.

{% hint style="info" %}
**Для правильной настройки запросите данные у ваших разработчиков: API endpoint, GET или POST метод.**
{% endhint %}

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

**1. Метод запроса**

Выберите HTTP-метод для вашего запроса. GET или POST метод. В данном примере используется `POST`, который предназначен для отправки данных на сервер.

**2. Адрес запроса (URL)**

Укажите полный URL API-endpoint, к которому будет отправлен запрос.

**3. Параметры вызова (params)**

Добавьте параметры, которые будут переданы в URL (например, для GET-запросов).

* Нажмите на кнопку "Новый параметр" чтобы добавить новый параметр.
* Укажите название и значение параметра.
* В качестве значения можно использовать текст, параметр функции, данные пользователя или пользовательскую переменную.

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

После выполнения вашей функции, система автоматически:

1. Соберет указанные данные (из параметра функции `num_cubes`)
2. Отправит их на указанный API endpoint
3. Внешний сервис получит эти данные в структурированном формате

**4. Заголовки запроса (headers)**

Добавьте необходимые заголовки, например такие как `Content-Type` или `Content-Length`

* Нажмите на кнопку "Новый параметр", чтобы добавить заголовок.
* Укажите название и значение заголовка.

**Пример:**

<figure><img src="/files/1fDhmvhwN5tYniXEeYD8" alt=""><figcaption></figcaption></figure>

**5. Тело запроса (body)**

Здесь указываются данные, которые будут отправлены на сервер (обычно для POST-запросов).

**Добавление поля:**

1. Нажмите на `Вложенный объект`, если нужно создать сложную структуру (например, объект внутри объекта).
2. В поле **"Название поля"** введите имя параметра (например, `num_cubes`).
3. В поле **"Тип значения"** выберите источник значения. Например:
   * `параметр из функции` — значение будет взято из переменной функции.
   * `текст` — можно вручную указать значение.
   * `данные пользователя` - можно выбрать необходимые параметры из списка.
   * `пользовательская переменная` — можно выбрать значение из пользовательской переменной агента или диалога.

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

Если вы заполните все поля (метод запроса, адрес, параметры, заголовки и тело запроса), то после успешного выполнения запроса данные автоматически отправятся в вашу систему.

### Тестирование API

С помощью этого функционала вы можете проверить работу своего API, не запуская основные функции ИИ-бота. Всё, что нужно:

1. Укажите **метод запроса** (GET, POST).
2. Введите **адрес API** endpoint.
3. Добавьте **параметры, заголовки и тело запроса** (если нужно).
4. Нажмите кнопку **"Запустить тест"**.

Результат запроса отобразится сразу после выполнения статусом "Успешно" или "Ошибка".\
Удобно и быстро!


---

# Agent Instructions: 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:

```
GET https://doc.nextbot.ru/functional/functions/sending-result/custom-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
