Получить историю изменений связи

Запрос

HTTP Запрос

GET /node/api/links/:id/audit-log

Параметры пути

Параметр Тип Описание

id

String
обязательный

ID связи.

Параметры запроса

Параметр Тип Описание

from

Integer

От какой даты искать записи.

to

Integer

До какой даты искать записи.

skip

String

Сколько записей с начала списка нужно пропустить.

limit

String

Максимальное количество возвращаемых записей.

Тело запроса

Тело запроса пустое.

Ответ

Возвращает историю изменений заданного связи. Каждое изменение выражено старыми и новыми значениями связи, а также типом поля, которое было изменено. Подробная информация о модели доступна в статье История изменений.

Пример

Запрос

  • Bash

  • JavaScript

  • NodeJS

  • Python

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

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

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

Ответ

[
    {
        "entityType": 2,
        "entityId": "5e79fddb6ec5ea28e5105f65",
        "newBody": [
            {
                "states": [
                    3,
                    4
                ],
                "payload": {
                    "cc": "recepient@example.com",
                    "to": "recepient@example.com"
                },
                "type": "e-mail"
            }
        ],
        "oldBody": [
            {
                "states": [
                    3,
                    4
                ],
                "payload": {
                    "cc": "",
                    "to": "recepient@example.com"
                },
                "type": "e-mail"
            }
        ],
        "userId": "5e21b752308c3c66d64e072c",
        "kind": 7,
        "timestamp": 1585056962504
    },
    ...
]

Смотрите также