Обновить класс свойств

Обновить класс свойств

Обновить класс свойств ​

Обновляет класс свойств.

Запрос ​

HTTP Запрос ​

text
PATCH /node/api/property-classes/:id

Права ​

text
manage-property-classes

Параметры пути ​

ПараметрТипОписание
idString

обязательно | ID класса свойств. |

Тело запроса ​

json
{
    "name": "Updated name",
    "description": "Updated description",
    "multiple": true,
    "multiple_separator": ";",
    "value_display_template": "",
    "source": "66e41e89029ed40f1105e59e",
    "mask": ""
}

Ответ ​

Тело ответа содержит обновлённый класс свойства.

ПолеТипОписание
nameStringИмя класса свойств.
commentStringПользовательский комментарий к классу свойств.
descriptionStringОписание класса свойств.
value_type_idStringID типа значения, которое использует это свойство.
valueObjectСтандартное значение этого свойства.
multipleBooleanИспользует ли этот класс несколько значений для каждого ключа.
sourceStringID словаря, которые используется как источник значений для типа значения dictionary.
maskStringРегулярное выражение, которое фильтрует вводимые пользователем значения.
systemBooleanЯвляется ли этот класс системным.
idStringID класса свойств.
multiple_separatorStringСтрока, которая разделяет выбранные значения при отображении в интерфейсе.
value_display_templateString
Шаблон отображения значений. Для получения значения свойства можно использовать макрос {{0}}.

Словари используют следующую индексацию – ключ можно получить с помощью макроса {{0}}; {{1}} – {{N}} используются для получения соответствущих значений. |

Пример ​

Запрос ​

  • Bash
  • JavaScript
  • NodeJS
  • Python
bash
login=<...>
password=<...>
saymon_hostname=<...>
flow_id=<...>
url=https://$saymon_hostname/node/api/flows/$flow_id

curl -X PATCH $url -u $login:$password \
    -H "Content-Type: application/json" \
    -d @- <<EOF
{
    "description": "Updated description"
}
EOF
javascript
let login = <...>
let password = <...>
let saymonHostname = <...>
let flowId = <...>
let path = "/node/api/flows/" + flowId;
let auth = "Basic " + btoa(login + ":" + password);

let headers = new Headers();
headers.append("Content-Type", "application/json");
headers.append("Authorization", auth);

let data = JSON.stringify({
    "description": "Updated description"
});

let requestOptions = {
    method: "PATCH",
    headers: headers,
    body: data
};

fetch(saymonHostname + path, requestOptions)
    .then(response => response.text())
    .then(result => console.log(result))
    .catch(error => console.log("error", error));
javascript
const http = require("http");

let login = <...>
let password = <...>
let saymonHostname = <...>
let flowId = <...>
let path = "/node/api/flows/" + flowId;
let auth = "Basic " + Buffer.from(login + ":" + password).toString("base64");

let options = {
    "method": "PATCH",
    "hostname": saymonHostname,
    "headers": {
        "Authorization": auth,
        "Content-Type": "application/json"
    },
    "path": path
};

let req = http.request(options, function (res) {
    let chunks = [];

    res.on("data", function (chunk) {
        chunks.push(chunk);
    });

    res.on("end", function (chunk) {
        let body = Buffer.concat(chunks);
        console.log(body.toString());
    });

    res.on("error", function (error) {
        console.error(error);
    });
});

let data = JSON.stringify({
    "description": "Updated description"
});

req.write(data);
req.end();
python
import requests

login = <...>
password = <...>
saymon_hostname = <...>
flow_id = <...>
url = "https://" + saymon_hostname + "/node/api/flows/" + flow_id

body = {
    "description": "Updated description"
}

response = requests.request("PATCH", url, json=body, auth=(login, password))
print(response.text)

Ответ ​

json
{
    "id": "66e9850cbb17541c30c88348",
    "name": "Updated name",
    "description": "Updated description",
    "value_type_id": "dictionary",
    "value": "",
    "multiple": true,
    "multiple_separator": ";",
    "value_display_template": "",
    "source": "66e41e89029ed40f1105e59e",
    "mask": ""
}