Update Object

PATCH /node/api/objects/:id

Updates object's fields specified in a request body.

Permissions: objectPermissions & (modify-objects | manage-objects).

Request parameters

Path parameters

Parameter

Type

Description

id

String

required

The ID of an object to be updated.

Body parameters

See the Object model.

Response description

See the Object model.

Examples

Request examples

The code examples below show how to change an object's name using the described method:

Bash
JavaScript
NodeJS
Python
Bash
login=<...>
password=<...>
saymon_hostname=<...>
object_id=<...>
url=https://$saymon_hostname/node/api/objects/$object_id
curl -X PATCH $url -u $login:$password \
-H "Content-Type: application/json" \
-d @- <<EOF
{
"name": "Updated Object"
}
EOF
JavaScript
let login = <...>
let password = <...>
let saymonHostname = <...>
let objectId = <...>
let path = "/node/api/objects/" + objectId;
let auth = "Basic " + btoa(login + ":" + password);
let headers = new Headers();
headers.append("Content-Type", "application/json");
headers.append("Authorization", auth);
let data = JSON.stringify({
"name": "Updated Object"
});
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));
NodeJS
const http = require("http");
let login = <...>
let password = <...>
let saymonHostname = <...>
let objectId = <...>
let path = "/node/api/objects/" + objectId;
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({
name: "Updated Object",
});
req.write(data);
req.end();
Python
import requests
login = <...>
password = <...>
saymon_hostname = <...>
object_id = <...>
url = "https://" + saymon_hostname + "/node/api/objects/" + object_id
body = {
"name": "Updated Object"
}
response = requests.request("PATCH", url, auth=(login, password), json=body)
print(response.text)

Response example

{
"id": "5e79b74d6ec5ea28e5105c58",
"name": "Updated Object",
"owner_id": "5e21b752308c3c66d64e072c",
"object_groups": [],
"geoposition": [],
"child_ref_ids": [],
"child_link_ids": [],
"child_ids": [],
"parent_id": "1",
"weight": 1,
"tags": [],
"last_state_update": 1585035085802,
"updated": 1585035624177,
"created": 1585035085802,
"state_id": 1,
"class_id": 13,
"_stateConditionRefs": [],
"operations": [],
"properties": [],
"client_data": "{...}"
}