Массовое обновление наборов правил соответствия ПО
Запрос
| Тип | Метод |
|---|---|
POST |
/rule_sets/mass_update |
Описание: При выполнении запроса выбранным параметрам наборов правил соответствия ПО будут присвоены новые значения.
Работает по принципу частичного обновления, т.е. будут обновлены только те поля модели которые были переданы в запросе.
Всем объектам будут присвоены одинаковые значения в переданных полях.
Изменение связей не поддерживается.
Метод транзакционный, если произошла ошибка изменения одного из объектов, откатываются все изменения.
Пример запроса
POST
http://127.0.0.1/cruddy/v2/rule_sets/mass_update
Тело запроса:
| Параметр | Тип данных | Обязательность | Описание |
|---|---|---|---|
| ids | Array<string> |
Required | Список ID объектов |
| fields | DefaultObject |
Required | Словарь новых значений полей модели RuleSet |
| fields{name} | string |
Optional | Название набора правил соответствия ПО |
| fields{create_service_asset_findings} | boolean |
Optional | Создавать ли инцидент по результатам сработки правила |
Пример тела запроса
{
"ids": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
],
"fields": {
"name": "New rule set",
"create_service_asset_findings": false
}
}
Успешный ответ
Статус код: 200 – объекты успешно изменены.
Другие возможные ответы
| Код | Ответ | Описание |
|---|---|---|
400 |
1. Bad Request2. ids is empty3. fields is empty4. exceeded maximum length for a value5. id should be uuid format |
1. Неверный тип параметра запроса, либо отсутствует обязательный параметр 2. Список ID не передан 3. Новые значения полей не переданы 4. Значение превышает максимально допустимую длину 5. Недопустимый формат ID |
404 |
not found |
Объект не найден |
409 |
name_already_used |
Попытка создать объект с существующим уникальным атрибутом |
500 |
Internal Server Error |
Другие ошибки сервера |
Примечание: Текст ошибки не фиксированный, может изменяться в зависимости от фактического ответа получателя запроса.
Пример ответа
Код 400
{
"error": "Bad Request",
"error_code": 400
}
Код 404
{
"error": "Not Found",
"error_code": 404
}
Код 409
{
"error": "name_already_used",
"error_code": 409,
"extra": {
"fields": [
"name"
]
}
}
Код 500
{
"error": "Internal Server Error",
"error_code": 500
}