OpenAPI
Шлюз отдаёт документ OpenAPI 3.1 по адресу:
GET https://api.rolchat.com/openapi.jsonОн собирается при запуске шлюза из документов, которые предоставляет каждый сервис: пути и схемы объединяются, дубликаты получают пространство имён сервиса, а все пути, помеченные как внутренние (только для mesh), удаляются. Описания добавляются сервис за сервисом; семейства, которые ещё не добавлены, есть в справочнике эндпоинтов, но отсутствуют в документе. Пока документ не охватывает весь API, считайте справочник эндпоинтов авторитетным списком семейств, а страницу соглашений - авторитетным контрактом.
Каждый контракт RolChat, в документе или нет, следует соглашениям: конверт ответа, курсорная пагинация, ключи идемпотентности, заголовки лимитов запросов и коды ошибок.