Skip to content

Update Script

Updates a script with data provided in a request body.

Request

HTTP Request

PATCH /node/api/scripts/:id

Permissions

manage-scripts

Path parameters

Parameter Type Description
id String
required
The ID of a script to be updated.

Body parameters

Field Type Description
name String Script's name.
text String Script's source code.

Request body

{
    "name": "updated.sh",
    "text": "#echo Updated!"
}

Response

Returns an updated script. See the Script model for more information.

Field Type Description
id String Script's ID.
name String Script's name.
text String Script's source code.

Example

Request

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

curl -X PATCH $url -u $login:$password \
    -H "Content-Type: application/json" \
    -d @- <<EOF
{
    "name": "updated.sh",
    "text": "echo Updated!"
}
EOF
let login = <...>
let password = <...>
let saymonHostname = <...>
let scriptId = <...>
let path = "/node/api/scripts/" + scriptId;
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.sh",
    "text": "#echo Updated!"
});

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 scriptId = <...>
let path = "/node/api/scripts/" + scriptId;
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.sh",
    "text": "#echo Updated!"
});

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

login = <...>
password = <...>
saymon_hostname = <...>
script_id = <...>
url = "https://" + saymon_hostname + "/node/api/scripts/" + script_id

body = {
    "name": "updated.sh",
    "text": "echo Updated!"
}

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

Response

{
    "id": "5e60bb8ff0044922edb5d112",
    "name": "updated.sh",
    "text": "echo Updated!"
}

See Also