Update Event Log Record Payload

Adds a new record to the Event Log Modifications. This record contains an updated payload for an event log entry. It can be used to modify the payload of SNMP traps and MQTT messages without changing the original entry.

This request can also be used to update another Event Log Modification.

You can get all Event Log Modifications with the Get Event Log Modifications request.

Request

HTTP Request

PATCH /node/api/event-log/:id/payload

Permissions

manage-event-log

Path parameters

Parameter Type Description

id

String
required

The ID of an event log record or an event modification whose payload should be updated.

Request body

Request body contains the variables that you want to update. You can also include new variables. They will be added to the record.

{
    "assignee": "62c2f3ce80c8654892764d56"
}

Response

The response body is empty.

This request adds a new record in the Event Log Modifications list. The new record’s target field references the updated event log entry or an updated event log modification record, depending on what was updated.

Result:

{
    "_id": "63779ab486bfdcde7692d39b",
    "target": "6376625c24a5f241137b3c86",
    "body": {
        "assignee": "62c2f3ce80c8654892764d56"
    },
    "skip": 373
},

Example

Request

  • Bash

  • JavaScript

  • NodeJS

  • Python

login=<...>
password=<...>
saymon_hostname=<...>
record_id=<...>
url=https://$saymon_hostname/node/api/event-log/$record_id/payload

curl -X PATCH $url -u $login:$password \
    -H "Content-Type: application/json" \
    --data '{"text": "Test"}'
let login = <...>
let password = <...>
let saymonHostname = <...>
let recordId = <...>
let path = "/node/api/event-log/" + recordId + "/payload";
let auth = "Basic " + btoa(login + ":" + password);

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

let data = JSON.stringify({
    "text": "Test"
});

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 recordId = <...>
let path = "/node/api/event-log/" + recordId + "/payload";
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({
    "text": "Test"
});

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

login = <...>
password = <...>
saymon_hostname = <...>
record_id = <...>
url = "https://" + saymon_hostname + "/node/api/event-log/" + \
    record_id + "/payload"

body = {
    "text": "Test"
}

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