Изменение пользовательских атрибутов через REST API

Здравствуйте!

В продолжение темы https://forum.lers.ru/t/polzovatelskie-atributy-cherez-rest-api/15792 :

При наличии у точки учёта нескольких пользовательских атрибутов (допустим myAttribute, Attribute1, Attribute2), запрос по REST API на изменение одного из них по типу

PUT/api/v1/Core/MeasurePoints/ID/Attributes
[
{
“Code”: “myAttribute”,
“Value”: “8.567”
}
]

правильно применяет адресный и перезатирает все остальные. Т.е. Attribute1 и Attribute2 станут пустыми, даже если имели данные до запроса. На мой взгляд, это ошибочное поведение.

Вообще, так и планировалось, задавать нужно все значения.

Изначально подумал также, но смотрите, есть аналогичный запрос на пополнение справочника среднесуточных температур:

PUT/api/v1/Data/Territories/ID/Weather
[
{
“date”:“2022-12-22T00:00:00”,
“value”:10.0
}
]

и он позволяет вносить изменения адресно, не уничтожая остальные данные. Т.е. при похожих подходах имеем разное поведение, это путает.

Может быть нужно что-то вроде подобного функционала?

Ну справочник всё-таки условно бесконечный, а количество атрибутов точек строго определено.

Patch применяется для редактирования части полей одной сущности, а тут их несколько (атрибуты).

В общем, ответ на свой вопрос я получил. Это не ошибка, так и было задумано. Что ж, будем работать с тем что есть.

Тему можно закрыть, спасибо.