Служба управления конфигурациями "Осмакс"

Описание API

Версия 1.8.0

Содержание

    Общие сведения

    Продукт «Служба управления конфигурациями "Осмакс"» предоставляет RESTful API для:

    Авторизация

    Для доступа к конечным точкам (endpoints) API необходимо в заголовке HTTP-запроса Authorization предоставить билет (ticket) Kerberos.

    Чтобы получить билет (ticket) Kerberos, выполните шаги:

    1. Убедитесь, что на машине, с которой вы будете выполнять вызов API-методов, настроено окружение для аутентификации Kerberos — установлен и настроен Kerberos-клиент.

    1. Получите билет (ticket) Kerberos, используя команду kinit.

      kinit -v <имя пользователя>@<имя домена>

      Пример команды:

      kinit -v vivanov@LCM.TERRA.INNO.TECH

      Пример вывода:

      Placing tickets for `vivanov@LCM.TERRA.INNO.TECH` in cache `API:AS8FAF0V-AS4S-V39T-T4ZE-12DE34N4N77JA`
    2. Для проверки валидности полученного билета (ticket) отобразите список кэшированных билетов (tickets) Kerberos, выполнив команду klist.

      Пример вывода:

      Credentials cache: API:EC59A7DE-43A4-43E3-A349-56F92E31A71D
              Principal: aarshavin@LCM.TERRA.INNO.TECH
      
        Issued                Expires               Principal
      Feb 13 12:51:40 2024  Feb 13 22:51:40 2024  krbtgt/LCM.TERRA.INNO.TECH@LCM.TERRA.INNO.TECH
      Feb 13 12:51:47 2024  Feb 13 22:51:40 2024  HTTP/staging-lcm.terra.inno.tech@LCM.TERRA.INNO.TECHH

    Чтобы подставить значение полученного билета (ticket) в заголовок Authorization при вызове API-метода, используйте утилиту cURL.

    Ниже рассмотрен вызов API-метода на примере getConfigurationList — получение списка конфигураций:

    curl -x POST --location "https://"staging-lcm-terra-inno-tech/api/v1/configurations/search"
    -Н "Content-type: application/json" --negotiate --user : | jq

    Где:

    • curl — утилита командной строки, которая позволяет отправлять HTTP-запросы на сервер и получать ответы;

    • -x POST — флаг, указывающий метод запроса, который используется для отправки данных на сервер;

    • --location — флаг, указывающий curl на необходимость следовать перенаправлениям, если сервер возвращает HTTP-код 3xx;

    • https://staging-rt-terra-inno-tech — URL-адрес сервера, на который будет отправлен запрос;

    • -H "Content-type: application/json" — флаг, который добавляет заголовок к запросу. В данном примере заголовок Content-type устанавливается в значение application/json, что указывает на то, что тело запроса будет передано в формате JSON;

    • --negotiate — флаг, указывающий на использование аутентификации по протоколу Kerberos (Negotiate);

    • --user : — флаг, который определяет имя пользователя для аутентификации. Двоеточие в сочетании с флагом --negotiate указывает curl, что необходимо получить билет (ticket) для указанного хоста от имени данного пользователя и подставить в заголовок Authorization.

    Пример ответа:

    {
      "configurations": [
        {
          "id": 5467,
          "displayName": "Яндекс браузер",
          "description": "Браузер от компании Яндекс",
          "fullDescription": "Браузер от компании Яндекс.(...)",
          "guide": "Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным?  Чтобы окно больше не показывалось, включите опцию Больше не спрашивать и нажмите Не сейчас.",
          "isApplication": true,
          "tags": [
            "Браузер"
          ],
          "categories": [
            "Сеть"
          ],
          "createdAt": "2023-08-27T09:37:40.000Z",
          "updatedAt": "2023-08-27T09:37:40.000Z",
          "createdBy": "vivanov@domain.local",
          "updatedBy": "vivanov@domain.local",
          "iconPath": "icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png",
          "imagesPaths": [
            "images/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office-screen03.jpg"
          ],
          "defaultVersion": 1234,
          "isActive": true
        }
      ],
      "meta": {
        "totalRecords": 1729,
        "pageSize": 20,
        "totalPages": 87,
        "currentPage": 2,
        "hasNext": true,
        "hasPrev": true
      }
    }

    Если при установке продукта в конфигурационном файле бэкенда application.properties каталога /opt/inno-lcm-core задан параметр lcm.authorization.user-groups-white-list, доступ будет разрешен только пользователям, входящим в указанные группы (см. раздел «Предварительная конфигурация бэкенда. Параметры настройки авторизации и аутентификация»).

    API логического модуля «Каталог конфигураций»

    API-интерфейс модуля «Каталог конфигураций» разбит на несколько библиотек согласно назначению операций:

    Управление конфигурациями

    Для управления конфигурациями используются методы:

    Метод getConfigurationById

    Получение конфигурации по идентификатору.

    GET /v1/configurations/{configurationId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    configurationId

    Идентификатор конфигурации

    Да

    integer(int64)

    5467

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Набор параметров конфигурации

    {
      "updatedBy": "vivanov@domain.local",
      "displayName": "Яндекс браузер",
      "packageId": "5af2573a-f848-4db3-91e2-8b416d9cd833",
      "description": "Браузер от компании Яндекс",
      "fullDescription": "Браузер от компании Яндекс.(...)",
      "type": null,
      "isActive": true,
      "actualVersion": {
        "displayName": "23.5.0",
        "id": 1234
      },
      "tags": [
        "Браузер"
      ],
      "createdAt": "2023-08-27T09:37:40.000Z",
      "createdBy": "vivanov@domain.local",
      "imagesPaths": [
        "images/123321-4cb06ef0-87ab-4a60-b20e-67c2dm95ra09-open-office-screen03.jpg",
        "images/127681-1cb06ef0-84ab-2f80-b20e-33cdn4dbva04-open-office-screen03.jpg",
        "images/164301-9cbh0yy0-97ab-9g60-f20e-85c2d9725a09-open-office-screen06.jpg",
        "images/173343-4cb06ef0-77ab-8a90-b20e-23c2duy85a75-open-office-screen09.jpg",
        "images/183526-5cb06ef0-81ab-3a50-j20e-98c2d972lg61-open-office-screen01.jpg"
      ],
      "id": 5467,
      "categories":  [
        "Сеть"
      ],
      "iconPath": "icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png",
      "guide": "Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не показывалось, включите опцию Больше не спрашивать и нажмите Не сейчас.",
      "isApplication": true,
      "defaultVersion": 1234,
      "updatedAt": "2023-08-27T09:37:40.000Z"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "getConfigurationById.configurationId: must be a valid UUID"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Configuration with id=7cb06ef0-87ab-4a60-b20e-33c2d9725a09 not found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод updateConfigurationById

    Изменение конфигурации по идентификатору.

    PUT /v1/configurations/{configurationId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    configurationId

    Идентификатор конфигурации

    Да

    integer(int64)

    5467

    Параметры тела запроса
    Пример запроса
    {
      "displayName": "Яндекс браузер",
      "imagesPaths": [
        "images/123321-4cb06ef0-87ab-4a60-b20e-67c2dm95ra09-open-office-screen03.jpg",
        "images/127681-1cb06ef0-84ab-2f80-b20e-33cdn4dbva04-open-office-screen03.jpg",
        "images/164301-9cbh0yy0-97ab-9g60-f20e-85c2d9725a09-open-office-screen06.jpg",
        "images/173343-4cb06ef0-77ab-8a90-b20e-23c2duy85a75-open-office-screen09.jpg",
        "images/183526-5cb06ef0-81ab-3a50-j20e-98c2d972lg61-open-office-screen01.jpg"
      ],
      "description": "Браузер от компании Яндекс",
      "categories":  [
        "Сеть"
      ],
      "fullDescription": "Браузер от компании Яндекс.(...)",
      "type": null,
      "iconPath": "icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png",
      "guide": "Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не показывалось, включите опцию Больше не спрашивать и нажмите Не сейчас.",
      "isApplication": true,
      "defaultVersion": 1234,
      "tags": [
        "Браузер"
      ]
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Перечень параметров конфигурации

    {
      "updatedBy": "vivanov@domain.local",
      "displayName": "Яндекс браузер",
      "packageId": "5af2573a-f848-4db3-91e2-8b416d9cd833",
      "description": "Браузер от компании Яндекс",
      "fullDescription": "Браузер от компании Яндекс.(...)",
      "type": null,
      "isActive": true,
      "actualVersion": {
        "displayName": "23.5.0",
        "id": 1234
      },
      "tags": [
        "Браузер"
      ],
      "createdAt": "2023-08-27T09:37:40.000Z",
      "createdBy": "vivanov@domain.local",
      "imagesPaths": [
        "images/123321-4cb06ef0-87ab-4a60-b20e-67c2dm95ra09-open-office-screen03.jpg",
        "images/127681-1cb06ef0-84ab-2f80-b20e-33cdn4dbva04-open-office-screen03.jpg",
        "images/164301-9cbh0yy0-97ab-9g60-f20e-85c2d9725a09-open-office-screen06.jpg",
        "images/173343-4cb06ef0-77ab-8a90-b20e-23c2duy85a75-open-office-screen09.jpg",
        "images/183526-5cb06ef0-81ab-3a50-j20e-98c2d972lg61-open-office-screen01.jpg"
      ],
      "id": 5467,
      "categories":  [
        "Сеть"
      ],
      "iconPath": "icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png",
      "guide": "Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не показывалось, включите опцию Больше не спрашивать и нажмите Не сейчас.",
      "isApplication": true,
      "defaultVersion": 1234,
      "updatedAt": "2023-08-27T09:37:40.000Z"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "updateConfigurationById.configurationId: must be a valid UUID"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Configuration with id=7cb06ef0-87ab-4a60-b20e-33c2d9725a09 not found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод getConfigurationList

    Получение списка конфигураций.

    POST /v1/configurations/search

    Параметры запроса
    Имя Описание Обязательный Тип Пример

    page

    Общее количество страниц

    Нет

    integer

    2

    pageSize

    Количество элементов, возвращаемых в запросе

    Нет

    integer

    20

    Параметры тела запроса
    Пример запроса
    {
      "updatedBy": "vivanov@domain.local",
      "createdAtEndDate": "2023-08-27T09:37:40.000Z",
      "createdBy": "vivanov@domain.local",
      "displayName": "Яндекс браузер",
      "showOnlyActive": true,
      "createdAtStartDate": "2023-08-27T09:37:40.000Z",
      "description": "Браузер от компании Яндекс",
      "tags": [
        "Браузер"
      ],
      "categories":  [
        "Сеть"
      ],
      "type": null,
      "isApplication": true
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Список конфигураций

    {
      "configurations": [
        {
          "updatedBy": "vivanov@domain.local",
          "displayName": "Яндекс браузер",
          "packageId": "5af2573a-f848-4db3-91e2-8b416d9cd833",
          "description": "Браузер от компании Яндекс",
          "fullDescription": "Браузер от компании Яндекс.(...)",
          "type": null,
          "isActive": true,
          "actualVersion": {
            "displayName": "23.5.0",
            "id": 1234
          },
          "tags": [
            "Браузер"
          ],
          "createdAt": "2023-08-27T09:37:40.000Z",
          "createdBy": "vivanov@domain.local",
          "imagesPaths": [
            "images/123321-4cb06ef0-87ab-4a60-b20e-67c2dm95ra09-open-office-screen03.jpg",
            "images/127681-1cb06ef0-84ab-2f80-b20e-33cdn4dbva04-open-office-screen03.jpg",
            "images/164301-9cbh0yy0-97ab-9g60-f20e-85c2d9725a09-open-office-screen06.jpg",
            "images/173343-4cb06ef0-77ab-8a90-b20e-23c2duy85a75-open-office-screen09.jpg",
            "images/183526-5cb06ef0-81ab-3a50-j20e-98c2d972lg61-open-office-screen01.jpg"
          ],
          "id": 5467,
          "categories":  [
             "Сеть"
          ],
          "iconPath": "icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png",
          "guide": "Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не показывалось, включите опцию Больше не спрашивать и нажмите Не сейчас.",
          "isApplication": true,
          "defaultVersion": 1234,
          "updatedAt": "2023-08-27T09:37:40.000Z"
        },
        {
          "updatedBy": "vivanov@domain.local",
          "displayName": "Яндекс браузер",
          "packageId": "5af2573a-f848-4db3-91e2-8b416d9cd833",
          "description": "Браузер от компании Яндекс",
          "fullDescription": "Браузер от компании Яндекс.(...)",
          "type": null,
          "isActive": true,
          "actualVersion": {
            "displayName": "23.5.0",
            "id": 1234
          },
          "tags": [
            "Браузер"
          ],
          "createdAt": "2023-08-27T09:37:40.000Z",
          "createdBy": "vivanov@domain.local",
          "imagesPaths": [
            "images/123321-4cb06ef0-87ab-4a60-b20e-67c2dm95ra09-open-office-screen03.jpg",
            "images/127681-1cb06ef0-84ab-2f80-b20e-33cdn4dbva04-open-office-screen03.jpg",
            "images/164301-9cbh0yy0-97ab-9g60-f20e-85c2d9725a09-open-office-screen06.jpg",
            "images/173343-4cb06ef0-77ab-8a90-b20e-23c2duy85a75-open-office-screen09.jpg",
            "images/183526-5cb06ef0-81ab-3a50-j20e-98c2d972lg61-open-office-screen01.jpg"
          ],
          "id": 5467,
          "categories":  [
            "Сеть"
          ],
          "iconPath": "icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png",
          "guide": "Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не показывалось, включите опцию Больше не спрашивать и нажмите Не сейчас.",
    
          "isApplication": true,
          "defaultVersion": 1234,
          "updatedAt": "2023-08-27T09:37:40.000Z"
        }
      ],
      "meta": "{}"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "getConfigurationsList.pageSize: must be greater than or equal to 1"
    }

    401

    Auth exception (ошибка аутентификации)

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод createConfiguration

    Создание конфигурации.

    POST /v1/configurations

    Параметры тела запроса
    Пример запроса
    {
      "displayName": "Яндекс браузер",
      "imagesPaths": [
        "images/123321-4cb06ef0-87ab-4a60-b20e-67c2dm95ra09-open-office-screen03.jpg",
        "images/127681-1cb06ef0-84ab-2f80-b20e-33cdn4dbva04-open-office-screen03.jpg",
        "images/164301-9cbh0yy0-97ab-9g60-f20e-85c2d9725a09-open-office-screen06.jpg",
        "images/173343-4cb06ef0-77ab-8a90-b20e-23c2duy85a75-open-office-screen09.jpg",
        "images/183526-5cb06ef0-81ab-3a50-j20e-98c2d972lg61-open-office-screen01.jpg"
      ],
      "description": "Браузер от компании Яндекс",
      "categories":  [
        "Сеть"
      ],
      "fullDescription": "Браузер от компании Яндекс.(...)",
      "type": null,
      "iconPath": "icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png",
      "guide": "Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не показывалось, включите опцию Больше не спрашивать и нажмите Не сейчас.",
      "isApplication": true,
      "tags": [
        "Браузер"
      ]
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Набор параметров конфигурации

    {
      "updatedBy": "vivanov@domain.local",
      "displayName": "Яндекс браузер",
      "packageId": "5af2573a-f848-4db3-91e2-8b416d9cd833",
      "description": "Браузер от компании Яндекс",
      "fullDescription": "Браузер от компании Яндекс.(...)",
      "type": null,
      "isActive": true,
      "actualVersion": {
        "displayName": "23.5.0",
        "id": 1234
      },
      "tags": [
        "Браузер"
      ],
      "createdAt": "2023-08-27T09:37:40.000Z",
      "createdBy": "vivanov@domain.local",
      "imagesPaths": [
        "images/123321-4cb06ef0-87ab-4a60-b20e-67c2dm95ra09-open-office-screen03.jpg",
        "images/127681-1cb06ef0-84ab-2f80-b20e-33cdn4dbva04-open-office-screen03.jpg",
        "images/164301-9cbh0yy0-97ab-9g60-f20e-85c2d9725a09-open-office-screen06.jpg",
        "images/173343-4cb06ef0-77ab-8a90-b20e-23c2duy85a75-open-office-screen09.jpg",
        "images/183526-5cb06ef0-81ab-3a50-j20e-98c2d972lg61-open-office-screen01.jpg"
      ],
      "id": 5467,
      "categories":  [
        "Сеть"
      ],
      "iconPath": "icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png",
      "guide": "Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не показывалось, включите опцию Больше не спрашивать и нажмите Не сейчас.",
      "isApplication": true,
      "defaultVersion": 1234,
      "updatedAt": "2023-08-27T09:37:40.000Z"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createConfiguration.configurationCreateRequest.displayName: : size must be between 3 and 256"
    }

    401

    Auth exception (ошибка аутентификации)

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод getConfigurationsReport

    Экспорт списка конфигураций.

    GET /v1/configurations/report

    Параметры запроса
    Имя Описание Обязательный Тип Пример

    displayName

    Название конфигурации, которое отображается в пользовательском интерфейсе

    Нет

    string

    Яндекс браузер

    description

    Описание конфигурации

    Нет

    string

    Браузер от компании Яндекс

    category

    Категория конфигурации

    Нет

    string

    Сеть

    tag

    Тэг конфигурации

    Нет

    string

    Браузер

    isApplication

    Флаг, который определяет, является ли конфигурация приложением для отображения в магазине ПО. Возможные значения: true, false

    Нет

    string

    true

    type

    Тип конфигурации. Возможные значения: application, package, default

    Нет

    string

    application

    createdAtStartDate

    Дата создания, начало интервала, включительно

    Нет

    string($date-time)

    2023-08-27T09:37:40.000Z

    createdAtEndDate

    Дата создания, конец интервала, включительно

    Нет

    string($date-time)

    2023-08-27T09:37:40.000Z

    createdBy

    Автор создания

    Нет

    string

    vivanov@domain.local

    updatedBy

    Автор последнего изменения

    Нет

    string

    vivanov@domain.local

    showOnlyActive

    Флаг отображения неактивных версий конфигураций. Возможные значения: true, false

    Нет

    boolean

    true

    _fields

    Список столбцов для добавления в отчет. Возможные значения: displayName, defaultVersion, actualVersionId, actualVersionDisplayName, description, createdBy, createdAt, updatedAt

    Нет

    array[string]

    displayName

    _titles

    Список заголовков полей, разделенный запятыми. Количество заголовков должно совпадать с количеством столбцов в связанном параметре _fields. Если заголовок задавать не нужно, вместо него укажите пустую строку

    Нет

    array[string]

    Заданы все заголовки

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    CSV-файл с информацией о конфигурациях

    text/csv

    Название,Автор,Дата создания,Актуальная версия
    Ark,petrov@my.domain.ru,2024-03-29T12:21:41.335Z,22.12.3
    Яндекс Браузер,ivanov@my.domain.ru,2024-03-29T12:02:32.771Z,23.9.1.1023

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "getConfigurationsReport.displayName: : size must be between 3 and 256"
    }

    401

    Auth exception (ошибка аутентификации)

    Управление формулами

    Для управления формулами используются методы:

    • importFormulas — импорт Salt-формулы в S3-совместимое хранилище;

    • deleteFormula — удаление Salt-формулы из S3-совместимого хранилища.

    Метод importFormulas

    Импорт формулы в S3-совместимое хранилище.

    POST /v1/formulas

    Параметр тела запроса
    Имя Описание Обязательный

    formula

    Файл с формулой в формате base64.

    Контент архива должен соответствовать структуре формулы, которая задана в модуле координации, поэтому файл должен быть в формате <name>-formula.tar.gz

    Да

    Тип контента

    multipart/form-data

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Формула добавлена в S3-совместимое хранилище

    {
      "ignoredFilesCount": 3,
      "errors": [
        "errors",
        "errors"
      ]
    }

    401

    Auth exception (ошибка аутентификации)

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод deleteFormula

    Удаление формулы из S3-совместимого хранилища.

    DELETE /v1/formulas{formulaName}
    Параметр пути
    Имя Описание Обязательный Тип

    formulaName

    Имя формулы

    Да

    string

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    204

    Формула удалена из S3-совместимого хранилища

    401

    Auth exception (ошибка аутентификации)

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Управление категориями конфигураций

    Для управления категориями конфигураций используются методы:

    • getCategoryById — получение категории конфигурации по идентификатору;

    • updateCategoryById — изменение категории конфигурации по идентификатору;

    • deleteCategoryById — удаление категории конфигурации по идентификатору;

    • createCategory — создание категории конфигурации;

    • getCategoriesList — получение списка категорий.

    Метод getCategoryById

    Получение категории конфигураций по идентификатору.

    GET /v1/categories/{categoryId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    categoryId

    Идентификатор категории конфигурации

    Да

    string

    Сеть

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Перечень параметров категории конфигурации

    {
      "id": "office",
      "name": "Офис",
      "description": "Категория программ для работы в сети Интернет",
      "color": "00ff00",
      "iconCode": "ms_office_icon",
      "createdAt": "2023-08-27T09:37:40.000Z",
      "updatedAt": "2023-08-27T09:37:40.000Z"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "getCategoryById.categoryId: size must be between 3 and 64"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Category with id=officeCategory not found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод updateCategoryById

    Изменение категории конфигураций по идентификатору.

    PUT /v1/categories/{categoryId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    categoryId

    Идентификатор категории конфигурации

    Да

    string

    Сеть

    Параметры тела запроса
    Пример запроса
    {
      "name": "Офис",
      "description": "Категория программ для работы в сети Интернет",
      "color": "00ff00",
      "iconCode": "ms_office_icon"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Представление категории конфигурации

    {
      "id": "office",
      "name": "Офис",
      "description": "Категория программ для работы в сети Интернет",
      "color": "00ff00",
      "iconCode": "ms_office_icon",
      "createdAt": "2023-08-27T09:37:40.000Z",
      "updatedAt": "2023-08-27T09:37:40.000Z"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "updateCategoryById.categoryUpdateRequest.color: must match `[A-Fa-f0-9]+`"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Category with id=officeCategory not found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод deleteCategoryById

    Удаление категории конфигурации по идентификатору.

    DELETE /v1/categories/{categoryId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    categoryId

    Идентификатор категории конфигурации

    Да

    string

    Сеть

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    204

    Категория удалена

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "deleteCategoryById.categoryId: size must be between 3 and 64"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Category with id=officeCategory not found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод createCategory

    Создание категории конфигурации.

    POST /v1/categories

    Параметры тела запроса
    Пример запроса
    {
      "id": "office",
      "name": "Офис",
      "description": "Категория программ для работы в сети Интернет",
      "color": "00ff00",
      "iconCode": "ms_office_icon"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Набор параметров созданной категории конфигурации

    {
      "id": "office",
      "name": "Офис",
      "description": "Категория программ для работы в сети Интернет",
      "color": "00ff00",
      "iconCode": "ms_office_icon",
      "createdAt": "2023-08-27T09:37:40.000Z",
      "updatedAt": "2023-08-27T09:37:40.000Z"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createCategory.createCategoryRequest.color: must match `[A-Fa-f0-9]+`"
    }

    401

    Auth exception (ошибка аутентификации)

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод getCategoryList

    Получение списка категорий конфигураций.

    POST /v1/categories/search

    Параметры запроса
    Имя Описание Обязательный Тип Пример

    page

    Общее количество страниц

    Нет

    integer

    2

    pageSize

    Количество элементов, возвращаемых в запросе

    Нет

    integer

    20

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Список категорий

    {
      "categories": [
        {
          "id": "office",
          "name": "Офис",
          "description": "Категория программ для работы в сети Интернет",
          "color": "00ff00",
          "iconCode": "ms_office_icon",
          "createdAt": "2023-08-27T09:37:40.000Z",
          "updatedAt": "2023-08-27T09:37:40.000Z"
        }
      ],
      "meta": {
        "totalRecords": 1729,
        "pageSize": 20,
        "totalPages": 87,
        "currentPage": 2,
        "hasNext": true,
        "hasPrev": true
      }
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "getCategoriesList.page: must be greater than or equal to 1"
    }

    401

    Auth exception (ошибка аутентификации)

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Управление версиями конфигураций

    Для управления версиями конфигураций используются методы:

    • getVersionByConfigurationId  — получение версии конфигурации по идентификатору;

    • updateVersionById — изменение версии конфигурации по идентификатору;

    • deleteVersionById — удаление версии конфигураций по идентификатору;

    • getVersionsByConfigurationId — получение доступных версий для конфигурации по идентификатору;

    • createSpecificationVersion — создание версии конфигурации.

    Метод getVersionByConfigurationId

    Получение версии конфигурации по идентификатору.

    GET /v1/configurations/{configurationId}/versions/{versionId}
    Параметры пути
    Имя Описание Обязательный Тип Пример

    configurationId

    Идентификатор конфигурации

    Да

    integer(int64)

    5467

    versionId

    Идентификатор версии конфигурации

    Да

    integer(int64)

    1234

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Параметры запрашиваемой версии конфигурации

    {
      "id": "1234",
      "createdAt": "2023-08-27T09:37:40.000Z",
      "updatedAt": "2023-08-27T09:37:40.000Z",
      "createdBy": "vivanov@domain.local",
      "updatedBy": "vivanov@domain.local",
      "configurationId": "5467",
      "displayName": "23.5.0",
      "releaseDate": "2023-05-19",
      "softwareRequirements": "Оперативная память - Минимум 512 МБ",
      "formulaName": "yandex-browser",
      "pillarProperty": {
        "additionalProp1": {},
        "additionalProp2": {},
        "additionalProp3": {}
      },
      "features": "Яндекс браузер 23.5.0",
      "changelog": "Changelog 23-5-0:"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "getVersionByConfigurationId.versionId: must be a valid UUID"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Configuration version with id=7cb06ef0-87ab-4a60-b20e-33c2d9725a09 not found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод updateVersionById

    Изменение версии конфигурации по идентификатору.

    PUT /v1/configurations/{configurationId}/versions/{versionId}
    Параметры пути
    Имя Описание Обязательный Тип Пример

    configurationId

    Идентификатор конфигурации

    Да

    integer(int64)

    5467

    versionId

    Идентификатор версии конфигурации

    Да

    integer(int64)

    1234

    Параметры тела запроса
    Пример запроса
    {
      "displayName": "23.5.0",
      "releaseDate": "2023-05-19",
      "softwareRequirements": "Оперативная память - Минимум 512 МБ",
      "formulaName": "yandex-browser",
      "pillarProperty": {
        "additionalProp1": {},
        "additionalProp2": {},
        "additionalProp3": {}
      },
      "features": "Яндекс браузер 23.5.0",
      "changelog": "Changelog 23-5-0:"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Перечень параметров версии конфигурации

    {
      "id": "1234",
      "createdAt": "2023-08-27T09:37:40.000Z",
      "updatedAt": "2023-08-27T09:37:40.000Z",
      "createdBy": "vivanov@domain.local",
      "updatedBy": "vivanov@domain.local",
      "configurationId": "5467",
      "displayName": "23.5.0",
      "releaseDate": "2023-05-19",
      "softwareRequirements": "Оперативная память - Минимум 512 МБ",
      "formulaName": "yandex-browser",
      "pillarProperty": {
        "additionalProp1": {},
        "additionalProp2": {},
        "additionalProp3": {}
      },
      "features": "Яндекс браузер 23.5.0",
      "changelog": "Changelog 23-5-0:"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "updateVersionById.versionId: must be a valid UUID"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Configuration version with id=7cb06ef0-87ab-4a60-b20e-33c2d9725a09 not found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод deleteVersionById

    Удаление версии конфигураций по идентификатору.

    DELETE /v1/configurations/{configurationId}/versions/{versionId}
    Параметры пути
    Имя Описание Обязательный Тип Пример

    configurationId

    Идентификатор конфигурации

    Да

    integer(int64)

    5467

    versionId

    Идентификатор версии конфигурации

    Да

    integer(int64)

    1234

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    204

    Версия удалена

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "deleteVersionById.versionId: must be a valid UUID"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Configuration version with id=7cb06ef0-87ab-4a60-b20e-33c2d9725a09 not found"
    }

    422

    Невозможно обработать запрос

    {
      "code": "object_not_found",
      "message": "Cannot delete configuration version with id = 7cb06ef0-87ab-4a60-b20e-33c2d9725a09 since it is used by collections with ids = [6cb06ef0-87ab-4a60-b20e-33c2d9725a10,8cb06ef0-87ab-4a60-b20e-33c2d9725a11]"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод getVersionsByConfigurationId

    Получение доступных версий для конфигурации по идентификатору.

    POST /v1/configurations/{configurationId}/versions/search
    Параметр пути
    Имя Описание Обязательный Тип Пример

    configurationId

    Идентификатор конфигурации

    Да

    integer($int64)

    5467

    Параметры запроса
    Имя Описание Обязательный Тип Пример

    page

    Общее количество страниц

    Нет

    integer

    2

    pageSize

    Количество возвращаемых элементов в запросе

    Нет

    integer

    20

    Параметры тела запроса
    Пример запроса
    {
      "name": "23.5",
      "createdBy": "vivanov@domain.local",
      "updatedBy": "vivanov@domain.local",
      "showOnlyActive": true
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Список версий конфигурации

    {
      "versions": [
        {
          "id": 1234,
          "createdAt": "2023-08-27T09:37:40.000Z",
          "updatedAt": "2023-08-27T09:37:40.000Z",
          "createdBy": "vivanov@domain.local",
          "updatedBy": "vivanov@domain.local",
          "configurationId": 5467,
          "displayName": "23.5.0",
          "releaseDate": "2023-05-19",
          "softwareRequirements": "Оперативная память - Минимум 512 МБ",
          "formulaName": "yandex-browser",
          "pillarProperty": {
            "additionalProp1": {},
            "additionalProp2": {},
            "additionalProp3": {}
          },
          "features": "Яндекс браузер 23.5.0",
          "changelog": "Changelog 23-5-0:",
          "isActive": true
        }
      ],
      "meta": {
        "totalRecords": 1729,
        "pageSize": 20,
        "totalPages": 87,
        "currentPage": 2,
        "hasNext": true,
        "hasPrev": true
      }
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "getVersionsByConfigurationId.configurationId: must be a valid int64"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Configuration with id=7cb06ef0-87ab-4a60-b20e-33c2d9725a09 not found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод createConfigurationVersion

    Создание версии конфигурации.

    POST /v1/configurations/{configurationId}/versions/
    Параметр пути
    Имя Описание Обязательный Тип Пример

    configurationId

    Идентификатор конфигурации

    Да

    integer(int64)

    5467

    Параметры тела запроса
    Пример запроса
    {
      "displayName": "23.5.0",
      "releaseDate": "2023-05-19",
      "softwareRequirements": "Оперативная память - Минимум 512 МБ",
      "formulaName": "yandex-browser",
      "pillarProperty": {
        "additionalProp1": {},
        "additionalProp2": {},
        "additionalProp3": {}
      },
      "features": "Яндекс браузер 23.5.0",
      "changelog": "Changelog 23-5-0:"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Представление версии конфигурации

    {
      "id": "1234",
      "createdAt": "2023-08-27T09:37:40.000Z",
      "updatedAt": "2023-08-27T09:37:40.000Z",
      "createdBy": "vivanov@domain.local",
      "updatedBy": "vivanov@domain.local",
      "configurationId": "5467",
      "displayName": "23.5.0",
      "releaseDate": "2023-05-19",
      "softwareRequirements": "Оперативная память - Минимум 512 МБ",
      "formulaName": "yandex-browser",
      "pillarProperty": {
        "additionalProp1": {},
        "additionalProp2": {},
        "additionalProp3": {}
      },
      "features": "Яндекс браузер 23.5.0",
      "changelog": "Changelog 23-5-0:"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createConfigurationVersion.displayName: size must be between 3 and 256"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "Configuration with id=7cb06ef0-87ab-4a60-b20e-33c2d9725a09 not found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Управление мультимедиа-контентом

    Перед началом работы с мультимедиа-контентом убедитесь, что в S3-совместимом хранилище создан как минимум один бакет:

    • для хранения картинок и скриншотов с именем, соответствующим параметру конфигурации lcm.multimedia.s3.images-buсket-name;

    • для хранения иконок с именем, соответствующим параметру конфигурации lcm.multimedia.s3.icons-buсket-name;

    • для хранения прочего контента с именем, соответствующим параметру конфигурации lcm.multimedia.s3.others-buсket-name.

    Подробнее см. раздел «Настройка бэкенда продукта» документа «Руководство по установке».

    Для управления мультимедиа-контентом используются методы:

    Метод uploadMultimediaContent

    Загрузка файла в S3-совместимое хранилище.

    POST /v1/multimedia

    Параметры тела запроса
    Имя Описание Тип Обязательный

    searchKey

    Неуникальный ключ для поиска файлов в хранилище. Например, идентификатор конфигурации ПО для поиска связанных с ней изображений

    string

    Да

    originalFileName

    Исходное имя загружаемого файла

    string

    Да

    fileCategory

    Категория файла. Возможные значения: icons, images, others

    string

    Да

    contentData

    Содержимое одного файла. Должен быть заполнен Content-type

    string($binary)

    Да

    Тип контента

    multipart/form-data

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Файл загружен

    {
      "fileUrl": "images/open_office_aa-bb-00-11-ee.jpg",
      "fileSize": 512000
    }

    400

    Incorrect request params (неверные параметры запроса)

    {
      "code": "validation_failed",
      "message": "Content of the data file is null or empty"
    }

    401

    Auth exception (ошибка аутентификации)

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод downloadMultimediaContent

    Получение файла из S3-совместимого хранилища.

    GET /v1/multimedia/{fileCategory}/{fileId}
    Параметры пути
    Имя Описание Обязательный Тип Пример

    fileCategory

    Категория файла

    Да

    string

    icons

    fileId

    Идентификатор файла

    Да

    string

    open_office_aa-bb-00-11-ee.jpg

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Содержимое файла

    400

    Incorrect request params (неверные параметры запроса)

    {
      "code": "validation_failed",
      "message": "Content of the data file is null or empty"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "File with ID=my_file-123.jpg isn't found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Метод deleteMultimediaContent

    Удаление файла из S3-совместимого хранилища.

    DELETE /v1/multimedia/{fileCategory}/{fileId}
    Параметры пути
    Имя Описание Обязательный Тип Пример

    fileCategory

    Категория файла

    Да

    string

    icons

    fileId

    Идентификатор файла

    Да

    string

    open_office_aa-bb-00-11-ee.jpg

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Файл успешно удален

    400

    Incorrect request params (неверные параметры запроса)

    {
      "code": "validation_failed",
      "message": "Content of the data file is null or empty"
    }

    401

    Auth exception (ошибка аутентификации)

    404

    Object not found (объект не найден)

    {
      "code": "object_not_found",
      "message": "File with ID=my_file-123.jpg isn't found"
    }

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Управление тегами конфигураций

    Для управления тегами конфигураций используется метод getTagsList — получение списка тегов конфигураций.

    Метод getTagsList

    Получение списка тегов конфигураций.

    POST /v1/tags/search

    Параметры запроса
    Имя Описание Обязательный Тип Пример

    page

    Общее количество страниц

    Нет

    integer

    2

    pageSize

    Количество элементов, возвращаемых в запросе

    Нет

    integer

    20

    Тип контента

    application/json

    Пример запроса
    "Сертиф"
    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Список тегов конфигураций

    {
      "tags": [
        "Браузер"
      ],
      "meta": {
        "totalRecords": 1729,
        "pageSize": 20,
        "totalPages": 87,
        "currentPage": 2,
        "hasNext": true,
        "hasPrev": true
      }
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "getTagList.getTagListRequest.mask: size must be between 3 and 256"
    }

    401

    Auth exception (ошибка аутентификации)

    500

    Internal error (внутренняя ошибка)

    {
      "code": "internal_error",
      "message": "Database is unavailable"
    }

    Описание параметров схемы

    BasicError

    Информация об ошибке.

    Имя поля Обязательное Тип Описание Пример

    code

    Да

    string

    Код ошибки. Включает параметр ErrorCode. Допустимые значения:

    • object_already_exists — объект уже существует;

    • object_not_found — объект не найден;

    • validation_failed — ошибка валидации;

    • authorization_failed — ошибка авторизации;

    • internal_error — внутренняя ошибка

    validation_failed

    message

    Да

    string

    Сообщение об ошибке

    Template contains not resolved variables

    CategoryCreateRequest

    Параметры для создания категории конфигураций.

    Имя поля Обязательное Тип Описание Пример

    id

    Да

    string

    Идентификатор категории конфигураций (макс. длина: 64). Включает параметр CategoryId

    Сеть

    name

    Да

    string

    Название категории конфигураций (макс. длина: 255). Включает параметр CategoryName

    Офис

    description

    Нет

    string

    Описание категории конфигураций (макс. длина: 64). Включает параметр CategoryDescription

    Категория программ для работы в сети Интернет

    color

    Да

    string

    Цвет в формате HEX (макс. длина: 6). Включает параметр HexColor

    00ff00

    iconCode

    Да

    string

    Код изображения для категории (макс. длина: 255). Включает параметр IconCode

    ms_office_icon

    CategoryDescription

    Описание категории конфигураций.

    Тип: string.

    Пример: Категория программ для работы в сети Интернет.

    CategoryId

    Идентификатор категории конфигураций (макс. длина: 64).

    Тип: string.

    Шаблон: [A-Za-z0-9_\-]+.

    Пример: Сеть.

    CategoriesListResponse

    Список категорий конфигураций.

    Имя поля Обязательное Тип Описание Пример

    categories

    Да

    Список категорий конфигураций. включает параметр CategoryResponse

    meta

    Да

    Категории конфигураций. включает параметр PaginationMetadata

    CategoryName

    Название категории конфигураций (макс. длина: 255).

    Тип: string.

    Пример: Офис.

    CategoryResponse

    Перечень параметров категории конфигураций.

    Имя поля Обязательное Тип Описание Пример

    id

    Да

    string

    Идентификатор категории конфигураций (макс. длина: 64). Шаблон: [A-Za-z0-9_\-]+. Включает параметр CategoryId

    Сеть

    name

    Да

    string

    Название категории конфигураций (макс. длина: 255). Включает параметр CategoryName

    Офис

    description

    Нет

    string

    Описание категории конфигураций (макс. длина: 64). Включает параметр CategoryDescription

    Категория программ для работы в сети Интернет

    color

    Да

    string

    Цвет в формате HEX. Шаблон: [A-Fa-f0-9]+. Включает параметр HexColor

    00ff00

    iconCode

    Да

    string

    Код изображения для категории (макс. длина: 255). Включает параметр IconCode

    ms_office_icon

    createdAt

    Нет

    string

    Дата создания

    2023-08-27T09:37:40.000Z

    updatedAt

    Нет

    string

    Дата последнего изменения

    2023-08-27T09:37:40.000Z

    CategoryUpdateRequest

    Параметры для обновления категории конфигураций.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Название категории конфигураций (макс. длина: 255). Включает параметр CategoryName

    Офис

    description

    Нет

    string

    Описание категории конфигураций (макс. длина: 64). Включает параметр CategoryDescription

    Категория программ для работы в сети Интернет

    color

    Да

    string

    Цвет в формате HEX. Шаблон: [A-Fa-f0-9]+ (макс. длина: 6). Включает параметр HexColor

    00ff00

    iconCode

    Да

    string

    Код изображения для категории (макс. длина: 255). Включает параметр IconCode

    ms_office_icon

    ConfigurationIconPath

    Путь/ссылка на изображение иконки относительно сервиса хранения мультимедиа-контента.

    Тип: string.

    Пример: icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png.

    ConfigurationImagesPaths

    Список путей/ссылок на прикрепленные к ПО изображения относительно сервиса хранения мультимедиа-контента.

    Тип: string.

    Пример: images/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office-screen03.jpg.

    ConfigVersionChangelog

    Описание обновления.

    Тип: string.

    Пример: Changelog 23-5-0:.

    ConfigVersionCreteRequest

    Тело запроса на создание версии конфигурации.

    Имя поля Обязательное Тип Описание Пример

    displayName

    Да

    string

    Имя версии, которое отображается в пользовательском интерфейсе. Включает параметр ConfigVersionDisplayName

    23.5.0

    releaseDate

    Да

    string

    Дата релиза версии. Включает параметр ConfigVersionReleaseDate

    Рекомендуется указывать дату, не совпадающую с датами других выпущенных версий. При совпадении дат система может не определить создаваемую версию как более новую, и в магазине приложений не предложит обновить версию для данного ПО (см. главу «Установка/обновление/удаление ПО» документа «Руководство пользователя»)

    2023-05-19

    softwareRequirements

    Да

    string

    Системные требования для установки версии. Включает параметр ConfigVersionSoftwareRequirements

    Оперативная память - Минимум 512 МБ

    formulaName

    Да

    string

    Имя формулы. Включает параметр ConfigVersionFormulaName

    yandex-browser

    pillarProperty

    Нет

    Конфигурация (pillar) с переопределяемыми параметрами формулы в JSON-формате. включает параметр pillarProperty

    features

    Нет

    string

    Особенности установки — информационное сообщение, которое пользователь должен увидеть в окне подтверждения установки. Включает параметр ConfigVersionFeatures

    Яндекс браузер 23.5.0

    changelog

    Нет

    string

    Описание обновления. Включает параметр ConfigVersionChangelog

    yandex-browser

    ConfigVersionDisplayName

    Имя версии, которое отображается в пользовательском интерфейсе (мин. длина: 1; макс. длина: 255).

    Тип: string.

    Пример: 23.5.0.

    ConfigVersionFeatures

    Особенности установки — информационное сообщение, которое пользователь должен увидеть в окне подтверждения установки.

    Тип: string.

    Пример: Яндекс браузер 23.5.0.

    ConfigVersionFilterRequest

    Фильтры для запроса на получение версий конфигураций.

    Имя поля Обязательное Тип Описание Пример

    name

    Нет

    string

    Фильтр для контекстного поиска по имени версии

    23.5

    createdBy

    Нет

    string

    Автор создания. Включает параметр CreatedBy

    vivanov@domain.local

    updatedBy

    Нет

    string

    Автор последнего изменения. Включает параметр UpdatedBy

    vivanov@domain.local

    showOnlyActive

    Нет

    boolean

    Флаг отображения неактивных версий конфигураций при выводе списка

    true

    ConfigVersionFormulaName

    Имя формулы (мин. длина: 1; макс. длина: 255).

    Тип: string.

    Пример: yandex-browser.

    ConfigVersionListResponse

    Список версий конфигурации.

    Имя поля Обязательное Тип Описание Пример

    versions

    Да

    Список версий конфигурации. включает параметр ConfigVersionResponse

    meta

    Да

    Метаданные постраничной навигации. включает параметр PaginationMetadata

    ConfigVersionReleaseDate

    Дата релиза версии.

    Тип: string(date).

    Пример: 2023-05-19.

    ConfigVersionResponse

    Версия конфигурации.

    Имя поля Обязательное Тип Описание Пример

    id

    Да

    integer(int64)

    Идентификатор версии конфигурации

    1234

    createdAt

    Нет

    string

    Дата создания. Включает параметр CreatedDate

    2023-08-27T09:37:40.000Z

    updatedAt

    Нет

    string

    Дата последнего изменения. Включает параметр UpdatedDate

    2023-08-27T09:37:40.000Z

    createdBy

    Нет

    string

    Автор создания. Включает параметр CreatedBy

    vivanov@domain.local

    updatedBy

    Нет

    string

    Автор последнего изменения. Включает параметр UpdatedBy

    vivanov@domain.local

    configurationId

    Да

    string

    Идентификатор конфигурации (макс. длина: 255). Включает параметр ConfigurationId

    5467

    displayName

    Да

    string

    Имя версии, которое отображается в пользовательском интерфейсе (мин. длина: 1; макс. длина: 255). Включает параметр ConfigVersionDisplayName

    23.5.0

    releaseDate

    Да

    string

    Дата релиза версии. Включает параметр ConfigVersionReleaseDate

    2023-05-19

    softwareRequirements

    Да

    string

    Системные требования для установки версии (мин. длина: 1; макс. длина: 2048). Включает параметр ConfigVersionSoftwareRequirements

    Оперативная память - Минимум 512 МБ

    formulaName

    Да

    string

    Имя формулы (мин. длина: 1; макс. длина: 255). Включает параметр ConfigVersionFormulaName

    yandex-browser

    pillarProperty

    Нет

    Конфигурация (pillar) с переопределяемыми параметрами формулы в JSON-формате. включает параметр pillarProperty

    features

    Нет

    string

    Особенности установки — информационное сообщение, которое пользователь должен увидеть в окне подтверждения установки. Включает параметр ConfigVersionFeatures

    Яндекс браузер 23.5.0

    changelog

    Нет

    string

    Описание обновления. Включает параметр ConfigVersionChangelog

    yandex-browser

    isActive

    Нет

    boolean

    Флаг активности версии конфигурации

    true

    ConfigVersionSoftwareRequirements

    Системные требования для установки версии — минимум 512 МБ (мин. длина: 1; макс. длина: 2048).

    Тип: string.

    Пример: Оперативная память.

    ConfigVersionUpdateRequest

    Тело запроса на обновление версии конфигурации.

    Имя поля Обязательное Тип Описание Пример

    displayName

    Да

    string

    Имя версии, которое отображается в пользовательском интерфейсе (мин. длина: 1; макс. длина: 255). Включает параметр ConfigVersionDisplayName

    23.5.0

    releaseDate

    Да

    string

    Дата релиза версии. Включает параметр ConfigVersionReleaseDate

    2023-05-19

    softwareRequirements

    Да

    string

    Системные требования для установки версии (мин. длина: 1; макс. длина: 2048). Включает параметр ConfigVersionSoftwareRequirements

    Оперативная память — минимум 512 МБ

    formulaName

    Да

    string

    Имя формулы (мин. длина: 1; макс. длина: 255). Включает параметр ConfigVersionFormulaName

    yandex-browser

    pillarProperty

    Нет

    Конфигурация (pillar) с переопределяемыми параметрами формулы в JSON-формате. включает параметр pillarProperty

    features

    Нет

    string

    Особенности установки — информационное сообщение, которое пользователь должен увидеть в окне подтверждения установки. Включает параметр ConfigVersionFeatures

    Яндекс браузер 23.5.0

    changelog

    Нет

    string

    Описание обновления. Включает параметр ConfigVersionChangelog

    yandex-browser

    CreatedBy

    Автор создания.

    Тип: string.

    Пример: vivanov@domain.local.

    СreatedDate

    Дата создания.

    Тип: string.

    Пример: 2023-08-27T09:37:40.000Z.

    DefaultVersion

    Идентификатор актуальной версии (версии по умолчанию) данного ПО.

    Тип: integer(int64).

    Мин. знаение: 1.

    Пример: 1234.

    Description

    Описание конфигурации.

    Тип: string.

    Пример: Браузер от компании Яндекс

    ConfigurationDisplayName

    Название конфигурации, которое отображается в пользовательском интерфейсе (макс. длина: 255).

    Тип: string.

    Пример: Яндекс браузер.

    ErrorCode

    Код ошибки.

    Тип: string.

    Допустимые значения:

    • object_already_exists — объект уже существует;

    • object_not_found — объект не найден;

    • validation_failed — ошибка валидации;

    • authorization_failed — ошибка авторизации;

    • internal_error — внутренняя ошибка.

    ExtendedError

    Подробное сообщение об ошибке.

    Имя поля Обязательное Тип Описание Пример

    code

    Да

    Код ошибки. Включает параметр ErrorCode. Допустимые значения:

    • object_already_exists — объект уже существует;

    • object_not_found — объект не найден;

    • validation_failed — ошибка валидации;

    • authorization_failed — ошибка авторизации;

    • internal_error — внутренняя ошибка

    validation_failed

    message

    Да

    string

    Сообщение об ошибке

    Template contains not resolved variables

    FileUrl

    Относительный URL для загрузки файла.

    Тип: string (макс. длина: 255).

    Пример: images/open_office_aa-bb-00-11-ee.jpg.

    FileSize

    Размер загруженного файла в байтах.

    Тип: integer(int32).

    Пример: 512000.

    FormulaImportResult

    Результат импорта формулы.

    Имя поля Обязательное Тип Описание Пример

    ignoredFilesCount

    Да

    integer

    Количество файлов, которые не удалось загрузить

    3

    errors

    Да

    string

    FormulaName

    Название формулы (макс. длина: 255).

    Тип: string.

    Пример: yandex-browser.

    FullDescription

    Подробное описание конфигурации.

    Тип: string.

    Пример: Браузер от компании Яндекс.(…​).

    Guide

    Инструкция.

    Тип: string.

    Пример: Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не показывалось, включите опцию Больше не спрашивать и нажмите Не сейчас.

    HexColor

    Цвет в формате HEX (макс. длина: 6).

    Тип: string.

    Шаблон: [A-Fa-f0-9]+.

    Пример: 00ff00.

    IconCode

    Код изображения для категории (макс. длина: 255).

    Тип: string.

    Пример: ms_office_icon.

    IsApplication

    Флаг, который определяет, является ли конфигурация приложением для отображения в магазине ПО.

    Тип: boolean.

    Пример: true.

    PaginationMetadata

    Метаданные постраничной навигации.

    Имя поля Обязательное Тип Описание Пример

    totalRecords

    Да

    integer

    Общее количество записей

    1729

    pageSize

    Да

    integer

    Количество возвращаемых элементов в запросе

    20

    totalPages

    Да

    integer

    Общее количество страниц

    87

    currentPage

    Да

    integer

    Номер текущей страницы

    2

    hasNext

    Да

    boolean

    Признак наличия следующей страницы

    true

    hasPrev

    Да

    boolean

    Признак наличия предыдущей страницы

    true

    PillarProperty

    Конфигурация (pillar) с переопределяемыми параметрами формулы в JSON-формате.

    ConfigurationCreateRequest

    Параметры для создания конфигурации.

    Имя поля Обязательное Тип Описание Пример

    displayName

    Да

    Имя, которое отображается в пользовательском интерфейсе (макс. длина: 255). Включает параметр ConfigurationDisplayName

    Яндекс браузер

    description

    Нет

    string

    Описание конфигурации. Включает параметр Description

    Браузер от компании Яндекс

    fullDescription

    Нет

    string

    Подробное описание конфигурации. Включает параметр FullDescription

    Браузер от компании Яндекс.(…​)

    guide

    Нет

    string

    Инструкция. Включает параметр Guide

    Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не отображалось, включите опцию Больше не спрашивать и нажмите Не сейчас.

    isApplication

    Да

    Флаг, который указывает, является ли конфигурация приложением для отображения в магазине ПО. Включает параметр IsApplication

    tags

    Нет

    string

    Тэг конфигурации для классификации и быстрого поиска (макс. длина: 255). Включает параметр Tag

    Браузер

    categories

    Нет

    string

    Категории конфигураций. Включает параметр CategoryId

    Сеть

    iconPath

    Нет

    string

    Путь/ссылка на изображение иконки относительно сервиса хранения мультимедиа-контента. Включает параметр ConfigurationIconPath

    icons/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office.png

    imagesPaths

    Нет

    string

    Список путей/ссылок на прикрепленные к ПО изображения относительно сервиса хранения мультимедиа-контента. Включает параметр ConfigurationImagesPaths

    images/123321-7cb06ef0-87ab-4a60-b20e-33c2d9725a09-open-office-screen03.jpg]

    ConfigurationsFilterRequest

    Список фильтров для конфигураций.

    Имя поля Обязательное Тип Описание Пример

    displayName

    Нет

    string

    Имя, которое отображается в пользовательском интерфейсе (макс. длина: 255). Включает параметр ConfigurationDisplayName

    Яндекс браузер

    description

    Нет

    string

    Описание формулы. Включает параметр Description

    Formula to install web browser developed by Yandex.

    category

    Нет

    string

    Идентификатор категории конфигураций (макс. длина: 64). Шаблон: [A-Za-z0-9_\-]+

    Сеть

    tag

    Нет

    string

    Тэг конфигурации для классификации и быстрого поиска (макс. длина: 255). Включает параметр Tag

    Браузер

    isApplication

    Нет

    Флаг, который указывает, является ли конфигурация приложением для отображения в магазине ПО. Включает параметр IsApplication

    createdAtStartDate

    Нет

    string

    Дата создания, начало интервала, включительно

    2023-08-27T09:37:40.000Z

    createdAtEndDate

    Нет

    string

    Дата создания, конец интервала, включительно

    2023-08-27T09:37:40.000Z

    createdBy

    Нет

    string

    Автор создания. Включает параметр CreatedBy

    vivanov@domain.local

    updatedBy

    Нет

    string

    Автор последнего изменения. Включает параметр UpdatedBy

    vivanov@domain.local

    showOnlyActive

    Нет

    boolean

    Флаг отображения неактивных версий конфигураций при выводе списка

    true

    ConfigurationId

    Идентификатор конфигурации.

    Макс. длина: 255.

    Тип: integer(int64).

    Пример: 5467.

    ConfigurationsListResponse

    Список конфигураций.

    Имя поля Обязательное Тип Описание Пример

    configurations

    Да

    Список конфигураций. включает параметр ConfigurationResponse

    meta

    Да

    Метаданные постраничной навигации. включает параметр PaginationMetadataConfigurationUpdateRequest

    ConfigurationResponse

    Перечень параметров конфигурации.

    Имя поля Обязательное Тип Описание Пример

    id

    Да

    integer(int64)

    Идентификатор конфигурации (макс. длина: 255). Включает параметр ConfigurationId

    5467

    displayName

    Да

    string

    Имя, которое отображается в пользовательском интерфейсе (макс. длина: 255). Включает параметр ConfigurationDisplayName

    Яндекс браузер

    description

    Нет

    string

    Описание формулы. Включает параметр Description

    Formula to install web browser developed by Yandex.

    fullDescription

    Нет

    string

    Подробное описание конфигурации. Включает параметр FullDescription

    Браузер от компании Яндекс.(…​)

    guide

    Нет

    string

    Инструкция. Включает параметр Guide

    Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не отображалось, включите опцию Больше не спрашивать и нажмите Не сейчас.

    isApplication

    Да

    Флаг, который указывает, является ли конфигурация приложением для отображения в магазине ПО. Включает параметр IsApplication

    tags

    Нет

    string

    Тэг конфигурации для классификации и быстрого поиска (макс. длина: 255). Включает параметр Tag

    Браузер

    categories

    Нет

    категории конфигураций. Включает параметр CategoryId

    createdAt

    Нет

    string

    Дата создания

    2023-08-27T09:37:40.000Z

    updatedAt

    Нет

    string

    Дата последнего изменения

    2023-08-27T09:37:40.000Z

    createdBy

    Нет

    string

    Автор создания. Включает параметр CreatedBy

    vivanov@domain.local

    updatedBy

    Нет

    string

    Автор последнего изменения. Включает параметр UpdatedBy

    vivanov@domain.local

    iconPath

    Нет

    Путь/ссылка на изображение иконки относительно сервиса хранения мультимедиа контента Включает параметр ConfigurationIconPath

    imagesPaths

    Нет

    Список путей/ссылок на прикрепленные к ПО изображения относительно сервиса хранения мультимедиа-контента. Включает параметр ConfigurationImagesPaths

    defaultVersion

    Нет

    integer(int64)

    Идентификатор актуальной версии (версии по умолчанию) данного ПО (мин. значение: 1). Включает параметр DefaultVersion

    isActive

    Нет

    boolean

    Флаг активности версии конфигурации

    true

    ConfigurationUpdateRequest

    Параметры для обновления конфигурации.

    Имя поля Обязательное Тип Описание Пример

    displayName

    Да

    string

    Имя, которое отображается в пользовательском интерфейсе (макс. длина: 255). Включает параметр ConfigurationDisplayName

    Яндекс браузер

    description

    Нет

    string

    Описание формулы. Включает параметр Description

    Formula to install web browser developed by Yandex.

    fullDescription

    Нет

    string

    Подробное описание конфигурации. Включает параметр FullDescription

    Браузер от компании Яндекс.(…​)

    guide

    Нет

    string

    Инструкция. Включает параметр Guide

    Если вы не сделали его основным, при его запуске может появляться окно Сделать этот браузер основным? Чтобы окно больше не отображалось, включите опцию Больше не спрашивать и нажмите Не сейчас.

    isApplication

    Да

    Флаг, который указывает, является ли конфигурация приложением для отображения в магазине ПО. Включает параметр IsApplication

    tags

    Нет

    string

    Тэг конфигурации для классификации и быстрого поиска (макс. длина: 255). Включает параметр Tag

    Браузер

    categories

    Да

    Категории конфигураций. Включает параметр CategoryId

    iconPath

    Нет

    Путь/ссылка на изображение иконки относительно сервиса хранения мультимедиа контента Включает параметр ConfigurationIconPath

    imagesPaths

    Нет

    Список путей/ссылок на прикрепленные к ПО изображения относительно сервиса хранения мультимедиа-контента. Включает параметр ConfigurationImagesPaths

    defaultVersion

    Нет

    integer(int64)

    Идентификатор актуальной версии (по умолчанию) данного ПО (мин. значение: 1). Включает параметр DefaultVersion

    Tag

    Тэг конфигурации для классификации и быстрого поиска (макс. длина: 255).

    Тип: string.

    Пример: Браузер.

    TagsListResponse

    Список тегов конфигураций.

    Имя поля Обязательное Тип Описание Пример

    tags

    Нет

    string

    Тэг конфигурации для классификации и быстрого поиска (макс. длина: 255). Включает параметр Tag

    Браузер

    meta

    Да

    Категории конфигураций. Включает параметр PaginationMetadata

    UpdatedBy

    Автор последнего изменения.

    Тип: string.

    Пример: vivanov@domain.local.

    UpdatedDate

    Дата последнего изменения.

    Тип: string.

    Пример: 2023-08-27T09:37:40.000Z.

    UploadMultimediaResponse

    Результат успешной загрузки файла.

    Имя поля Обязательное Тип Описание Пример

    fileUrl

    Да

    string

    Относительный URL для загрузки файла (макс. длина: 255). Включает параметр FileUrl

    images/open_office_aa-bb-00-11-ee.jpg

    fileSize

    Да

    integer(int32)

    Размер загруженного файла в байтах. Включает параметр FileSize

    512000

    API логического модуля «Инвентаризация»

    API-интерфейс модуля «Инвентаризация» разбит на несколько библиотек согласно назначению операций:

    Управление настройками продукта

    Для управления настройками продукта используются группы API-методов:

    • getSaltScheduleSettings — получение настроек расписания синхронизации агентов (minions) с сервером управления (master);

    • updateSaltScheduleSettings — изменение настроек расписания синхронизации агентов (minions) с сервером управления (master).

    Группа методов getSaltScheduleSettings

    Получение настроек расписания синхронизации агентов (minions) с сервером управления (master) в SaltStack.

    В зависимости от типа операции вы можете отдельно получить настройки (интервал времени и допустимую задержку выполнения операции) для каждой из них, используя следующие методы:

    • GET /v1/app/settings/salt/schedules/highstate — применение назначенных конфигураций на устройствах;

    • GET /v1/app/settings/salt/schedules/grains — инвентаризация устройств;

    • GET /v1/app/settings/salt/schedules/grains_sync — синхронизация параметров Grains;

    • GET /v1/app/settings/salt/schedules/refresh_pillar — синхронизация файлов Pillar;

    • GET /v1/app/settings/salt/schedules/user_session_history — синхронизация данных о сессиях пользователей.

    Все вышеперечисленные API-методы построены по единому принципу, поэтому ниже приведено общее описание, применимое ко всей группе GET /v1/app/settings/salt/schedules/{scheduleType}.

    Параметр пути
    Имя Описание Обязательный Тип Пример

    scheduleType

    Тип операции. Возможные значения: highstate, grains, grains_sync, refresh_pillar

    Да

    string

    highstate

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Текущие настройки расписаний для SaltStack

    {
      "seconds": 3600,
      "minutes": 60,
      "hours": 24,
      "days": 14,
      "range": {
        "start": "09:00",
        "end": "18:00"
      },
      "splay": 10,
      "createdAt": "2023-08-27T09:37:40.000Z",
      "updatedAt": "2023-08-27T09:37:40.000Z",
      "updatedBy": "author"
    }

    401

    Auth exception (ошибка аутентификации)

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "DB property with name salt.schedule.highstate.seconds required, but not found"
    }

    Группа методов updateSaltScheduleSettings

    Изменение настроек расписания синхронизации агентов (minions) с сервером управления (master) в SaltStack.

    В зависимости от типа операции вы можете отдельно изменить настройки (интервал времени и допустимую задержку выполнения операции) для каждой из них, используя следующие методы:

    • PUT /v1/app/settings/salt/schedules/highstate — применение назначенных конфигураций на устройствах;

    • PUT /v1/app/settings/salt/schedules/grains — инвентаризация устройств;

    • PUT /v1/app/settings/salt/schedules/grains_sync — синхронизация параметров Grains;

    • PUT /v1/app/settings/salt/schedules/refresh_pillar — синхронизация файлов Pillar;

    • PUT /v1/app/settings/salt/schedules/user_session_history — синхронизация данных о сессиях пользователей.

    Все вышеперечисленные API-методы построены по единому принципу, поэтому ниже приведено общее описание, применимое ко всей группе PUT /v1/app/settings/salt/schedules/{scheduleType}.

    Параметр пути
    Имя Описание Обязательный Тип Пример

    scheduleType

    Тип операции. Возможные значения: highstate, grains, grains_sync, refresh_pillar

    Да

    string

    highstate

    Параметры тела запроса
    Пример запроса
    {
      "seconds": 3600,
      "minutes": 60,
      "hours": 24,
      "days": 14,
      "range": {
        "start": "09:00",
        "end": "18:00"
      },
      "splay": 10
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    204

    Успешное применение настроек

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "One field of 'seconds', 'minutes', 'hours' or 'days' should be filled"
    }

    401

    Auth exception (ошибка аутентификации)

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "DB property with name salt.schedule.highstate.seconds required, but not found"
    }

    Управление параметрами истории активности пользователей

    Для просмотра параметров истории активности пользователей используется API-метод getUserSessionsSettings.

    Метод getUserSessionsSettings

    Получение настроек сбора истории активности пользователей.

    GET /v1/app/settings/user_sessions

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Текущие настройки сбора истории активности пользователей

    {
      "storageDaysCount": 1,
      "sessionHistoryCleanupCron": "0 0 0 */1 * *"
    }

    500

    Internal error (внутренняя ошибка)

    {
        "code": "internal_error",
        "message": "some description of the problem"
    }

    Описание параметров схемы

    BasicError

    Описание ошибки.

    Имя поля Обязательное Тип Описание Пример

    code

    Да

    string

    Код ошибки. Включает параметр ErrorCode. Допустимые значения:

    • object_already_exists — объект уже существует;

    • object_not_found — объект не найден;

    • validation_failed — ошибка валидации;

    • authorization_failed — ошибка авторизации;

    • internal_error — внутренняя ошибка

    validation_failed

    message

    Да

    String

    Сообщение об ошибке

    Template contains not resolved variables

    ErrorCode

    Код ошибки.

    Тип: string.

    Допустимые значения:

    • object_already_exists — объект уже существует;

    • object_not_found — объект не найден;

    • validation_failed — ошибка валидации;

    • authorization_failed — ошибка авторизации;

    • internal_error — внутренняя ошибка.

    SaltScheduleSettingsResponse

    Текущие настройки расписаний для SaltStack.

    Имя поля Обязательное Тип Описание Пример

    seconds

    Нет

    integer

    Определяет временной промежуток в секундах, через который будет выполняться операция. Минимальное значение: 1

    3600

    minutes

    Нет

    integer

    Определяет временной промежуток в минутах, через который будет выполняться операция. Минимальное значение: 1

    60

    hours

    Нет

    integer

    Определяет временной промежуток в часах, через который будет выполняться операция. Минимальное значение: 1

    24

    days

    Нет

    integer

    Определяет временной промежуток в днях, через который будет выполняться операция. Минимальное значение: 1

    14

    range

    Нет

    string

    Временной интервал от 00:00 до 23:59, в рамках которого будет выполняться операция согласно расписанию. Включает параметры TimeRange:

    • start — начало временного интервала в формате HH:MM (24 часа). Шаблон: ^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$;

    • end — окончание временного интервала в формате HH:MM (24 часа). Шаблон: ^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$

    • 09:00

    • 18:00

    splay

    Нет

    integer

    Определяет верхнюю границу случайной задержки перед запланированным выполнением в секундах. Например, если splay=10, ко времени следующего выполнения операции будет добавлен случайный промежуток от 0 до 10 секунд. Минимальное значение: 0. Максимальное значение: 10

    5

    SaltUpdateScheduleSettingsRequest

    Запрос на изменение настроек расписаний для SaltStack.

    Имя поля Обязательное Тип Описание Пример

    seconds

    Нет

    integer

    Определяет временной промежуток в секундах, через который будет выполняться операция. Минимальное значение: 1

    3600

    minutes

    Нет

    integer

    Определяет временной промежуток в минутах, через который будет выполняться операция. Минимальное значение: 1

    60

    hours

    Нет

    integer

    Определяет временной промежуток в часах, через который будет выполняться операция. Минимальное значение: 1

    24

    days

    Нет

    integer

    Определяет временной промежуток в днях, через который будет выполняться операция. Минимальное значение: 1

    14

    range

    Нет

    string

    Временной интервал от 00:00 до 23:59, в рамках которого будет выполняться операция согласно расписанию. Включает параметры TimeRange:

    • start — начало временного интервала в формате HH:MM (24 часа). Шаблон: ^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$;

    • end — окончание временного интервала в формате HH:MM (24 часа). Шаблон: ^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$

    • 09:00

    • 18:00

    splay

    Нет

    integer

    Определяет верхнюю границу случайной задержки перед запланированным выполнением в секундах. Например, если splay=10, ко времени следующего выполнения операции будет добавлен случайный промежуток от 0 до 10 секунд. Минимальное значение: 0. Максимальное значение: 10

    5

    createdAt

    Да

    string

    Дата и время создания параметра

    2023-08-27T09:37:40.000Z

    updatedAt

    Да

    string

    Дата и время последнего обновления параметра

    2023-08-27T09:37:40.000Z

    updatedBy

    Нет

    string

    Автор последнего изменения параметра

    author

    TimeRange

    Временной интервал от 00:00 до 23:59.

    Имя поля Обязательное Тип Описание Пример

    start

    Да

    string

    Начало временного интервала в формате HH:MM (24 часа). Шаблон: ^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$

    09:00

    end

    Да

    string

    Окончание временного интервала в формате HH:MM (24 часа). Шаблон: ^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$

    18:00

    UserSessionsSettingsResponse

    Текущие настройки хранения истории активности пользователей.

    Имя поля Обязательное Тип Описание Пример

    storageDaysCount

    Да

    integer

    Максимальное количество дней, в течение которых хранятся записи о сессиях. Минимальное значение: 1

    1

    sessionHistoryCleanupCron

    Да

    ``

    Cron-выражение в формате quartz, , задающее расписание автоматического удаления истории сессий, которые хранятся более, чем указано в параметре storageDaysCount (см. описание формата в разделе «Cron-выражение формата Quartz» документа «Руководство по эксплуатации»)

    example: 0 0 0 */1 * *

    API модуля установки ОС

    API-интерфейс модуля установки ОС разбит на несколько библиотек согласно назначению операций:

    Управление загрузочными образами

    Группа API-методов, которая используется для работы с загрузочными образами для установки ОС с носителя:

    Создание загрузочного образа

    Создание загрузочного образа ОС с указанными параметрами.

    POST /v1/bootable_images/
    Параметры тела запроса
    Пример запроса
    {
      "name": "generic x64 bios/uefi cdrom/usb",
      "description": "Универсальный ISO образ для установки на x64 машины",
      "imageFileName": "generic_bootdisk"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Созданный загрузочный образ

    {
      "bootableImageId": "e750fe40-5902-4e4d-9fd2-b587139946f5",
      "name": "generic x64 bios/uefi cdrom/usb",
      "bootableImageType": {
        "bootableImageTypeId": "genericbootimage",
        "name": "Универсальный загрузочный образ"
      },
      "status": "CREATED",
      "imageFileName": "generic_bootdisk",
      "description": "Универсальный ISO образ для установки на x64 машины",
      "architecture": {
        "architectureId": "x86_64",
        "name": "x86-64"
      },
      "installationRecipes": [
        {
          "installationRecipeId": "a7e0ab48-f954-48c9-89bb-7f343ccb60e2",
          "name": "План развертывания Astra"
        }
      ],
      "bootMode": "BIOS",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createbootableImageId.imageFileName: size must be between 1 and 255"
    }

    401

    Ошибка аутентификации

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение списка загрузочных образов

    Получение списка загрузочных образов операционных систем, с возможностью фильтрации и постраничного вывода.

    POST /v1/bootable_images/search
    Параметры запроса
    Имя Описание Обязательный Тип Пример

    page

    Общее количество страниц

    Нет

    integer

    2

    pageSize

    Количество элементов, возвращаемых в запросе

    Нет

    integer

    20

    Параметры тела запроса
    Пример запроса
    {
      "name": "generic x64 bios/uefi cdrom/usb",
      "imageFileName": "generic_bootdisk",
      "statuses": [
        "CREATED"
      ],
      "bootableImagesTypeIds": [
        "genericbootimage"
      ],
      "architectureIds": [
        "x86_64"
      ],
      "installationRecipeIds": [
        "a7e0ab48-f954-48c9-89bb-7f343ccb60e2"
      ],
      "bootModes": [
        "BIOS"
      ]
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Список загрузочных образов

    {
      "bootableImages": [
        {
          "bootableImageId": "e750fe40-5902-4e4d-9fd2-b587139946f5",
          "name": "generic x64 bios/uefi cdrom/usb",
          "bootableImageType": {
            "bootableImageTypeId": "genericbootimage",
            "name": "Универсальный загрузочный образ"
          },
          "status": "CREATED",
          "imageFileName": "generic_bootdisk",
          "description": "Универсальный ISO образ для установки на x64 машины",
          "architecture": {
            "architectureId": "x86_64",
            "name": "x86-64"
          },
          "installationRecipes": [
            {
              "installationRecipeId": "a7e0ab48-f954-48c9-89bb-7f343ccb60e2",
              "name": "План развертывания Astra"
            }
          ],
          "bootMode": "BIOS",
          "createdAt": "2024-03-18T14:53:08.865312Z",
          "createdBy": "some_user@some_domain",
          "updatedAt": "2024-03-18T14:53:08.865312Z",
          "updatedBy": "some_user@some_domain"
        }
      ],
      "meta": {}
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createbootableImageId.imageFileName: size must be between 1 and 255"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Скачивание сформированного ISO-файла

    Скачивание сформированного ISO-файла загрузочного образа ОС.

    GET /v1/bootable_images/{bootableImageId}/download
    Параметр пути
    Имя Описание Обязательный Тип Пример

    bootableImageId

    Уникальный внутренний идентификатор загрузочного образа

    Да

    string($uuid)

    5af2573a-f848-4db3-91e2-8b416d9cd833

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    ISO-файл загрузочного образа

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Управление установочными дистрибутивами

    Группа API-методов, которая используется для работы с установочными дистрибутивами операционных систем, содержащих информацию об операционной системе и путях до репозиториев с дистрибутивами:

    Удаление установочного дистрибутива

    Удаление установочного дистрибутива ОС по его уникальному идентификатору.

    DELETE /v1/installation_distros/{installationDistroId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    installationDistroId

    Уникальный внутренний идентификатор установочного дистрибутива

    Да

    string($uuid)

    01b0f9b8-2f6a-4c91-a4d9-1faf2c3d0188

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    204

    Установочный дистрибутив успешно удален

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение установочного дистрибутива

    Получение атрибутов установочного дистрибутива ОС по его уникальному идентификатору.

    GET /v1/installation_distros/{installationDistroId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    installationDistroId

    Уникальный внутренний идентификатор установочного дистрибутива

    Да

    string($uuid)

    01b0f9b8-2f6a-4c91-a4d9-1faf2c3d0188

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Установочный дистрибутив

    {
      "installationDistroId": "e750fe40-5902-4e4d-9fd2-b587139946f4",
      "name": "debian-bookworm-x86-84",
      "description": "Description or commentary",
      "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
      "kernel": "images/pxeboot/vmlinuz",
      "initrd": "images/pxeboot/initrd.img",
      "osFamily": {
        "osFamilyId": "redhat",
        "name": "Red Hat"
      },
      "architecture": {
        "architectureId": "x86_64",
        "name": "x86-64"
      },
      "osVersion": "20.04.6",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Создание установочного дистрибутива

    Создание установочного дистрибутива ОС с указанными параметрами.

    POST /v1/installation_distros
    Параметры тела запроса
    Пример запроса
    {
      "name": "debian-bookworm-x86-84",
      "description": "Description or commentary",
      "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
      "kernel": "images/pxeboot/vmlinuz",
      "initrd": "images/pxeboot/initrd.img",
      "osFamilyId": "debian",
      "architectureId": "x86_64",
      "osVersion": "20.04.6"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Созданный установочный дистрибутив

    {
      "installationDistroId": "e750fe40-5902-4e4d-9fd2-b587139946f4",
      "name": "debian-bookworm-x86-84",
      "description": "Description or commentary",
      "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
      "kernel": "images/pxeboot/vmlinuz",
      "initrd": "images/pxeboot/initrd.img",
      "osFamily": {
        "osFamilyId": "redhat",
        "name": "Red Hat"
      },
      "architecture": {
        "architectureId": "x86_64",
        "name": "x86-64"
      },
      "osVersion": "20.04.6",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationDistroId.displayName: size must be between 1 and 255"
    }

    401

    Ошибка аутентификации

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение списка установочных дистрибутивов

    Получение списка установочных дистрибутивов операционных систем, с возможностью фильтрации и постраничного вывода.

    POST /v1/installation_distros/search
    Параметры запроса
    Имя Описание Обязательный Тип Пример

    page

    Общее количество страниц

    Нет

    integer

    2

    pageSize

    Количество элементов, возвращаемых в запросе

    Нет

    integer

    20

    Параметры тела запроса
    Пример запроса
    {
      "name": "Astra Linux",
      "osFamilyIds": [
        "debian","astraLinux"
      ],
      "architectureIds": [
        "x86_64"
      ],
      "osVersion": "20.04.6"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Список установочных дистрибутивов

    {
      "installationDistros": [
        {
          "installationDistroId": "e750fe40-5902-4e4d-9fd2-b587139946f4",
          "name": "debian-bookworm-x86-84",
          "description": "Description or commentary",
          "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
          "kernel": "images/pxeboot/vmlinuz",
          "initrd": "images/pxeboot/initrd.img",
          "osFamily": {
            "osFamilyId": "redhat",
            "name": "Red Hat"
          },
          "architecture": {
            "architectureId": "x86_64",
            "name": "x86-64"
          },
          "osVersion": "20.04.6",
          "createdAt": "2024-03-18T14:53:08.865312Z",
          "createdBy": "some_user@some_domain",
          "updatedAt": "2024-03-18T14:53:08.865312Z",
          "updatedBy": "some_user@some_domain"
        }
      ],
      "meta": {}
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationDistroId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Изменение установочного дистрибутива

    Изменение установочного дистрибутива ОС по его уникальному идентификатору.

    PUT /v1/installation_distros/{installationDistroId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    installationDistroId

    Уникальный внутренний идентификатор установочного дистрибутива

    Да

    string($uuid)

    01b0f9b8-2f6a-4c91-a4d9-1faf2c3d0188

    Параметры тела запроса
    Пример запроса
    {
      "name": "debian-bookworm-x86-84",
      "description": "Description or commentary",
      "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
      "kernel": "images/pxeboot/vmlinuz",
      "initrd": "images/pxeboot/initrd.img",
      "osFamilyId": "debian",
      "architectureId": "x86_64",
      "osVersion": "20.04.6"
    }
    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Измененный установочный дистрибутив

    {
      "installationDistroId": "e750fe40-5902-4e4d-9fd2-b587139946f4",
      "name": "debian-bookworm-x86-84",
      "description": "Description or commentary",
      "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
      "kernel": "images/pxeboot/vmlinuz",
      "initrd": "images/pxeboot/initrd.img",
      "osFamily": {
        "osFamilyId": "redhat",
        "name": "Red Hat"
      },
      "architecture": {
        "architectureId": "x86_64",
        "name": "x86-64"
      },
      "osVersion": "20.04.6",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationDistroId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Управление профилями установки

    Группа API-методов, которая используется для работы с профилями установки ОС, содержащими информацию об установочном дистрибутиве и набор шаблонов для конфигурации процесса установки:

    Удаление профиля установки

    Удаление профиля установки ОС по его уникальному идентификатору.

    DELETE /v1/installation_profiles/{installationDistroId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    installationProfileId

    Уникальный внутренний идентификатор профиля установки

    Да

    string($uuid)

    13e058d9-a533-4bc9-a6b6-a4ab296f8422

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    204

    Профиль установки успешно удален

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение профиля установки

    Получение атрибутов профиля установки ОС по его уникальному идентификатору.

    GET /v1/installation_profiles/{installationProfileId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    installationProfileId

    Уникальный внутренний идентификатор профиля установки

    Да

    string($uuid)

    13e058d9-a533-4bc9-a6b6-a4ab296f8422

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Профиль установки

    {
      "installationProfileId": "4371c2ca-5f3d-46cc-959a-a4daa8581434",
      "name": "Installation profile name example",
      "description": "Description or commentary",
      "installationDistro": {
        "installationDistroId": "e750fe40-5902-4e4d-9fd2-b587139946f4",
        "name": "debian-bookworm-x86-84",
        "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
        "kernel": "images/pxeboot/vmlinuz",
        "initrd": "images/pxeboot/initrd.img"
      },
      "kernelOptions": "netcfg/choose_interface=auto",
      "provisioningMethods": [
        {
          "provisioningMethodId": "bootdisknetinst",
          "name": "Boot disk and network"
        }
      ],
      "postInstallTemplates": [
        {
          "templateId": "a480re55-9988-7a7d-9fd2-b587139946f5",
          "templateCategory": {
            "templateCategoryId": "autoinstall",
            "name": "Файл ответов"
          },
          "name": "Template name"
        }
      ],
      "autoinstallTemplate": {
        "templateId": "a480re55-9988-7a7d-9fd2-b587139946f5",
        "templateCategory": {
          "templateCategoryId": "autoinstall",
          "name": "Файл ответов"
        },
        "name": "Template name"
      },
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "inno.tech",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "inno.tech"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Создание профиля установки

    Создание профиля установки ОС с указанными параметрами.

    POST /v1/installation_profiles
    Параметры тела запроса
    Пример запроса
    {
      "name": "Installation profile name example",
      "description": "Description or commentary",
      "installationDistroId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "kernelOptions": "netcfg/choose_interface=auto",
      "provisioningMethodIds": [
        "pxe"
      ],
      "postInstallTemplateIds": [
        "bbd48136-54ad-469b-9409-e2276ab2a7ee"
      ],
      "autoinstallTemplateId": "2806b75f-1b46-4529-b978-84c713b09dbf"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Созданный профиль установки

    {
      "installationProfileId": "4371c2ca-5f3d-46cc-959a-a4daa8581434",
      "name": "Installation profile name example",
      "description": "Description or commentary",
      "installationDistro": {
        "installationDistroId": "e750fe40-5902-4e4d-9fd2-b587139946f4",
        "name": "debian-bookworm-x86-84",
        "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
        "kernel": "images/pxeboot/vmlinuz",
        "initrd": "images/pxeboot/initrd.img"
      },
      "kernelOptions": "netcfg/choose_interface=auto",
      "provisioningMethods": [
        {
          "provisioningMethodId": "bootdisknetinst",
          "name": "Boot disk and network"
        }
      ],
      "postInstallTemplates": [
        {
          "templateId": "a480re55-9988-7a7d-9fd2-b587139946f5",
          "templateCategory": {
            "templateCategoryId": "autoinstall",
            "name": "Файл ответов"
          },
          "name": "Template name"
        }
      ],
      "autoinstallTemplate": {
        "templateId": "a480re55-9988-7a7d-9fd2-b587139946f5",
        "templateCategory": {
          "templateCategoryId": "autoinstall",
          "name": "Файл ответов"
        },
        "name": "Template name"
      },
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "inno.tech",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "inno.tech"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationProfileId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение списка профилей установки

    Получение списка профилей установки OC, с возможностью фильтрации и постраничного вывода.

    POST /v1/installation_profiles/search
    Параметры запроса
    Имя Описание Обязательный Тип Пример

    page

    Общее количество страниц

    Нет

    integer

    2

    pageSize

    Количество элементов, возвращаемых в запросе

    Нет

    integer

    20

    Параметры тела запроса
    Пример запроса
    {
      "name": "installationProfileNameExample",
      "installationDistroIds": [
        "3fa85f64-5717-4562-b3fc-2c963f66afa6"
      ],
      "provisioningMethodIds": [
        "pxe"
      ]
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Список профилей установки

    {
      "installationProfiles": [
        {
          "installationProfileId": "4371c2ca-5f3d-46cc-959a-a4daa8581434",
          "name": "Installation profile name example",
          "description": "Description or commentary",
          "installationDistro": {
            "installationDistroId": "e750fe40-5902-4e4d-9fd2-b587139946f4",
            "name": "debian-bookworm-x86-84",
            "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
            "kernel": "images/pxeboot/vmlinuz",
            "initrd": "images/pxeboot/initrd.img"
          },
          "kernelOptions": "netcfg/choose_interface=auto",
          "provisioningMethods": [
            {
              "provisioningMethodId": "bootdisknetinst",
              "name": "Boot disk and network"
            }
          ],
          "postInstallTemplates": [
            {
              "templateId": "a480re55-9988-7a7d-9fd2-b587139946f5",
              "templateCategory": {
                "templateCategoryId": "autoinstall",
                "name": "Файл ответов"
              },
              "name": "Template name"
            }
          ],
          "autoinstallTemplate": {
            "templateId": "a480re55-9988-7a7d-9fd2-b587139946f5",
            "templateCategory": {
              "templateCategoryId": "autoinstall",
              "name": "Файл ответов"
            },
            "name": "Template name"
          },
          "createdAt": "2024-03-18T14:53:08.865312Z",
          "createdBy": "inno.tech",
          "updatedAt": "2024-03-18T14:53:08.865312Z",
          "updatedBy": "inno.tech"
        }
      ],
      "meta": {}
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationProfileId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Изменение профиля установки

    Изменение профиля установки ОС по его уникальному идентификатору.

    PUT /v1/installation_profiles/{installationProfileId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    installationProfileId

    Уникальный внутренний идентификатор профиля установки

    Да

    string($uuid)

    01b0f9b8-2f6a-4c91-a4d9-1faf2c3d0188

    Параметры тела запроса
    Пример запроса
    {
      "name": "Installation profile name example",
      "description": "Description or commentary",
      "installationDistroId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "kernelOptions": "netcfg/choose_interface=auto",
      "provisioningMethodIds": [
        "pxe"
      ],
      "postInstallTemplateIds": [
        "bbd48136-54ad-469b-9409-e2276ab2a7ee"
      ],
      "autoinstallTemplateId": "2806b75f-1b46-4529-b978-84c713b09dbf"
    }
    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Измененный профиль установки

    {
      "installationProfileId": "4371c2ca-5f3d-46cc-959a-a4daa8581434",
      "name": "Installation profile name example",
      "description": "Description or commentary",
      "installationDistro": {
        "installationDistroId": "e750fe40-5902-4e4d-9fd2-b587139946f4",
        "name": "debian-bookworm-x86-84",
        "repositoryUrl": "http://mirror.centos.org/centos-7/7/os/x86_64/",
        "kernel": "images/pxeboot/vmlinuz",
        "initrd": "images/pxeboot/initrd.img"
      },
      "kernelOptions": "netcfg/choose_interface=auto",
      "provisioningMethods": [
        {
          "provisioningMethodId": "bootdisknetinst",
          "name": "Boot disk and network"
        }
      ],
      "postInstallTemplates": [
        {
          "templateId": "a480re55-9988-7a7d-9fd2-b587139946f5",
          "templateCategory": {
            "templateCategoryId": "autoinstall",
            "name": "Файл ответов"
          },
          "name": "Template name"
        }
      ],
      "autoinstallTemplate": {
        "templateId": "a480re55-9988-7a7d-9fd2-b587139946f5",
        "templateCategory": {
          "templateCategoryId": "autoinstall",
          "name": "Файл ответов"
        },
        "name": "Template name"
      },
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "inno.tech",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "inno.tech"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationProfileId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Управление способами развертывания

    Группа API-методов, которая используется для работы cо способами развертывания ОС, описывающими профиль установки, метод развертывания, а также дополнительные атрибуты развертывания, необходимые для установки ОС на устройства:

    Удаление способа развертывания

    Удаление способа развертывания ОС по его уникальному идентификатору.

    DELETE /v1/installation_recipes/{installationRecipeId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    installationRecipeId

    Уникальный внутренний идентификатор способа развертывания

    Да

    string($uuid)

    018fc8fd-06d0-7b0d-b950-83b188d38f1e

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    204

    План развертывания успешно удален

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение способа развертывания

    Получение атрибутов способа развертывания ОС по его уникальному идентификатору.

    GET /v1/installation_recipes/{installationRecipeId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    installationRecipeId

    Уникальный внутренний идентификатор способа развертывания

    Да

    string($uuid)

    018fc8fd-06d0-7b0d-b950-83b188d38f1e

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    План развертывания

    {
      "installationRecipeId": "a550fe40-1102-4e4d-9fd2-b587131246f5",
      "name": "Installation recipe name",
      "description": "Installation recipe description",
      "installationProfile": {
        "installationProfileId": "a480re55-9988-7a7d-9fd2-b587139946f5",
        "name": "Installation profile"
      },
      "provisioningMethod": {
        "provisioningMethodId": "bootdisknetinst",
        "name": "Boot disk and network"
      },
      "configurationId": 101,
      "configurationVersionId": 102,
      "deploymentMode": {
        "deploymentModeId": "installation",
        "name": "Installation"
      },
      "rootHashPassword": "8743b52063cd84097a65d1633f5c74f5",
      "hashAlgorithm": "MD5",
      "isCreateUser": false,
      "userAccount": {
        "userFullName": "Ivanov Ivan Ivanovich",
        "userName": "Ivan",
        "userHashPassword": "5f4dcc3b5aa765d61d8327deb882cf99"
      },
      "domainName": "inno.local",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Создание способа развертывания

    Создание способа развертывания ОС с указанными параметрами.

    POST /v1/installation_recipes
    Параметры тела запроса
    Пример запроса
    {
      "name": "Пример имени развёртывания",
      "description": "Пример комментария к развёртыванию",
      "installationProfileId": "e120fe40-1102-4e4d-9fd2-b587139946f5",
      "provisioningMethodId": "bootdisknetinst",
      "configurationId": 101,
      "configurationVersionId": 102,
      "deploymentModeId": "installation",
      "rootHashPassword": "8743b52063cd84097a65d1633f5c74f5",
      "hashAlgorithm": "MD5",
      "isCreateUser": false,
      "userAccount": {
        "userFullName": "Ivanov Ivan Ivanovich",
        "userName": "Ivan",
        "userHashPassword": "5f4dcc3b5aa765d61d8327deb882cf99"
      },
      "domainName": "inno.local"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Созданный способ развертывания

    {
      "installationRecipeId": "a550fe40-1102-4e4d-9fd2-b587131246f5",
      "name": "Installation recipe name",
      "description": "Installation recipe description",
      "installationProfile": {
        "installationProfileId": "a480re55-9988-7a7d-9fd2-b587139946f5",
        "name": "Installation profile"
      },
      "provisioningMethod": {
        "provisioningMethodId": "bootdisknetinst",
        "name": "Boot disk and network"
      },
      "configurationId": 101,
      "configurationVersionId": 102,
      "deploymentMode": {
        "deploymentModeId": "installation",
        "name": "Installation"
      },
      "rootHashPassword": "8743b52063cd84097a65d1633f5c74f5",
      "hashAlgorithm": "MD5",
      "isCreateUser": false,
      "userAccount": {
        "userFullName": "Ivanov Ivan Ivanovich",
        "userName": "Ivan",
        "userHashPassword": "5f4dcc3b5aa765d61d8327deb882cf99"
      },
      "domainName": "inno.local",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationRecipeId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение списка планов развертывания

    Получение списка планов развертывания OC, с возможностью фильтрации и постраничного вывода.

    POST /v1/installation_recipes/search
    Параметры запроса
    Имя Описание Обязательный Тип Пример

    page

    Общее количество страниц

    Нет

    integer

    2

    pageSize

    Количество элементов, возвращаемых в запросе

    Нет

    integer

    20

    Параметры тела запроса
    Пример запроса
    {
      "name": "installationRecipeNameExample",
      "installationProfileIds": [
        "018fc943-f767-76aa-a340-2e7015bd90e3"
      ],
      "provisioningMethodIds": [
        "bootdisknetinst"
      ],
      "deploymentModeIds": [
        "installation"
      ],
      "configurationIds": [
        101
      ]
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Список планов развертывания

    {
      "installationRecipes": [
        {
          "installationRecipeId": "a550fe40-1102-4e4d-9fd2-b587131246f5",
          "name": "Installation recipe name",
          "description": "Installation recipe description",
          "installationProfile": {
            "installationProfileId": "a480re55-9988-7a7d-9fd2-b587139946f5",
            "name": "Installation profile"
          },
          "provisioningMethod": {
            "provisioningMethodId": "bootdisknetinst",
            "name": "Boot disk and network"
          },
          "configurationId": 101,
          "configurationVersionId": 102,
          "deploymentMode": {
            "deploymentModeId": "installation",
            "name": "Installation"
          },
          "rootHashPassword": "8743b52063cd84097a65d1633f5c74f5",
          "hashAlgorithm": "MD5",
          "isCreateUser": false,
          "userAccount": {
            "userFullName": "Ivanov Ivan Ivanovich",
            "userName": "Ivan",
            "userHashPassword": "5f4dcc3b5aa765d61d8327deb882cf99"
          },
          "domainName": "inno.local",
          "createdAt": "2024-03-18T14:53:08.865312Z",
          "createdBy": "some_user@some_domain",
          "updatedAt": "2024-03-18T14:53:08.865312Z",
          "updatedBy": "some_user@some_domain"
        }
      ],
      "meta": {}
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationRecipeId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Изменение способа развертывания

    Изменение способа развертывания ОС по его уникальному идентификатору.

    PUT /v1/installation_recipes/{installationRecipeId}`
    Параметр пути
    Имя Описание Обязательный Тип Пример

    installationRecipeId

    Уникальный внутренний идентификатор способа развертывания

    Да

    string($uuid)

    018fc8fd-06d0-7b0d-b950-83b188d38f1e

    Параметры тела запроса
    Пример запроса
    {
      "name": "Пример имени развёртывания",
      "description": "Пример комментария к развёртыванию",
      "installationProfileId": "e120fe40-1102-4e4d-9fd2-b587139946f5",
      "provisioningMethodId": "bootdisknetinst",
      "configurationId": 101,
      "configurationVersionId": 102,
      "deploymentModeId": "installation",
      "rootHashPassword": "8743b52063cd84097a65d1633f5c74f5",
      "hashAlgorithm": "MD5",
      "isCreateUser": false,
      "userAccount": {
        "userFullName": "Ivanov Ivan Ivanovich",
        "userName": "Ivan",
        "userHashPassword": "5f4dcc3b5aa765d61d8327deb882cf99"
      },
      "domainName": "inno.local"
    }
    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Измененный план развертывания

      "installationRecipeId": "a550fe40-1102-4e4d-9fd2-b587131246f5",
      "name": "Installation recipe name",
      "description": "Installation recipe description",
      "installationProfile": {
        "installationProfileId": "a480re55-9988-7a7d-9fd2-b587139946f5",
        "name": "Installation profile"
      },
      "provisioningMethod": {
        "provisioningMethodId": "bootdisknetinst",
        "name": "Boot disk and network"
      },
      "configurationId": 101,
      "configurationVersionId": 102,
      "deploymentMode": {
        "deploymentModeId": "installation",
        "name": "Installation"
      },
      "rootHashPassword": "8743b52063cd84097a65d1633f5c74f5",
      "hashAlgorithm": "MD5",
      "isCreateUser": false,
      "userAccount": {
        "userFullName": "Ivanov Ivan Ivanovich",
        "userName": "Ivan",
        "userHashPassword": "5f4dcc3b5aa765d61d8327deb882cf99"
      },
      "domainName": "inno.local",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationRecipeId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Управление процессом установки

    Группа API-методов, предназначенная для выполнения операций по поддержке хода процесса установки ОС.

    Получение конфигурационного файла для программы-загрузчика

    Получение конфигурационного файла для программы-загрузчика для конкретного устройства. Функция предназначена для вызова с конечных устройств для получения цепочки загрузки.

    GET /v1/boot_loader_configs
    Параметры запроса
    Имя Описание Обязательный Тип Пример

    bootloaderId

    Уникальный внутренний идентификатор программы-загрузчика

    Да

    string($uuid)

    018fc8fd-06d0-7b0d-b950-ipxe

    mac

    MAC-адрес устройства

    Да

    string

    00:1b:63:84:45:e6

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Сформированный конфигурационный файл для программы-загрузчика

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение файла скрипта для запуска в процессе установки

    Получение назначенного на устройство файла пост-установочного скрипта. Функция предназначена для вызова с конечных устройств.

    GET /v1/provisioning_scripts
    Параметр запроса
    Имя Описание Обязательный Тип Пример

    machineId

    Уникальный внутренний идентификатор устройства

    Да

    string($uuid)

    75e291ec-83fe-4fd4-bd2e-6d327801c71f

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Файл пост-установочного скрипта

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение файла автоответов

    Получение назначенного на устройство файла автоответов, заполненного параметрами согласно шаблону, который определяется по MAC-адресу, передаваемому в запросе.

    GET /v1/unattended_install_files
    Параметр запроса
    Имя Описание Обязательный Тип Пример

    mac

    MAC-адрес устройства

    Да

    string

    00:1b:63:84:45:e6

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Файл автоответов

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Фиксация статуса установки

    Фиксация состояния процесса установки ОС на новое устройство.

    POST /v1/unprovisioned_machines/{unprovisionedMachineId}/installation_process/status
    Параметр пути
    Имя Описание Обязательный Тип Пример

    unprovisionedMachineId

    Уникальный внутренний идентификатор устройства

    Да

    string($uuid)

    75e291ec-83fe-4fd4-bd2e-6d327801c71f

    Параметры запроса
    Имя Описание Обязательный Тип Пример

    status

    Статусы этапов установки ОС. Возможные значения:

    • PRESTART — подготовка к установке;

    • IN_PROCESS — в процессе установки;

    • INSTALL_ERROR — ошибка установки;

    • FINISHED — завершение установки

    Да

    string

    IN_PROCESS

    step

    Название текущего шага установки ОС

    Да

    string

    additionalInfo

    Дополнительная информация, например при ошибке установки код ответа или описание причины

    Нет

    string

    Description

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    204

    Статус успешно изменен

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Управление файлами шаблонов

    Группа API-методов, которая используется для работы с файлами шаблонов, необходимыми для установки ОС, например, для формирования конфигурационных файлов, файлов ответов и скриптов пост-установки:

    Удаление шаблона

    Удаление шаблона по его уникальному идентификатору.

    DELETE /v1/templates/{templateId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    templateId

    Уникальный внутренний идентификатор шаблона

    Да

    string($uuid)

    5af2573a-f848-4db3-91e2-8b416d9cd833

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    204

    Шаблон успешно удален

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение шаблона

    Получение атрибутов шаблона по его уникальному идентификатору.

    GET /v1/templates/{templateId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    templateId

    Уникальный внутренний идентификатор шаблона

    Да

    string($uuid)

    5af2573a-f848-4db3-91e2-8b416d9cd833

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Шаблон

    {
      "templateId": "e750fe40-5902-4e4d-9fd2-b587139946f5",
      "name": "debian-bookworm-x86-84 preseed file",
      "description": "Description or commentary",
      "osFamily": {
        "osFamilyId": "redhat",
        "name": "Red Hat"
      },
      "templateCategory": {
        "templateCategoryId": "autoinstall",
        "name": "Файл ответов"
      },
      "template": "# Preseeding only locale sets language, country and locale.\nd-i debian-installer/locale string ru_RU\n",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Создание шаблона

    Создание шаблона с указанными параметрами.

    POST /v1/templates
    Параметры тела запроса
    Пример запроса
    {
      "name": "debian-bookworm-x86-84 preseed file",
      "description": "Description or commentary",
      "osFamilyId": "debian",
      "templateCategoryId": "autoinstall",
      "template": "# Preseeding only locale sets language, country and locale.\nd-i debian-installer/locale string ru_RU\n"
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Созданный шаблон

    {
      "templateId": "e750fe40-5902-4e4d-9fd2-b587139946f5",
      "name": "debian-bookworm-x86-84 preseed file",
      "description": "Description or commentary",
      "osFamily": {
        "osFamilyId": "redhat",
        "name": "Red Hat"
      },
      "templateCategory": {
        "templateCategoryId": "autoinstall",
        "name": "Файл ответов"
      },
      "template": "# Preseeding only locale sets language, country and locale.\nd-i debian-installer/locale string ru_RU\n",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createTemplate.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Получение списка шаблонов

    Получение списка шаблонов OC, с возможностью фильтрации и постраничного вывода.

    POST /v1/templates/search
    Параметры запроса
    Имя Описание Обязательный Тип Пример

    page

    Общее количество страниц

    Нет

    integer

    2

    pageSize

    Количество элементов, возвращаемых в запросе

    Нет

    integer

    20

    Параметры тела запроса
    Пример запроса
    {
      "name": "preseed",
      "osFamilyIds": [
        "debian"
      ],
      "templateCategoryIds": [
        "autoinstall"
      ]
    }
    Тип контента

    application/json

    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Список шаблонов

    {
      "templates": [
        {
          "templateId": "e750fe40-5902-4e4d-9fd2-b587139946f5",
          "name": "debian-bookworm-x86-84 preseed file",
          "description": "Description or commentary",
          "osFamily": {
            "osFamilyId": "redhat",
            "name": "Red Hat"
          },
          "templateCategory": {
            "templateCategoryId": "autoinstall",
            "name": "Файл ответов"
          },
          "template": "# Preseeding only locale sets language, country and locale.\nd-i debian-installer/locale string ru_RU\n",
          "createdAt": "2024-03-18T14:53:08.865312Z",
          "createdBy": "some_user@some_domain",
          "updatedAt": "2024-03-18T14:53:08.865312Z",
          "updatedBy": "some_user@some_domain"
        }
      ],
      "meta": {}
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createTemplateId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Изменение шаблона

    Изменение шаблона по его уникальному идентификатору.

    PUT /v1/templates/{templateId}
    Параметр пути
    Имя Описание Обязательный Тип Пример

    templateId

    Уникальный внутренний идентификатор шаблона

    Да

    string($uuid)

    018fc8fd-06d0-7b0d-b950-83b188d38f1e

    Параметры тела запроса
    Пример запроса
    {
      "name": "debian-bookworm-x86-84 preseed file",
      "description": "Description or commentary",
      "osFamilyId": "debian",
      "templateCategoryId": "autoinstall",
      "template": "# Preseeding only locale sets language, country and locale.\nd-i debian-installer/locale string ru_RU\n"
    }
    Ответы
    Код Сообщение Тип данных / объект схемы (DTO) Пример

    200

    Измененный план развертывания

    {
      "templateId": "e750fe40-5902-4e4d-9fd2-b587139946f5",
      "name": "debian-bookworm-x86-84 preseed file",
      "description": "Description or commentary",
      "osFamily": {
        "osFamilyId": "redhat",
        "name": "Red Hat"
      },
      "templateCategory": {
        "templateCategoryId": "autoinstall",
        "name": "Файл ответов"
      },
      "template": "# Preseeding only locale sets language, country and locale.\nd-i debian-installer/locale string ru_RU\n",
      "createdAt": "2024-03-18T14:53:08.865312Z",
      "createdBy": "some_user@some_domain",
      "updatedAt": "2024-03-18T14:53:08.865312Z",
      "updatedBy": "some_user@some_domain"
    }

    400

    Incorrect request params (некорректные параметры запроса)

    {
      "code": "validation_failed",
      "message": "createInstallationRecipeId.displayName: size must be between 3 and 256"
    }

    401

    Ошибка аутентификации

    404

    Объект не найден

    {
      "code": "object_not_found",
      "message": "string"
    }

    422

    Невозможно обработать запрос

    {
      "code": "invalid_entity",
      "message": "string"
    }

    500

    Внутренняя ошибка

    {
      "code": "internal_error",
      "message": "string"
    }

    Описание параметров схемы

    Architecture

    Архитектура процессора.

    Имя поля Обязательное Тип Описание Пример

    architectureId

    Да

    string

    Уникальный внутренний идентификатор архитектуры процессора

    x86_64

    name

    Да

    string

    Наименование архитектуры процессора

    x86-64

    BasicError

    Информация об ошибке.

    Имя поля Обязательное Тип Описание Пример

    code

    Да

    string

    Код ошибки. Включает параметр ErrorCode. Допустимые значения:

    • object_already_exists — объект уже существует;

    • object_not_found — объект не найден;

    • validation_failed — ошибка валидации;

    • authorization_failed — ошибка авторизации;

    • internal_error — внутренняя ошибка

    validation_failed

    message

    Да

    string

    Сообщение об ошибке

    Template contains not resolved variables

    BootableImageBootMode

    Поддерживаемые режимы загрузки на целевом устройстве.

    Возможные значения: BIOS, UEFI, ALL.

    Тип: string.

    Пример: BIOS.

    BootableImageCreateRequest

    Параметры для создания загрузочного образа.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Наименование загрузочного образа

    generic x64 bios/uefi cdrom/usb

    description

    Нет

    string

    Описание загрузочного образа, комментарии (мин. длина: 1)

    Универсальный ISO-образ для установки на x64 машины

    imageFileName

    Нет

    string

    Имя ISO-файла загрузочного образа (мин. длина: 1; макс. длина: 255)

    generic_bootdisk

    BootableImagesPagedResponse

    Атрибуты загрузочного образа.

    Имя поля Обязательное Тип Описание Пример

    bootableImages

    Да

    Список загрузочных образов. Включает параметр: bootableImageResponse

    meta

    Да

    Метаданные постраничного вывода

    BootableImageResponse

    Атрибуты загрузочного образа.

    Имя поля Обязательное Тип Описание Пример

    bootableImageId

    Да

    string($uuid)

    Уникальный внутренний идентификатор загрузочного образа

    e750fe40-5902-4e4d-9fd2-b587139946f5

    name

    Да

    string

    Наименование загрузочного образа

    generic x64 bios/uefi cdrom/usb

    bootableImageType

    Нет

    string

    Тип установочного образа. Включает параметр bootableImageType

    status

    Да

    string

    Статусы подготовки загрузочного образа. Включает параметр BootableImageStatus

    CREATED

    imageFileName

    Нет

    string

    Имя ISO-файла загрузочного образа (мин. длина: 1; макс. длина: 255)

    generic_bootdisk

    description

    Нет

    string

    Описание загрузочного образа, комментарии (мин. длина: 1)

    Универсальный ISO-образ для установки на x64 машины

    architecture

    Да

    Архитектура процессора. Включает параметр Architecture

    installationRecipes

    Нет

    Список планов развертываний, на базе которых был сформирован загрузочный образ Включает параметр InstallationRecipePreview

    bootMode

    Да

    string

    Поддерживаемые режимы загрузки на целевом устройстве. Включает параметр BootableImageBootMode

    BIOS

    createdAt

    Да

    string($date-time)

    Дата и время создания загрузочного образа

    2024-03-18T14:53:08.865312Z

    createdBy

    Да

    string

    Пользователь, создавший загрузочный образ

    vivanov@domain.local

    updatedAt

    Нет

    string($date-time)

    Дата и время последнего изменения загрузочного образа

    2024-03-18T14:53:08.865312Z

    updatedBy

    Нет

    string

    Пользователь, совершивший последнее изменения загрузочного образа

    vivanov@domain.local

    BootableImagesSearchRequest

    Параметры для поиска загрузочных образов.

    Имя поля Обязательное Тип Описание Пример

    name

    Нет

    string

    Наименование загрузочного образа, контекстный поиск

    generic x64 bios/uefi cdrom/usb

    imageFileName

    Нет

    string

    Имя ISO-файла загрузочного образа (мин. длина: 3; макс. длина: 255)

    generic_bootdisk

    statuses

    Нет

    string

    Статусы подготовки загрузочного образа. Включает параметр BootableImageStatus

    CREATED

    bootableImagesTypeIds

    Нет

    string

    Список идентификаторов типов загрузочных образов (мин. длина: 1)

    genericbootimage

    architectureIds

    Нет

    string

    Список идентификаторов архитектур процессора (мин. длина: 1)

    x86_64

    installationRecipeIds

    Нет

    string($uuid)

    Список идентификаторов планов развертываний

    a7e0ab48-f954-48c9-89bb-7f343ccb60e2

    bootModes

    Нет

    string

    Поддерживаемые режимы загрузки на целевом устройстве. Включает параметр BootableImageBootMode

    BIOS

    BootableImageStatus

    Статусы подготовки загрузочного образа.

    Возможные значения: CREATED, STARTED, READY, FAILED.

    Тип: string.

    Пример: CREATED.

    BootableImageType

    Тип загрузочного образа.

    Имя поля Обязательное Тип Описание Пример

    bootableImageTypeId

    Да

    string

    Уникальный внутренний идентификатор типа загрузочного образа

    genericbootimage

    name

    Да

    string

    Наименование типа загрузочного образа

    Универсальный загрузочный образ

    DeploymentMode

    Режим развертывания ОС, например, установка с нуля или переустановка

    Имя поля Обязательное Тип Описание Пример

    deploymentModeId

    Да

    string

    Уникальный внутренний идентификатор режима развертывания

    installation

    name

    Да

    string

    Наименование режима развертывания

    Installation

    ErrorCode

    Код ошибки.

    Тип: string.

    Допустимые значения:

    • object_already_exists — объект уже существует;

    • object_not_found — объект не найден;

    • validation_failed — ошибка валидации;

    • authorization_failed — ошибка авторизации;

    • internal_error — внутренняя ошибка.

    HashAlgorithm

    Поддерживаемые алгоритмы хеширования.

    Тип: string.

    Допустимые значения:

    • MD5;

    • SHA512.

    InstallationDistroCreateRequest

    Параметры для создания установочного дистрибутива.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Наименование установочного дистрибутива

    debian-bookworm-x86-84

    description

    Нет

    string

    Описание установочного дистрибутива, комментарии

    Description or commentary

    repositoryUrl

    Да

    string

    URL репозитория, где размещается установочный дистрибутив (мин. длина: 1)

    http://mirror.centos.org/centos-7/7/os/x86_64/

    kernel

    Да

    string

    Путь и имя файла внутри репозитория с указанным URL, в котором содержится ядро ОС

    images/pxeboot/vmlinuz

    initrd

    Да

    string

    Путь и имя файла внутри репозитория с указанным URL, содержащего образ временной корневой системы

    images/pxeboot/initrd.img

    osFamily

    Да

    Семейство ОС. Включает параметр OsFamily

    architectureId

    Да

    string

    Идентификатор архитектуры процессора, которую поддерживает создаваемый установочный дистрибутив (мин. длина: 1)

    x86_64

    osVersion

    Да

    string

    Версия ОС

    20.04.6

    InstallationDistrosPagedResponse

    Список установочных дистрибутивов с метаданными постраничного вывода.

    Имя поля Обязательное Тип Описание Пример

    installationDistros

    Да

    Список установочных дистрибутивов. Включает параметр: InstallationDistrosResponse

    meta

    Да

    Метаданные постраничного вывода

    InstallationDistroPreview

    Предпросмотр установочного дистрибутива.

    Имя поля Обязательное Тип Описание Пример

    installationDistroId

    Да

    string($uuid)

    Уникальный внутренний идентификатор установочного дистрибутива

    e750fe40-5902-4e4d-9fd2-b587139946f4

    name

    Да

    string

    Наименование установочного дистрибутива

    debian-bookworm-x86-84

    repositoryUrl

    Да

    string

    URL репозитория, где размещается установочный дистрибутив

    http://mirror.centos.org/centos-7/7/os/x86_64/

    kernel

    Да

    string

    Путь и имя файла внутри репозитория с указанным URL, в котором содержится ядро ОС

    images/pxeboot/vmlinuz

    initrd

    Да

    string

    Путь и имя файла внутри репозитория с указанным URL, содержащего образ временной корневой системы

    images/pxeboot/initrd.img

    InstallationDistroResponse

    Атрибуты установочного дистрибутива.

    Имя поля Обязательное Тип Описание Пример

    installationDistroId

    Да

    string($uuid)

    Уникальный внутренний идентификатор установочного дистрибутива

    e750fe40-5902-4e4d-9fd2-b587139946f4

    name

    Да

    string

    Наименование установочного дистрибутива

    debian-bookworm-x86-84

    description

    Нет

    string

    Описание установочного дистрибутива, комментарии

    Description or commentary

    repositoryUrl

    Да

    string

    URL репозитория, где размещается установочный дистрибутив

    http://mirror.centos.org/centos-7/7/os/x86_64/

    kernel

    Да

    string

    Путь и имя файла внутри репозитория с указанным URL, в котором содержится ядро ОС

    images/pxeboot/vmlinuz

    initrd

    Да

    string

    Путь и имя файла внутри репозитория с указанным URL, содержащего образ временной корневой системы

    images/pxeboot/initrd.img

    osFamily

    Да

    Семейство ОС. Включает параметр OsFamily

    architecture

    Да

    Архитектура процессора. Включает параметр Architecture

    osVersion

    Да

    string

    Версия ОС

    20.04.6

    createdAt

    Да

    string($date-time)

    Дата и время создания установочного дистрибутива

    2024-03-18T14:53:08.865312Z

    createdBy

    Да

    string

    Пользователь, создавший установочный дистрибутив

    vivanov@domain.local

    updatedAt

    Нет

    string($date-time)

    Дата и время последнего изменения установочного дистрибутива

    2024-03-18T14:53:08.865312Z

    updatedBy

    Нет

    string

    Пользователь, совершивший последнее изменение установочного дистрибутива

    vivanov@domain.local

    InstallationDistrosSearchRequest

    Параметры для поиска установочных дистрибутивов.

    Имя поля Обязательное Тип Описание Пример

    name

    Нет

    string

    Наименование установочного дистрибутива (мин. длина: 3; макс. длина: 255)

    Astra Linux

    osFamilyIds

    Нет

    string

    Список идентификаторов семейств ОС

    0201b593-59ef-4eec-9ed9-00376b6637f0

    architectureIds

    Нет

    string

    Список идентификаторов архитектур процессора

    45a93cd5-0922-4014-a45e-f8281b176447

    osVersion

    Нет

    string

    Версия ОС (мин. длина: 3; макс. длина: 255)

    20.04.6

    InstallationDistroUpdateRequest

    Список установочных дистрибутивов с метаданными постраничного вывода.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Наименование установочного дистрибутива (мин. длина: 1)

    debian-bookworm-x86-84

    description

    Нет

    string

    Описание установочного дистрибутива, комментарии

    Description or commentary

    repositoryUrl

    Да

    string

    URL репозитория, где размещается установочный дистрибутив (мин. длина: 1)

    `http://mirror.centos.org/centos-7/7/os/x86_64/`

    kernel

    Да

    string

    Путь и имя файла внутри репозитория с указанным URL, в котором содержится ядро ОС (мин. длина: 1)

    images/pxeboot/vmlinuz

    initrd

    Да

    string

    Путь и имя файла внутри репозитория с указанным URL, содержащего образ временной корневой системы (мин. длина: 1)

    images/pxeboot/initrd.img

    osFamilyId

    Да

    string

    Идентификатор семейства ОС, к которому принадлежит создаваемый установочный дистрибутив (мин. длина: 1)

    debian

    architectureId

    Да

    string

    Идентификатор семейства ОС, к которому принадлежит создаваемый установочный дистрибутив (мин. длина: 1)

    x86_64

    osVersion

    Да

    string

    Версия ОС (мин. длина: 1)

    20.04.6

    InstallationProfileCreateRequest

    Параметры для создания профиля установки.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Наименование профиля установки (мин. длина: 1)

    Installation profile name example

    description

    Нет

    string

    Описание профиля установки, комментарии

    Description or commentary

    installationDistroId

    Да

    string($uuid)

    Идентификатор установочного дистрибутива

    kernelOptions

    Нет

    string

    Список дополнительных опций, с которыми будет запускаться ядро из установочного дистрибутива (мин. длина: 1)

    netcfg/choose_interface=auto

    provisioningMethodIds

    Да

    string

    Список идентификаторов поддерживаемых методов установки ОС (мин. длина: 1)

    pxe

    postInstallTemplateIds

    Нет

    string($uuid)

    Список идентификаторов шаблонов скриптов пост-установки

    bbd48136-54ad-469b-9409-e2276ab2a7ee

    autoinstallTemplateId

    Да

    string($uuid)

    Идентификатор шаблона файла ответов

    2806b75f-1b46-4529-b978-84c713b09dbf

    InstallationProfilePagedResponse

    Список профилей установки с метаданными постраничного вывода.

    Имя поля Обязательное Тип Описание Пример

    installationProfiles

    Да

    Список установочных дистрибутивов. Включает параметр: InstallationProfileResponse

    meta

    Да

    Метаданные постраничного вывода

    InstallationProfilePreview

    Предпросмотр профиля установки.

    Имя поля Обязательное Тип Описание Пример

    installationProfileId

    Да

    string($uuid)

    Уникальный внутренний идентификатор профиля установки

    a480re55-9988-7a7d-9fd2-b587139946f5

    name

    Да

    string

    Наименование профиля установки

    Installation profile

    InstallationProfileResponse

    Атрибуты профиля установки.

    Имя поля Обязательное Тип Описание Пример

    installationProfileId

    Да

    string($uuid)

    Уникальный внутренний идентификатор профиля установки

    4371c2ca-5f3d-46cc-959a-a4daa8581434

    name

    Да

    string

    Наименование профиля установки

    Installation profile name example

    description

    Нет

    string

    Описание профиля установки, комментарии

    Description or commentary

    installationDistro

    Да

    Предпросмотр установочного дистрибутива. Включает параметр InstallationDistroPreview

    kernelOptions

    Нет

    string

    Список дополнительных опций, с которыми будет запускаться ядро из установочного дистрибутива (мин. длина: 1)

    netcfg/choose_interface=auto

    provisioningMethodIds

    Да

    Список поддерживаемых методов установки ОС. Включает параметр ProvisioningMethod

    postInstallTemplates

    Нет

    Список шаблонов скриптов пост-установки. Включает параметр TemplatePreview

    autoinstallTemplate

    Да

    Предпросмотр шаблона. Включает параметр TemplatePreview

    createdAt

    Да

    string($date-time)

    Дата и время создания профиля установки

    2024-03-18T14:53:08.865312Z

    createdBy

    Да

    string

    Пользователь, создавший создавший профиль установки

    vivanov@domain.local

    updatedAt

    Нет

    string($date-time)

    Дата и время последнего изменения профиля установки

    2024-03-18T14:53:08.865312Z

    updatedBy

    Нет

    string

    Пользователь, совершивший последнее изменение профиля установки

    vivanov@domain.local

    InstallationProfileSearchRequest

    Параметры для поиска профилей установки.

    Имя поля Обязательное Тип Описание Пример

    name

    Нет

    string

    Наименование профиля установки (мин. длина: 3; макс. длина: 255)

    installationProfileNameExample

    installationDistroIds

    Нет

    string($uuid)

    Список идентификаторов установочных дистрибутивов

    provisioningMethodIds

    Нет

    string

    Список идентификаторов методов установки ОС (мин. длина: 1)

    pxe

    InstallationProfileUpdateRequest

    Параметры для изменения профиля установки.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Наименование профиля установки (мин. длина: 1)

    Installation profile name example

    description

    Нет

    string

    Описание профиля установки, комментарии

    Description or commentary

    installationDistroId

    Да

    string($uuid)

    Идентификатор установочного дистрибутива

    kernelOptions

    Нет

    string

    Список дополнительных опций, с которыми будет запускаться ядро из установочного дистрибутива (мин. длина: 1)

    netcfg/choose_interface=auto

    provisioningMethodIds

    Да

    string

    Список поддерживаемых методов установки ОС (мин. длина: 1)

    pxe

    postInstallTemplateIds

    Нет

    string($uuid)

    Список идентификаторов шаблонов скриптов пост-установки

    bbd48136-54ad-469b-9409-e2276ab2a7ee

    autoinstallTemplateId

    Да

    string($uuid)

    Идентификатор шаблона файла ответов

    2806b75f-1b46-4529-b978-84c713b09dbf

    InstallationRecipeCreateRequest

    Параметры для создания способа развертывания.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Наименование способа развертывания (мин. длина: 1)

    Пример имени развёртывания

    description

    Нет

    string

    Описание способа развертывания, комментарии

    Пример комментария к развёртыванию

    installationProfileId

    Да

    string($uuid)

    Идентификатор профиля установки, который используется при установке ОС на устройства

    e120fe40-1102-4e4d-9fd2-b587139946f5

    provisioningMethodId

    Да

    string

    Идентификатор метода установки, по которому производится установка ОС на устройства (мин. длина: 1)

    e120fe40-1102-4e4d-9fd2-b587139946f5

    configurationId

    Нет

    integer($int64)

    Идентификатор конфигурации, на которую производится установка ОС

    101

    configurationVersionId

    Нет

    integer($int64)

    Версия конфигурации, на которую производится установка ОС

    102

    deploymentModeId

    Да

    string

    Идентификатор режима развертывания ОС (мин. длина: 1)

    installation

    rootHashPassword

    Нет

    string

    Хеш пароля суперпользователя (мин. длина: 1)

    8743b52063cd84097a65d1633f5c74f5

    hashAlgorithm

    Нет

    string

    Поддерживаемые алгоритмы хеширования (MD5, SHA512). Включает параметр: HashAlgorithm

    MD5

    isCreateUser

    Нет

    boolean

    Признак необходимости создания локального пользователя

    false

    userAccount

    Нет

    Данные локального пользователя. Включает параметр: UserAccount

    domainName

    Нет

    string

    Имя домена по умолчанию; используется, если для устройства не указан домен (мин. длина: 1)

    inno.local

    InstallationRecipePagedResponse

    Список профилей установки с метаданными постраничного вывода.

    Имя поля Обязательное Тип Описание Пример

    installationProfiles

    Да

    Список установочных дистрибутивов. Включает параметр: InstallationProfileResponse

    meta

    Да

    Метаданные постраничного вывода

    InstallationRecipePreview

    Предпросмотр способа развертывания.

    Имя поля Обязательное Тип Описание Пример

    installationRecipeId

    Да

    string($uuid)

    Уникальный внутренний идентификатор способа развертывания

    a7e0ab48-f954-48c9-89bb-7f343ccb60e2

    name

    Да

    string

    Наименование способа развертывания

    План развертывания Astra

    InstallationRecipeResponse

    Атрибуты способа развертывания.

    Имя поля Обязательное Тип Описание Пример

    installationRecipeId

    Да

    string($uuid)

    Уникальный внутренний идентификатор способа развертывания

    a550fe40-1102-4e4d-9fd2-b587131246f5

    name

    Да

    string

    Наименование способа развертывания

    Пример имени развёртывания

    description

    Нет

    string

    Описание способа развертывания, комментарии

    Installation recipe description

    installationProfile

    Да

    Предпросмотр профиля установки. Включает параметр InstallationProfilePreview

    provisioningMethodIds

    Да

    Список поддерживаемых методов установки ОС. Включает параметр ProvisioningMethod

    configurationId

    Нет

    integer($int64)

    Идентификатор конфигурации, на которую производится установка ОС

    101

    configurationVersionId

    Нет

    integer($int64)

    Версия конфигурации, на которую производится установка ОС

    102

    deploymentModeId

    Да

    string

    Режим развертывания ОС, например, установка с нуля или переустановка. Включает параметр: DeploymentMode

    installation

    rootHashPassword

    Нет

    string

    Хеш пароля суперпользователя

    8743b52063cd84097a65d1633f5c74f5

    hashAlgorithm

    Нет

    string

    Поддерживаемые алгоритмы хеширования (MD5, SHA512). Включает параметр: HashAlgorithm

    MD5

    isCreateUser

    Нет

    boolean

    Признак необходимости создания локального пользователя

    false

    userAccount

    Нет

    Данные локального пользователя. Включает параметр: UserAccount

    domainName

    Нет

    string

    Имя домена по умолчанию; используется, если для устройства не указан домен (мин. длина: 1)

    inno.local

    createdAt

    Да

    string($date-time)

    Дата и время создания способа развертывания

    2024-03-18T14:53:08.865312Z

    createdBy

    Да

    string

    Пользователь, создавший план развертывания

    vivanov@domain.local

    updatedAt

    Нет

    string($date-time)

    Дата и время последнего изменения способа развертывания

    2024-03-18T14:53:08.865312Z

    updatedBy

    Нет

    string

    Пользователь, совершивший последнее изменение способа развертывания

    vivanov@domain.local

    InstallationRecipeSearchRequest

    Параметры для поиска способа развертывания.

    Имя поля Обязательное Тип Описание Пример

    name

    Нет

    string

    Наименование способа развертывания, контекстный поиск (мин. длина: 3; макс. длина: 255)

    installationRecipeNameExample

    installationProfileIds

    Нет

    string($uuid)

    Список идентификаторов профилей установки

    018fc943-f767-76aa-a340-2e7015bd90e3

    provisioningMethodIds

    Нет

    string

    Список идентификаторов методов установки ОС (мин. длина: 1)

    bootdisknetinst

    deploymentModeIds

    Нет

    string

    Список идентификаторов режимов развертывания ОС (мин. длина: 1)

    installation

    configurationIds

    Нет

    integer($int64)

    Список идентификаторов конфигураций

    101

    InstallationRecipeUpdateRequest

    Параметры для изменения способа развертывания.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Наименование способа развертывания (мин. длина: 1)

    Пример имени развёртывания

    description

    Нет

    string

    Описание способа развертывания, комментарии

    Пример комментария к развёртыванию

    installationProfileId

    Да

    string($uuid)

    Идентификатор профиля установки, который будет использоваться при установке ОС на устройства

    e120fe40-1102-4e4d-9fd2-b587139946f5

    provisioningMethodId

    Да

    Идентификатор метода установки, по которому будет производиться установка ОС на устройства (мин. длина: 1)

    bootdisknetinst

    configurationId

    Нет

    integer($int64)

    Идентификатор конфигурации, на которую производится установка ОС

    101

    configurationVersionId

    Нет

    integer($int64)

    Версия конфигурации, на которую производится установка ОС

    102

    deploymentModeId

    Да

    string

    Режим развертывания ОС, например, установка с нуля или переустановка

    installation

    rootHashPassword

    Нет

    string

    Хеш пароля суперпользователя

    8743b52063cd84097a65d1633f5c74f5

    hashAlgorithm

    Нет

    string

    Поддерживаемые алгоритмы хеширования (MD5, SHA512). Включает параметр: HashAlgorithm

    MD5

    isCreateUser

    Нет

    boolean

    Признак необходимости создания локального пользователя

    false

    userAccount

    Нет

    Данные локального пользователя. Включает параметр: UserAccount

    domainName

    Нет

    string

    Имя домена по умолчанию; используется, если для устройства не указан домен (мин. длина: 1)

    inno.local

    OsFamily

    Семейство ОС.

    Имя поля Обязательное Тип Описание Пример

    osFamilyId

    Да

    string

    Уникальный внутренний идентификатор семейства ОС

    redhat

    name

    Да

    string

    Наименование семейства ОС

    Red Hat

    ProvisioningMethod

    Метод установки ОС, определяющий, каким образом будет производиться установка, например, полностью по сети с использованием технологии PXE или с автономного носителя.

    Имя поля Обязательное Тип Описание Пример

    provisioningMethodId

    Да

    string

    Уникальный внутренний идентификатор метода установки

    bootdisknetinst

    name

    Да

    string

    Наименование метода установки

    Boot disk and network

    TemplateCategory

    Категория шаблона.

    Имя поля Обязательное Тип Описание Пример

    templateCategoryId

    Да

    string

    Уникальный внутренний идентификатор категории шаблона

    autoinstall

    name

    Да

    string

    Наименование категории шаблона

    Файл ответов

    TemplateCreateRequest

    Параметры для создания шаблона.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Наименование шаблона (мин. длина: 1)

    debian-bookworm-x86-84 preseed file

    description

    Нет

    string

    Описание шаблона, комментарии

    Description or commentary

    osFamilyId

    Нет

    string

    Идентификатор семейства ОС, к которому применим создаваемый шаблон (мин. длина: 1)

    debian

    templateCategoryId

    Да

    string

    Идентификатор категории шаблона (мин. длина: 1)

    autoinstall

    template

    Да

    string

    Содержимое шаблона (мин. длина: 1)

    # Preseeding only locale sets language, country and locale. d-i debian-installer/locale string ru_RU

    TemplatePagedResponse

    Список шаблонов с метаданными постраничного вывода.

    Имя поля Обязательное Тип Описание Пример

    templates

    Да

    Список установочных дистрибутивов. Включает параметр: TemplateResponse

    meta

    Да

    Метаданные постраничного вывода

    TemplatePreview

    Предпросмотр шаблона.

    Имя поля Обязательное Тип Описание Пример

    templateId

    Да

    string($uuid)

    Уникальный внутренний идентификатор шаблона

    a480re55-9988-7a7d-9fd2-b587139946f5

    templateCategory

    Да

    Категория шаблона. Включает параметр TemplateCategory

    name

    Да

    string

    Наименование шаблона

    Template name

    TemplateResponse

    Атрибуты шаблона.

    Имя поля Обязательное Тип Описание Пример

    templateId

    Да

    string($uuid)

    Уникальный внутренний идентификатор шаблона

    e750fe40-5902-4e4d-9fd2-b587139946f5

    name

    Да

    string

    Наименование шаблона

    debian-bookworm-x86-84 preseed file

    description

    Нет

    string

    Описание шаблона, комментарии

    Description or commentary

    osFamilyId

    Нет

    Семейство ОС. Включает параметр OsFamily

    templateCategoryId

    Да

    Категория шаблона. Включает параметр TemplateCategory

    template

    Да

    string

    Содержимое шаблона

    # Preseeding only locale sets language, country and locale. d-i debian-installer/locale string ru_RU

    createdAt

    Да

    string($date-time)

    Дата и время создания шаблона

    2024-03-18T14:53:08.865312Z

    createdBy

    Да

    string

    Пользователь, создавший шаблон

    vivanov@domain.local

    updatedAt

    Нет

    string($date-time)

    Дата и время последнего изменения шаблона

    2024-03-18T14:53:08.865312Z

    updatedBy

    Нет

    string

    Пользователь, совершивший последнее изменение шаблона

    vivanov@domain.local

    TemplateSearchRequest

    Параметры для поиска шаблона.

    Имя поля Обязательное Тип Описание Пример

    name

    Нет

    string

    Наименование шаблона (мин. длина: 3; макс. длина: 255)

    preseed

    osFamilyIds

    Нет

    string($uuid)

    Список идентификаторов семейств ОС (мин. длина: 1)

    debian

    templateCategoryIds

    Нет

    string

    Список идентификаторов категорий шаблонов (мин. длина: 1)

    autoinstall

    TemplateUpdateRequest

    Параметры для изменения шаблона.

    Имя поля Обязательное Тип Описание Пример

    name

    Да

    string

    Наименование шаблона (мин. длина: 1)

    debian-bookworm-x86-84 preseed file

    description

    Нет

    string

    Описание шаблона, комментарии

    Description or commentary

    osFamilyId

    Нет

    string

    Идентификатор семейства операционных систем, к которому применим создаваемый шаблон (мин. длина: 1)

    debian

    templateCategoryId

    Да

    string

    Идентификатор категории шаблона (мин. длина: 1)

    autoinstall

    template

    Да

    string

    Содержимое шаблона (мин. длина: 1)

    # Preseeding only locale sets language, country and locale. d-i debian-installer/locale string ru_RU

    UserAccount

    Данные локального пользователя.

    Имя поля Обязательное Тип Описание Пример

    userFullName

    Да

    string

    Полное имя пользователя (мин. длина: 1)

    Ivanov Ivan Ivanovich

    userName

    Да

    string

    Имя пользователя (мин. длина: 1)

    Ivan

    userHashPassword

    Да

    string

    Хеш пароля пользователя (мин. длина: 1)

    5f4dcc3b5aa765d61d8327deb882cf99