Get Link’s State History

Returns a link’s state history.

Request

HTTP Request

GET /node/api/links/:id/state-history

Permissions

linkPermissions

Path parameters

Parameter Type Description

id

String
required

The ID of a link whose state history should be retrieved.

Query parameters

Parameter Type Description

from

Integer

A lower-bound timestamp for a link’s state history records.

limit

String

The maximum number of records to be retrieved.

skip

String

The number of the first records to be skipped.

to

Integer

An upper-bound timestamp for a link’s state history records.

Request body

The request body is empty.

Response

Returns the link’s state history that contains an array of states that the link has been in. See the State History model for more information.

Example

Request

  • Bash

  • JavaScript

  • NodeJS

  • Python

login=<...>
password=<...>
saymon_hostname=<...>
link_id=<...>
url=https://$saymon_hostname/node/api/links/$link_id/state-history

curl -X GET $url -u $login:$password
let login = <...>
let password = <...>
let saymonHostname = <...>
let linkId = <...>
let path = "/node/api/links/" + linkId + "/state-history";
let auth = "Basic " + btoa(login + ":" + password);

let headers = new Headers();
headers.append("Authorization", auth);

let requestOptions = {
    method: "GET",
    headers: headers
};

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 linkId = <...>
let path = "/node/api/links/" + linkId + "/state-history";
let auth = "Basic " + Buffer.from(login + ":" + password).toString("base64");

let options = {
    "method": "GET",
    "hostname": saymonHostname,
    "headers": {
        "Authorization": auth
    },
    "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);
    });
});

req.end();
import requests

login = <...>
password = <...>
saymon_hostname = <...>
link_id = <...>
url = "https://" + saymon_hostname + "/node/api/links/" + \
    link_id + "/state-history"

response = requests.request("GET", url, auth=(login, password))
print(response.text)

Response

[
    {
        "stateId": 1,
        "timestamp": 1585053147052,
        "id": "5e79fddb6ec5ea28e5105f66"
    },
    ...
]