Get All States

Returns an array of all states. Returns both built-in and custom states.

Request

HTTP Request

GET /node/api/states

Path parameters

No parameters required.

Request body

The request body is empty.

Response

The response returns an array of states. See the State model page for more information.

Example

Request

  • Bash

  • JavaScript

  • NodeJS

  • Python

login=<...>
password=<...>
saymon_hostname=<...>
url=https://$saymon_hostname/node/api/states

curl -X GET $url -u $login:$password
let login = <...>
let password = <...>
let saymonHostname = <...>
let path = "/node/api/states";
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 path = "/node/api/states";
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 = <...>
url = "https://" + saymon_hostname + "/node/api/states"

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

Response

[
    {
        "name": "Created",
        "ui": {
            "colors": {
                "main": "#ce86f7",
                "shadow": "rgba(206, 134, 247, 0.5)",
                "light": "rgba(206, 134, 247, 0.1)",
                "background": ""
            }
        },
        "priority": 3,
        "id": 1
    },
    ...
]

See Also