Change alarm level priority

The system assigns priority 0 to all new alarm levels. You cannot change the alarm level priority through the standard SAYMON web interface.

To change alarm level priority, edit an alarm level with the Update Incident Level REST API request:

  • Bash

  • JavaScript

  • NodeJS

  • Python

login=<...>
password=<...>
saymon_hostname=<...>
incident_level_id=<...>
url=https://$saymon_hostname/node/api/incident-levels/$incident_level_id

curl -X PATCH $url -u $login:$password \
    -H "Content-Type: application/json" \
    -d @- <<EOF
{
    "priority": 10
}
EOF
let login = <...>
let password = <...>
let saymonHostname = <...>
let incidentLevelId = <...>
let path = "/node/api/incident-levels/" + incidentLevelId;
let auth = "Basic " + btoa(login + ":" + password);

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

let data = JSON.stringify({
    "priority": 10
});

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));
const http = require("http");

let login = <...>
let password = <...>
let saymonHostname = <...>
let incidentLevelId = <...>
let path = "/node/api/incident-levels/" + incidentLevelId;
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({
    "priority": 10
});

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

login = <...>
password = <...>
saymon_hostname = <...>
incident_level_id = <...>
url = "https://" + saymon_hostname + "/node/api/incident-levels/" + \
    incident_level_id

json = {
    "priority": 10
}

response = requests.request("PATCH", url, json=json, auth=(login, password))
print(response.text)
If the system already has another alarm level with the same priority, every other alarm level with the same priority or higher will have its priority field increased by 1.