# Служебное

Операций в разделе: **21**.

> у 6 описание выведено из имени операции. Спецификация написана каталогом путей, прозы для них там не было; выдумывать поведение мы не стали. Подробнее — [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

## GET /v1/audit-log

действия администраторов

**Параметры:**

- `limit` — сколько вернуть, 1…1000, по умолчанию 50
- `cursor` — позиция продолжения из `next_cursor`
- `sort` — сортировка, минус для убывания
- `expand` — развернуть связи
- `fields` — вернуть только эти поля
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X GET 'https://school.example.com/api/v1/audit-log' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Accept: application/json'
```

**Коды ответа:** `200`, `401`, `403`, `429`, `500`, `503`.

> **Чего здесь нет:** состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## GET /v1/events

журнал событий системы

**Параметры:**

- `limit` — сколько вернуть, 1…1000, по умолчанию 50
- `cursor` — позиция продолжения из `next_cursor`
- `sort` — сортировка, минус для убывания
- `expand` — развернуть связи
- `fields` — вернуть только эти поля
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X GET 'https://school.example.com/api/v1/events' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Accept: application/json'
```

**Коды ответа:** `200`, `401`, `403`, `429`, `500`, `503`.

> **Чего здесь нет:** состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## GET /v1/events/{id}

Событие по идентификатору. <small>Фраза выведена из имени операции: в спецификации описания нет.</small>

**В пути:** `id`

**Параметры:**

- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X GET 'https://school.example.com/api/v1/events/{id}' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Accept: application/json'
```

Вместо `{…}` подставьте идентификатор объекта — про их формат в разделе [Формат](/api/format/#identifikatory).

**Коды ответа:** `200`, `401`, `403`, `404`, `429`, `500`, `503`.

> **Чего здесь нет:** состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## POST /v1/events/{id}/replay

переиграть событие (пересобрать вебхуки)

**В пути:** `id`

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X POST 'https://school.example.com/api/v1/events/{id}/replay' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

Вместо `{…}` подставьте идентификатор объекта — про их формат в разделе [Формат](/api/format/#identifikatory).

**Коды ответа:** `201`, `400`, `401`, `403`, `404`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## POST /v1/exports

Заказать выгрузку. Всегда задачей, никогда синхронно: выгрузка школы не помещается в время ответа. Возвращает идентификатор задачи; готовый файл забирается по нему, ссылка живёт ограниченное время.

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X POST 'https://school.example.com/api/v1/exports' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

**Коды ответа:** `201`, `400`, `401`, `403`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## POST /v1/exports/full

Заказать **полный архив школы**: курсы, уроки, люди, доступы, заказы, платежи, чеки, сообщения, файлы, настройки, журнал. Не входит ничего, что не принадлежит школе: секреты интеграций, пароли, наш лицензионный ключ. Этой операцией проверяется обещание «данные ваши и забираются целиком».

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X POST 'https://school.example.com/api/v1/exports/full' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

**Коды ответа:** `201`, `400`, `401`, `403`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## GET /v1/health

состояние системы и очередей

**Параметры:**

- `limit` — сколько вернуть, 1…1000, по умолчанию 50
- `cursor` — позиция продолжения из `next_cursor`
- `sort` — сортировка, минус для убывания
- `expand` — развернуть связи
- `fields` — вернуть только эти поля
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X GET 'https://school.example.com/api/v1/health' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Accept: application/json'
```

**Коды ответа:** `200`, `401`, `403`, `429`, `500`, `503`.

> **Чего здесь нет:** состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## POST /v1/imports

Загрузить людей из файла. `dry_run` **считает и показывает результат, не записывая ничего**: сколько создастся, сколько совпадёт, где ошибки. Совпадение ищется по контакту — сначала почта, затем телефон, — но не по имени: однофамильцы склеятся молча.

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X POST 'https://school.example.com/api/v1/imports' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

**Коды ответа:** `201`, `400`, `401`, `403`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## GET /v1/limits

текущие лимиты и расход

**Параметры:**

- `limit` — сколько вернуть, 1…1000, по умолчанию 50
- `cursor` — позиция продолжения из `next_cursor`
- `sort` — сортировка, минус для убывания
- `expand` — развернуть связи
- `fields` — вернуть только эти поля
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X GET 'https://school.example.com/api/v1/limits' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Accept: application/json'
```

**Коды ответа:** `200`, `401`, `403`, `429`, `500`, `503`.

> **Чего здесь нет:** состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## GET /v1/queues

очереди: длина, задержка, упавшие

**Параметры:**

- `limit` — сколько вернуть, 1…1000, по умолчанию 50
- `cursor` — позиция продолжения из `next_cursor`
- `sort` — сортировка, минус для убывания
- `expand` — развернуть связи
- `fields` — вернуть только эти поля
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X GET 'https://school.example.com/api/v1/queues' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Accept: application/json'
```

**Коды ответа:** `200`, `401`, `403`, `429`, `500`, `503`.

> **Чего здесь нет:** состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## POST /v1/queues/{queue}/jobs/{id}/retry

повторить упавшую задачу

**В пути:** `queue`, `id`

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X POST 'https://school.example.com/api/v1/queues/{queue}/jobs/{id}/retry' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

Вместо `{…}` подставьте идентификатор объекта — про их формат в разделе [Формат](/api/format/#identifikatory).

**Коды ответа:** `201`, `400`, `401`, `403`, `404`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## GET /v1/settings

Настройки школы. <small>Фраза выведена из имени операции: в спецификации описания нет.</small>

**Параметры:**

- `limit` — сколько вернуть, 1…1000, по умолчанию 50
- `cursor` — позиция продолжения из `next_cursor`
- `sort` — сортировка, минус для убывания
- `expand` — развернуть связи
- `fields` — вернуть только эти поля
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X GET 'https://school.example.com/api/v1/settings' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Accept: application/json'
```

**Коды ответа:** `200`, `401`, `403`, `429`, `500`, `503`.

> **Чего здесь нет:** состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## PATCH /v1/settings

настройки школы

> ⚠️ **Адрес предположительный.** В спецификации он не написан прямо — он выведен из сокращённой записи каталога («`POST, PATCH, DELETE`»). Когда API будет реализовано, адрес может оказаться другим. Не закладывайтесь на него в коде.

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X PATCH 'https://school.example.com/api/v1/settings' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

**Коды ответа:** `200`, `400`, `401`, `403`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## GET /v1/webhooks

Список подписок на события. <small>Фраза выведена из имени операции: в спецификации описания нет.</small>

**Параметры:**

- `limit` — сколько вернуть, 1…1000, по умолчанию 50
- `cursor` — позиция продолжения из `next_cursor`
- `sort` — сортировка, минус для убывания
- `expand` — развернуть связи
- `fields` — вернуть только эти поля
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X GET 'https://school.example.com/api/v1/webhooks' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Accept: application/json'
```

**Коды ответа:** `200`, `401`, `403`, `429`, `500`, `503`.

> **Чего здесь нет:** состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## POST /v1/webhooks

Создать подписку на события. <small>Фраза выведена из имени операции: в спецификации описания нет.</small>

> ⚠️ **Адрес предположительный.** В спецификации он не написан прямо — он выведен из сокращённой записи каталога («`POST, PATCH, DELETE`»). Когда API будет реализовано, адрес может оказаться другим. Не закладывайтесь на него в коде.

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X POST 'https://school.example.com/api/v1/webhooks' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

**Коды ответа:** `201`, `400`, `401`, `403`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## DELETE /v1/webhooks/{id}

Удалить подписку на события. <small>Фраза выведена из имени операции: в спецификации описания нет.</small>

> ⚠️ **Адрес предположительный.** В спецификации он не написан прямо — он выведен из сокращённой записи каталога («`POST, PATCH, DELETE`»). Когда API будет реализовано, адрес может оказаться другим. Не закладывайтесь на него в коде.

**В пути:** `id`

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X DELETE 'https://school.example.com/api/v1/webhooks/{id}' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

Вместо `{…}` подставьте идентификатор объекта — про их формат в разделе [Формат](/api/format/#identifikatory).

**Коды ответа:** `200`, `400`, `401`, `403`, `404`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## PATCH /v1/webhooks/{id}

Изменить подписку на события. <small>Фраза выведена из имени операции: в спецификации описания нет.</small>

> ⚠️ **Адрес предположительный.** В спецификации он не написан прямо — он выведен из сокращённой записи каталога («`POST, PATCH, DELETE`»). Когда API будет реализовано, адрес может оказаться другим. Не закладывайтесь на него в коде.

**В пути:** `id`

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X PATCH 'https://school.example.com/api/v1/webhooks/{id}' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

Вместо `{…}` подставьте идентификатор объекта — про их формат в разделе [Формат](/api/format/#identifikatory).

**Коды ответа:** `200`, `400`, `401`, `403`, `404`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## GET /v1/webhooks/{id}/deliveries

история доставок

**В пути:** `id`

**Параметры:**

- `limit` — сколько вернуть, 1…1000, по умолчанию 50
- `cursor` — позиция продолжения из `next_cursor`
- `sort` — сортировка, минус для убывания
- `expand` — развернуть связи
- `fields` — вернуть только эти поля
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X GET 'https://school.example.com/api/v1/webhooks/{id}/deliveries' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Accept: application/json'
```

Вместо `{…}` подставьте идентификатор объекта — про их формат в разделе [Формат](/api/format/#identifikatory).

**Коды ответа:** `200`, `401`, `403`, `404`, `429`, `500`, `503`.

> **Чего здесь нет:** состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## POST /v1/webhooks/{id}/deliveries/{deliveryId}/retry

Повторить одну доставку вручную. Повтор **не увеличивает счётчик автоматических попыток** и не сдвигает их расписание — это отдельная запись доставки.

**В пути:** `id`, `deliveryId`

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X POST 'https://school.example.com/api/v1/webhooks/{id}/deliveries/{deliveryId}/retry' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

Вместо `{…}` подставьте идентификатор объекта — про их формат в разделе [Формат](/api/format/#identifikatory).

**Коды ответа:** `201`, `400`, `401`, `403`, `404`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## POST /v1/webhooks/{id}/replay

Переиграть события заново — по диапазону дат, по списку типов или по обоим. **Уже доставленные переигрываются тоже**, если попали в выборку: получатель обязан быть идемпотентным (§8), и переигранная доставка помечена в конверте, чтобы её можно было отличить.

**В пути:** `id`

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X POST 'https://school.example.com/api/v1/webhooks/{id}/replay' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

Вместо `{…}` подставьте идентификатор объекта — про их формат в разделе [Формат](/api/format/#identifikatory).

**Коды ответа:** `201`, `400`, `401`, `403`, `404`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).

## POST /v1/webhooks/{id}/test

тестовая отправка

**В пути:** `id`

**Параметры:**

- `Idempotency-Key` — заголовок, защита от двойного выполнения
- `X-On-Behalf-Of` — заголовок, действие от лица пользователя

**Запрос:**

```bash
curl -X POST 'https://school.example.com/api/v1/webhooks/{id}/test' \
  -H 'Authorization: Bearer lms_live_a8f3c1e9d2b74a5f8e0c1d3b5a7f9e2c' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 6f1e2a34-9c8b-4d7e-a1f0-3b5c7d9e1f2a' \
  -H 'Accept: application/json'
```

Вместо `{…}` подставьте идентификатор объекта — про их формат в разделе [Формат](/api/format/#identifikatory).

**Коды ответа:** `201`, `400`, `401`, `403`, `404`, `409`, `422`, `429`, `500`, `503`.

> **Чего здесь нет:** тело запроса и состав полей ответа. Публичного API в продукте пока нет, выводить состав полей не из чего — см. [Чего в справочнике ещё нет](/api/reference/#chego-v-spravochnike-eshhe-net).

Как выглядит ошибка и что делать с каждым кодом — в разделе [Ошибки](/api/errors/).
