post
/public_api/v1/dashboards/insert
Add or update the dashboards retrieved by the Get dashboards API.
You must have Instance Administrator permissions to run this endpoint.
Request headers
Authorization
String
required
{api_key}
{api_key}
Example:
authorization_example
x-xdr-auth-id
String
required
{api_key_id}
{api_key_id}
Example:
xXdrAuthId_example
CLIENT REQUEST
curl -X 'POST'
-H
'Accept: application/json'
-H
'Content-Type: application/json'
-H
'Authorization: authorization_example'
-H
'x-xdr-auth-id: xXdrAuthId_example'
'https://api-yourfqdn/public_api/v1/dashboards/insert'
-d
''
import http.client
conn = http.client.HTTPSConnection("api-yourfqdn")
payload = "{\"request_data\":{\"dashboards_data\":[{\"name\":\"string\",\"description\":\"string\",\"status\":\"string\",\"layout\":[{\"id\":\"string\",\"data\":[{\"key\":\"string\",\"data\":{\"type\":\"string\",\"width\":0,\"height\":0,\"time_frame\":{\"relativeTime\":0},\"alerts_or_incidents\":\"string\"}}]}],\"default_dashboard_id\":0,\"global_id\":\"string\",\"metadata\":{\"params\":[{}]}}],\"widgets_data\":[{\"widget_key\":\"string\",\"title\":\"string\",\"creation_time\":0,\"description\":null,\"data\":{\"phrase\":\"string\",\"time_frame\":{\"relativeTime\":0},\"viewOptions\":{\"type\":\"string\",\"commands\":[{}]}},\"support_time_range\":true,\"additional_info\":{\"query_tables\":[\"string\"],\"query_uses_library\":true},\"creator_mail\":\"string\"}]}}"
headers = {
'Authorization': "SOME_STRING_VALUE",
'x-xdr-auth-id': "SOME_STRING_VALUE",
'content-type': "application/json"
}
conn.request("POST", "/public_api/v1/dashboards/insert", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://api-yourfqdn/public_api/v1/dashboards/insert")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'SOME_STRING_VALUE'
request["x-xdr-auth-id"] = 'SOME_STRING_VALUE'
request["content-type"] = 'application/json'
request.body = "{\"request_data\":{\"dashboards_data\":[{\"name\":\"string\",\"description\":\"string\",\"status\":\"string\",\"layout\":[{\"id\":\"string\",\"data\":[{\"key\":\"string\",\"data\":{\"type\":\"string\",\"width\":0,\"height\":0,\"time_frame\":{\"relativeTime\":0},\"alerts_or_incidents\":\"string\"}}]}],\"default_dashboard_id\":0,\"global_id\":\"string\",\"metadata\":{\"params\":[{}]}}],\"widgets_data\":[{\"widget_key\":\"string\",\"title\":\"string\",\"creation_time\":0,\"description\":null,\"data\":{\"phrase\":\"string\",\"time_frame\":{\"relativeTime\":0},\"viewOptions\":{\"type\":\"string\",\"commands\":[{}]}},\"support_time_range\":true,\"additional_info\":{\"query_tables\":[\"string\"],\"query_uses_library\":true},\"creator_mail\":\"string\"}]}}"
response = http.request(request)
puts response.read_bodyconst data = JSON.stringify({
"request_data": {
"dashboards_data": [
{
"name": "string",
"description": "string",
"status": "string",
"layout": [
{
"id": "string",
"data": [
{
"key": "string",
"data": {
"type": "string",
"width": 0,
"height": 0,
"time_frame": {
"relativeTime": 0
},
"alerts_or_incidents": "string"
}
}
]
}
],
"default_dashboard_id": 0,
"global_id": "string",
"metadata": {
"params": [
{}
]
}
}
],
"widgets_data": [
{
"widget_key": "string",
"title": "string",
"creation_time": 0,
"description": null,
"data": {
"phrase": "string",
"time_frame": {
"relativeTime": 0
},
"viewOptions": {
"type": "string",
"commands": [
{}
]
}
},
"support_time_range": true,
"additional_info": {
"query_tables": [
"string"
],
"query_uses_library": true
},
"creator_mail": "string"
}
]
}
});
const xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === this.DONE) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://api-yourfqdn/public_api/v1/dashboards/insert");
xhr.setRequestHeader("Authorization", "SOME_STRING_VALUE");
xhr.setRequestHeader("x-xdr-auth-id", "SOME_STRING_VALUE");
xhr.setRequestHeader("content-type", "application/json");
xhr.send(data);HttpResponse<String> response = Unirest.post("https://api-yourfqdn/public_api/v1/dashboards/insert")
.header("Authorization", "SOME_STRING_VALUE")
.header("x-xdr-auth-id", "SOME_STRING_VALUE")
.header("content-type", "application/json")
.body("{\"request_data\":{\"dashboards_data\":[{\"name\":\"string\",\"description\":\"string\",\"status\":\"string\",\"layout\":[{\"id\":\"string\",\"data\":[{\"key\":\"string\",\"data\":{\"type\":\"string\",\"width\":0,\"height\":0,\"time_frame\":{\"relativeTime\":0},\"alerts_or_incidents\":\"string\"}}]}],\"default_dashboard_id\":0,\"global_id\":\"string\",\"metadata\":{\"params\":[{}]}}],\"widgets_data\":[{\"widget_key\":\"string\",\"title\":\"string\",\"creation_time\":0,\"description\":null,\"data\":{\"phrase\":\"string\",\"time_frame\":{\"relativeTime\":0},\"viewOptions\":{\"type\":\"string\",\"commands\":[{}]}},\"support_time_range\":true,\"additional_info\":{\"query_tables\":[\"string\"],\"query_uses_library\":true},\"creator_mail\":\"string\"}]}}")
.asString();import Foundation
let headers = [
"Authorization": "SOME_STRING_VALUE",
"x-xdr-auth-id": "SOME_STRING_VALUE",
"content-type": "application/json"
]
let parameters = ["request_data": [
"dashboards_data": [
[
"name": "string",
"description": "string",
"status": "string",
"layout": [
[
"id": "string",
"data": [
[
"key": "string",
"data": [
"type": "string",
"width": 0,
"height": 0,
"time_frame": ["relativeTime": 0],
"alerts_or_incidents": "string"
]
]
]
]
],
"default_dashboard_id": 0,
"global_id": "string",
"metadata": ["params": [[]]]
]
],
"widgets_data": [
[
"widget_key": "string",
"title": "string",
"creation_time": 0,
"description": ,
"data": [
"phrase": "string",
"time_frame": ["relativeTime": 0],
"viewOptions": [
"type": "string",
"commands": [[]]
]
],
"support_time_range": true,
"additional_info": [
"query_tables": ["string"],
"query_uses_library": true
],
"creator_mail": "string"
]
]
]] as [String : Any]
let postData = JSONSerialization.data(withJSONObject: parameters, options: [])
let request = NSMutableURLRequest(url: NSURL(string: "https://api-yourfqdn/public_api/v1/dashboards/insert")! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-yourfqdn/public_api/v1/dashboards/insert",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "{\"request_data\":{\"dashboards_data\":[{\"name\":\"string\",\"description\":\"string\",\"status\":\"string\",\"layout\":[{\"id\":\"string\",\"data\":[{\"key\":\"string\",\"data\":{\"type\":\"string\",\"width\":0,\"height\":0,\"time_frame\":{\"relativeTime\":0},\"alerts_or_incidents\":\"string\"}}]}],\"default_dashboard_id\":0,\"global_id\":\"string\",\"metadata\":{\"params\":[{}]}}],\"widgets_data\":[{\"widget_key\":\"string\",\"title\":\"string\",\"creation_time\":0,\"description\":null,\"data\":{\"phrase\":\"string\",\"time_frame\":{\"relativeTime\":0},\"viewOptions\":{\"type\":\"string\",\"commands\":[{}]}},\"support_time_range\":true,\"additional_info\":{\"query_tables\":[\"string\"],\"query_uses_library\":true},\"creator_mail\":\"string\"}]}}",
CURLOPT_HTTPHEADER => [
"Authorization: SOME_STRING_VALUE",
"content-type: application/json",
"x-xdr-auth-id: SOME_STRING_VALUE"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "https://api-yourfqdn/public_api/v1/dashboards/insert");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: SOME_STRING_VALUE");
headers = curl_slist_append(headers, "x-xdr-auth-id: SOME_STRING_VALUE");
headers = curl_slist_append(headers, "content-type: application/json");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\"request_data\":{\"dashboards_data\":[{\"name\":\"string\",\"description\":\"string\",\"status\":\"string\",\"layout\":[{\"id\":\"string\",\"data\":[{\"key\":\"string\",\"data\":{\"type\":\"string\",\"width\":0,\"height\":0,\"time_frame\":{\"relativeTime\":0},\"alerts_or_incidents\":\"string\"}}]}],\"default_dashboard_id\":0,\"global_id\":\"string\",\"metadata\":{\"params\":[{}]}}],\"widgets_data\":[{\"widget_key\":\"string\",\"title\":\"string\",\"creation_time\":0,\"description\":null,\"data\":{\"phrase\":\"string\",\"time_frame\":{\"relativeTime\":0},\"viewOptions\":{\"type\":\"string\",\"commands\":[{}]}},\"support_time_range\":true,\"additional_info\":{\"query_tables\":[\"string\"],\"query_uses_library\":true},\"creator_mail\":\"string\"}]}}");
CURLcode ret = curl_easy_perform(hnd);var client = new RestClient("https://api-yourfqdn/public_api/v1/dashboards/insert");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "SOME_STRING_VALUE");
request.AddHeader("x-xdr-auth-id", "SOME_STRING_VALUE");
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\"request_data\":{\"dashboards_data\":[{\"name\":\"string\",\"description\":\"string\",\"status\":\"string\",\"layout\":[{\"id\":\"string\",\"data\":[{\"key\":\"string\",\"data\":{\"type\":\"string\",\"width\":0,\"height\":0,\"time_frame\":{\"relativeTime\":0},\"alerts_or_incidents\":\"string\"}}]}],\"default_dashboard_id\":0,\"global_id\":\"string\",\"metadata\":{\"params\":[{}]}}],\"widgets_data\":[{\"widget_key\":\"string\",\"title\":\"string\",\"creation_time\":0,\"description\":null,\"data\":{\"phrase\":\"string\",\"time_frame\":{\"relativeTime\":0},\"viewOptions\":{\"type\":\"string\",\"commands\":[{}]}},\"support_time_range\":true,\"additional_info\":{\"query_tables\":[\"string\"],\"query_uses_library\":true},\"creator_mail\":\"string\"}]}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);Body parameters
application/json
request_dataobject
dashboards_dataarrayAn array of dashboard details as retrieved by the Get dashboards API.
An array of dashboard details as retrieved by the Get dashboards API.
[namestring
descriptionstring
statusstring
layoutarray
default_dashboard_idinteger
global_idstring
metadataobject
paramsarray
]
namestringDashboard name.
Dashboard name.
descriptionstringDashboard description.
Dashboard description.
statusstringDashboard status.
Dashboard status.
layoutarray
[idstring
dataarray
]
idstring
dataarray
[keystring
dataobject
typestring
widthinteger
heightinteger
time_frameobject
relativeTimeinteger
alerts_or_incidentsstring
]
keystring
dataobject
typestring
widthinteger
heightinteger
time_frameobject
relativeTimeinteger
alerts_or_incidentsstring
default_dashboard_idinteger
global_idstringNote: If no global ID is added in the request data, there might be errors with the global ID listed as "None".
Note: If no global ID is added in the request data, there might be errors with the global ID listed as "None".
metadataobject
paramsarray
[]
widgets_dataarrayAn array of relevant XQL widget details as retrieved by the Get dashboards API.
An array of relevant XQL widget details as retrieved by the Get dashboards API.
[widget_keystring
titlestring
creation_timeinteger
descriptionobject
dataobject
phrasestring
time_frameobject
relativeTimeinteger
viewOptionsobject
typestring
commandsarray
support_time_rangeboolean
additional_infoobject
query_tablesarray[string]
query_uses_libraryboolean
creator_mailstring
]
widget_keystring
titlestring
creation_timeinteger
descriptionobject
dataobject
phrasestring
time_frameobject
relativeTimeinteger
viewOptionsobject
typestring
commandsarray
[]
support_time_rangeboolean
additional_infoobject
query_tablesarray[string]
query_uses_libraryboolean
creator_mailstring
REQUEST
{
"request_data": {
"dashboards_data": [
{
"name": "John Doe",
"description": null,
"status": "ENABLED",
"layout": [
{
"id": "row-5867",
"data": [
{
"key": "FAKE_KEY",
"data": {
"type": "Pie",
"width": 5435435,
"height": 451
}
},
{
"key": "incidentsByAssignment",
"data": {
"type": "Bar",
"width": 33,
"height": 451
}
},
{
"key": "incidentsHistory",
"data": {
"type": "Timeline",
"width": 33,
"height": 451,
"time_frame": {
"relativeTime": 86400000
},
"alerts_or_incidents": "incident"
}
}
]
},
{
"id": "row-3678",
"data": [
{
"key": "xql_1583269521210",
"data": {
"type": "Custom XQL",
"width": 33,
"height": 11111,
"params": [
{
"name": "name",
"value": "orik"
}
],
"phrase": "dataset = drilldown | filter name = $name\n| view graph type = gauge subtype = radial header = \"User Score\" yaxis = score maxscalerange = 100 headerfontsize = 25 ",
"time_frame": {
"relativeTime": 86400000
},
"viewOptions": {
"type": "gauge",
"commands": [
{
"command": {
"op": "=",
"name": "subtype",
"value": "radial"
}
},
{
"command": {
"op": "=",
"name": "header",
"value": "\"User Score\""
}
},
{
"command": {
"op": "=",
"name": "yaxis",
"value": "score"
}
},
{
"command": {
"op": "=",
"name": "maxscalerange",
"value": "100"
}
},
{
"command": {
"op": "=",
"name": "headerfontsize",
"value": "25"
}
}
]
}
}
},
{
"key": "topIncidentsByAlertSeverity",
"data": {
"type": "Table",
"width": 33,
"height": 408
}
},
{
"key": "hostsBySeverity",
"data": {
"type": "Table",
"width": 33,
"height": 408
}
}
]
}
],
"default_dashboard_id": 132131,
"global_id": "47052a2b17db4d799c4c5da38d203600",
"metadata": {
"params": []
}
}
]
}
}Responses