Для улучшения работы сайта мы используем файлы cookies. Оставаясь на сайте, вы соглашаетесь с политикой обработки персональных данных.

/sys/internal/specs/openapi

Конечная точка /sys/internal/specs/openapi используется для генерации OpenAPI документа для смонтированных бэкендов. Ответ соответствует спецификации OpenAPI V3, а имена путей совпадают с именами точек монтирования, используемыми сервером StarVault (т.е. настройки -path будут отражены). Набор включённых путей основан на разрешениях токена запроса.

Ответ может включать специфичные для StarVault расширения. В настоящее время определены три из них:

  • x-vault-sudo - конечной точке требуются привилегии sudo;

  • x-vault-unauthenticated - конечная точка не аутентифицирована;

  • x-vault-create-supported - конечная точка позволяет создавать новые элементы, а также обновлять существующие элементы.

Базовая документация будет создана для всех путей, но новая структура определения путей теперь позволяет добавлять более подробную документацию. В настоящее время конечные точки /sys обновлены для использования новой структуры, а остальные конечные точки будут изменяться постепенно.

1. Получение документа OpenAPI

Эта конечная точка возвращает один документ OpenAPI, описывающий все пути, видимые запрашивающей стороне.

Метод

Путь

GET

/sys/internal/specs/openapi

1.1. Параметры

  • generic_mount_paths (bool: false) – используется для указания использования универсальных путей монтирования. Если установлено, пути монтирования будут заменены динамическим параметром: {mountPath}.

Пример запроса:
curl \
  http://127.0.0.1:8200/v1/sys/internal/specs/openapi?generic_mount_paths=false
Пример ответа:
{
  "openapi": "3.0.2",
  "info": {
    "title": "StarVault API",
    "description": "HTTP API that gives you full access to StarVault. All API routes are prefixed with `/v1/`.",
    "version": "1.1.0",
    "license": {
      "name": "Mozilla Public License 2.0",
      "url": "https://www.mozilla.org/en-US/MPL/2.0"
    }
  },
  "paths": {
    "/auth/token/create": {
      "description": "The token create path is used to create new tokens.",
      "post": {
        "summary": "The token create path is used to create new tokens.",
        "tags": [
          "auth"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    ...