Перейти к содержанию

Запуск массового обновления аппаратного обеспечения в фоновом режиме

Запрос

Тип Метод
POST /sonar/hardware/mass-gather-start

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

Для каждого элемента запроса создаётся отдельная фоновая задача (async_job).

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

Пример запроса

POST

http://127.0.0.1/cruddy/v2/sonar/hardware/mass-gather-start

Тело запроса:

Метод принимает массив объектов, соответствующих структуре EnrichmentInfo.

Поле _, указанное в OpenAPI-схеме, используется только для описания массива в документации. Фактически передаётся значение этого поля — массив объектов.

Пример тела запроса

[
  {
    "<параметр>": "<значение>"
  },
  {
    "<параметр>": "<значение>"
  }
]

Примечание: Каждый элемент массива соответствует структуре EnrichmentInfo, используемой методом обновления данных об аппаратном обеспечении.

Успешный ответ

Статус код: 200 – массовое обновление аппаратного обеспечения в фоновом режиме успешно запущено.

Формат: JSON.

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

Параметр Тип данных Описание
transaction_ids Array<string> Список ID созданных фоновых задач

Элементы массива transaction_ids имеют формат UUID. Для каждого элемента запроса создаётся отдельная фоновая задача.

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

{
  "transaction_ids": [
    "5b2442b2-2e2c-47f7-9c9e-928fd26087af",
    "a9893d60-04b0-4123-b188-b95106ec71c3"
  ]
}

Другие возможные ответы

Код Ответ Описание
400 Bad Request Неверные параметры запроса
500 Internal Server Error Ошибка сервера

Возможные ошибки:

  • 400 — "missing uid header" — отсутствует заголовок Pgr-User-ID;
  • 400 — "Pgr-User-Id should be uuid format" — неверный формат Pgr-User-ID;
  • 400 — "Bad Request" — неверный тип параметра запроса либо отсутствует обязательный параметр;
  • 400 — "empty request" — пустой запрос или передан пустой массив;
  • 400 — "credential id is empty" — учётная запись не задана;
  • 400 — "asset id is empty" — актив не задан;
  • 400 — "type is empty" — тип подключения не задан;
  • 400 — "asset id should be uuid format" — недопустимый формат ID актива;
  • 400 — "credential id should be uuid format" — недопустимый формат ID учётной записи;
  • 400 — "invalid type" — недопустимое значение типа подключения;
  • 500 — "Internal Server Error" — ошибки сервера.
Пример ответа с кодом 400

{
  "error": "empty request"
}
Пример ответа с кодом 500

{
  "error": "Internal Server Error"
}