Обновление словаря в сервисах
POST /api/v1/dictionaries/update
Обновить можно только словари в ресурсах словарей типа таблица.
Доступ: администратор, аналитик.
Параметры запроса (URL Query)
Имя | Тип данных | Обязательный | Описание | Пример значения |
dictionaryID | string | Да | ID словаря, который будет обновлен. | 00000000-0000-0000-0000-000000000000 |
Обновление произойдет на всех сервисах, где используется указанный словарь. Если обновление на одном из сервисов заканчивается ошибкой, это не прерывает обновления на других сервисах.
Тело запроса
Имя поля multipart | Тип данных | Обязательный | Описание | Пример значения |
file | CSV-файл | Да | Запрос содержит CSV-файл. Данные существующего словаря заменяются на данные этого файла. Первая строка CSV-файла с названиями столбцов не должна меняться. | key columns,column1,column2 key1,k1col1,k1col2 key2,k2col1,k2col2 |
Ответ
HTTP-код: 200
Формат: JSON
type Response struct { ServicesFailedToUpdate []UpdateError `json:"servicesFailedToUpdate"` } type UpdateError struct { ID string `json:"id"` Err error `json:"err"` } |
Возвращает только ошибки для сервисов, на которых словари не были обновлены.
Возможные ошибки
HTTP-код | Описание | Значение поля message | Значение поля details |
400 | Неверное тело запроса | request body decode failed | возникшая ошибка |
400 | Нулевое количество строк словаря | request body required |
|
400 | Не указан ID словаря | invalid value | dictionaryID |
400 | Некорректное значение строки словаря | invalid value | rows или rows[i] |
400 | Словарь с указанным ID имеет неверный вид (не таблица) | can only update table dictionary |
|
400 | Попытка изменить столбцы словаря | columns must not change with update |
|
403 | Нет доступа к запрашиваемому ресурсу | access denied |
|
404 | Сервис не найден | service not found |
|
404 | Словарь не найден | dictionary not found | идентификатор сервиса |
500 | Любые другие внутренние ошибки | вариативное | вариативное |