Skip to content

Clone Object in Background

Clones an object in the background and returns an operation (bulk) ID. The operation status can be checked using the Get Bulk Operation Status method. Also, a notification about operation completion can be sent by the server via Comet.

Request

HTTP Request

POST /node/api/objects/:id/clone-bulk

Permissions

create-objects | manage-objects

Path parameters

Parameter Type Description
id

String

required

The ID or discovery ID of the object to be cloned.

Request body

The request body is empty.

Response

Field Type Description
bulkId String The ID of a bulk operation.
finished Boolean Whether the bulk operation is finished.

Examples

Request examples

login=<...>
password=<...>
saymon_hostname=<...>
object_id=<...>
url=https://$saymon_hostname/node/api/objects/$object_id/clone-bulk

curl -X POST $url -u $login:$password
let login = <...>
let password = <...>
let saymonHostname = <...>
let objectId = <...>
let path = "/node/api/objects/" + objectId + "/clone-bulk";
let auth = "Basic " + btoa(login + ":" + password);

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

let requestOptions = {
    method: "POST",
    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 objectId = <...>
let path = "/node/api/objects/" + objectId + "/clone-bulk";
let auth = "Basic " + Buffer.from(login + ":" + password).toString("base64");

let options = {
    "method": "POST",
    "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 = <...>
object_id = <...>
url = "https://" + saymon_hostname + "/node/api/objects/" + \
    object_id + "/clone-bulk"

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

Response example

{
    "bulkId": "12aa5120-d8ee-4940-b53d-022d212cf3eb",
    "finished": false
}