Обновление словаря в сервисах

POST /api/v1/dictionaries/update

Обновить можно только словари в ресурсах словарей типа таблица.

Доступ: администратор, аналитик.

Параметры запроса (URL Query)

Имя

Тип данных

Обязательный

Описание

Пример значения

collectorID

string

Нет

ID коллекторов, на которых будет обновлен словарь. Возможно указать несколько значений, тогда словарь будет обновлен на каждом из сервисов.

00000000-0000-0000-0000-000000000000

correlatorID

string

Нет

ID корреляторов, на которых будет обновлен словарь. Возможно указать несколько значений, тогда словарь будет обновле на каждом из сервисов.

00000000-0000-0000-0000-000000000000

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

Любые другие внутренние ошибки

вариативное

вариативное

В начало