# Каталог ресурсов

Всего операций: **226** в 9 разделах. Машинная спецификация — [/openapi.draft.json](/openapi.draft.json).

> ⚠️ **Из 226 операций у 60 адрес предположительный** — он выведен из сокращённой записи спецификации, а не написан в ней прямо. Такие операции помечены на своих страницах. Именно поэтому раздел называется «Проект API», а файл — `openapi.draft.json`.

> **У 93 операций описание выведено из имени, у 18 его пока нет вовсе.** Спецификация написана каталогом путей: прозы для них там не было. Где назначение следует из имени — фраза выведена по правилу «что операция возвращает или что меняет», и ни слова о том, как она это делает. Где не следует — описание пишется отдельно, и до тех пор строки нет. **Адреса и параметры от этого не изменятся.**

| Раздел | Операций |
|---|---|
| [Пользователи и доступ](/api/reference/polzovateli-i-dostup/) | 31 |
| [Обучение](/api/reference/obuchenie/) | 57 |
| [Коммерция](/api/reference/kommerciya/) | 45 |
| [CRM, сегменты, сообщения](/api/reference/crm-segmenty-soobshheniya/) | 25 |
| [Сценарии (автоматизации)](/api/reference/scenarii-avtomatizacii/) | 12 |
| [Вебинары](/api/reference/vebinary/) | 15 |
| [Сайт и файлы](/api/reference/sajt-i-fajly/) | 17 |
| [Аналитика](/api/reference/analitika/) | 5 |
| [Служебное](/api/reference/sluzhebnoe/) | 19 |

## Чего в справочнике ещё нет

Сказать это прямо честнее, чем показать пустое место.

**Работающего API нет.** По ADR-057 справочник выводится из OpenAPI, а OpenAPI — из zod-валидаторов на эндпоинтах. Публичного API в продукте пока не существует: маршрутов `/v1/*` нет ни одного, реализация назначена после среза 2 (ADR-054). Выводить поля не из чего, и проверить адреса тоже не обо что.

Чтобы справочник не был при этом пустым, пути и назначение операций собраны машинным разбором проектной спецификации `03-data/api-spec.md`. Что из этого следует:

- **пути, методы и коды ответа** — это то, что спроектировано, и им можно верить как проекту, но не как работающему коду;
- **60 адресов выведены эвристикой** из сокращений вида «`POST, PATCH, DELETE`» и помечены на своих страницах словами «адрес предположительный»;
- **у 93 операций описание выведено из имени** по правилу «что возвращает или что меняет» — такая фраза не содержит ни одного утверждения о поведении, которого нет в спецификации, и помечена `x-lms-derived-summary`;
- **у 18 операций описания нет вовсе** — из имени оно не следует (`replay`, `pause`, `grant-retry`), а угадывать поведение мы не станем;
- **тела запросов и ответов** не показаны нигде — вместо выдуманного примера стоит пометка «чего здесь нет»;
- **форма ошибки** описана полностью и по-настоящему: она задана в спецификации целиком, см. [Ошибки](/api/errors/).

Как только появятся валидаторы, `openapi.json` начнёт собираться из них, а эти страницы пересоберутся сами — их адреса и заголовки не изменятся.
