Массовое обновление табличных списков
Запрос
| Тип | Метод |
|---|---|
POST |
/value_stores/mass_update |
Описание: При выполнении запроса выбранным параметрам табличных списков будут присвоены новые значения.
Работает по принципу частичного обновления, т.е. будут обновлены только те поля модели которые были переданы в запросе.
Всем объектам будут присвоены одинаковые значения в переданных полях.
Изменение связей не поддерживается.
Метод транзакционный, если произошла ошибка изменения одного из объектов, откатываются все изменения.
Пример запроса
POST
http://127.0.0.1/cruddy/v2/value_stores/mass_update
Тело запроса:
| Параметр | Тип данных | Обязательность | Описание |
|---|---|---|---|
| ids | Array<string> |
Required | Список ID объектов |
| fields | DefaultObject |
Required | Словарь новых значений полей модели данных KeyValueStores |
| fields{param_1} | Зависит от изменяемого параметра в соответствии с моделью | Optional | Первый параметр, который необходимо изменить в соответствии с моделью объекта, например is_large |
| fields{param_n} | Зависит от изменяемого параметра в соответствии с моделью | Optional | N-ый параметр, который необходимо изменить в соответствии с моделью объекта, например scheme |
Пример тела запроса
{
"ids": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
],
"fields": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "uuid",
"description": "string",
"values_scheme": [
{
"name": "field",
"type": "int",
"is_key": false
}
],
"is_large": true,
"mask_values": true,
"type": "pg",
"version": 1,
"source": "",
"scheme": "vstore",
"db_name": "vs_111dfca1defc11faa11dc11f1d11fd11",
"user": "",
"password": "",
"store_count": 10,
"content": null,
"tollerId": "string"
}
}
Успешный ответ
Статус код: 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 }