Back to Collection Items
require 'chilkat'
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
http = Chilkat::CkHttp.new()
http.SetRequestHeader("Accept","application/json")
sbResponseBody = Chilkat::CkStringBuilder.new()
success = http.QuickGetSb("https://api.app.ddog-gov.com/api/v1/dashboard/:dashboard_id",sbResponseBody)
if (success == false)
print http.lastErrorText() + "\n";
exit
end
jResp = Chilkat::CkJsonObject.new()
jResp.LoadSb(sbResponseBody)
jResp.put_EmitCompact(false)
print "Response Body:" + "\n";
print jResp.emit() + "\n";
respStatusCode = http.get_LastStatus()
print "Response Status Code = " + respStatusCode.to_s() + "\n";
if (respStatusCode >= 400)
print "Response Header:" + "\n";
print http.lastHeader() + "\n";
print "Failed." + "\n";
exit
end
# Sample JSON response:
# (Sample code for parsing the JSON response is shown below)
# {
# "title": "",
# "layout_type": "ordered",
# "widgets": [
# {
# "definition": {
# "type": "alert_graph",
# "alert_id": "",
# "viz_type": "timeseries",
# "time": {
# "live_span": "5m"
# },
# "title": "nisi et cupidatat sunt",
# "title_align": "right",
# "title_size": "officia anim occaecat aliq"
# },
# "id": 45068649,
# "layout": {
# "x": 0,
# "y": 0,
# "width": 0,
# "height": 0,
# "is_column_break": true
# }
# },
# {
# "definition": {
# "type": "alert_graph",
# "alert_id": "",
# "viz_type": "timeseries",
# "time": {
# "live_span": "5m"
# },
# "title": "laborum dolor cillum ad",
# "title_align": "center",
# "title_size": "et"
# },
# "id": -40196020,
# "layout": {
# "x": 0,
# "y": 0,
# "width": 0,
# "height": 0,
# "is_column_break": false
# }
# }
# ],
# "author_handle": "test@datadoghq.com",
# "author_name": "John Doe",
# "created_at": "2017-08-17T07:10:36.438Z",
# "description": "eiusmod do est velit enim",
# "id": "123-abc-456",
# "is_read_only": false,
# "modified_at": "1996-07-08T08:32:43.112Z",
# "notify_list": [
# "commodo voluptate eu",
# "consectetur amet"
# ],
# "reflow_type": "fixed",
# "restricted_roles": [
# "id cupidatat",
# "quis ullamco"
# ],
# "tags": [
# "quis qui mollit ex",
# "ullamco enim cupidatat"
# ],
# "template_variable_presets": [
# {
# "name": "Lorem ex enim",
# "template_variables": [
# {
# "name": "sed ",
# "value": "quis eu",
# "values": [
# "in"
# ]
# },
# {
# "name": "non",
# "value": "ea dolore esse elit Lorem",
# "values": [
# "sed voluptate nulla"
# ]
# }
# ]
# },
# {
# "name": "est ",
# "template_variables": [
# {
# "name": "ullamco sint",
# "value": "ad ex irure",
# "values": [
# "Duis elit dolor"
# ]
# },
# {
# "name": "proident adipisicing culpa cons",
# "value": "occaecat",
# "values": [
# "esse fugiat"
# ]
# }
# ]
# }
# ],
# "template_variables": [
# {
# "name": "host1",
# "available_values": [
# "my-host",
# "host1",
# "host2"
# ],
# "default": "my-host",
# "defaults": [
# "my-host-1",
# "my-host-2"
# ],
# "prefix": "host"
# },
# {
# "name": "host1",
# "available_values": [
# "my-host",
# "host1",
# "host2"
# ],
# "default": "my-host",
# "defaults": [
# "my-host-1",
# "my-host-2"
# ],
# "prefix": "host"
# }
# ],
# "url": "/dashboard/123-abc-456/example-dashboard-title"
# }
# Sample code for parsing the JSON response...
# Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
title = jResp.stringOf("title")
layout_type = jResp.stringOf("layout_type")
author_handle = jResp.stringOf("author_handle")
author_name = jResp.stringOf("author_name")
created_at = jResp.stringOf("created_at")
description = jResp.stringOf("description")
id = jResp.stringOf("id")
is_read_only = jResp.BoolOf("is_read_only")
modified_at = jResp.stringOf("modified_at")
reflow_type = jResp.stringOf("reflow_type")
url = jResp.stringOf("url")
i = 0
count_i = jResp.SizeOfArray("widgets")
while i < count_i
jResp.put_I(i)
v_Type = jResp.stringOf("widgets[i].definition.type")
Alert_id = jResp.stringOf("widgets[i].definition.alert_id")
Viz_type = jResp.stringOf("widgets[i].definition.viz_type")
Live_span = jResp.stringOf("widgets[i].definition.time.live_span")
Title = jResp.stringOf("widgets[i].definition.title")
Title_align = jResp.stringOf("widgets[i].definition.title_align")
Title_size = jResp.stringOf("widgets[i].definition.title_size")
id_int = jResp.IntOf("widgets[i].id")
X = jResp.IntOf("widgets[i].layout.x")
Y = jResp.IntOf("widgets[i].layout.y")
Width = jResp.IntOf("widgets[i].layout.width")
Height = jResp.IntOf("widgets[i].layout.height")
Is_column_break = jResp.BoolOf("widgets[i].layout.is_column_break")
i = i + 1
end
i = 0
count_i = jResp.SizeOfArray("notify_list")
while i < count_i
jResp.put_I(i)
strVal = jResp.stringOf("notify_list[i]")
i = i + 1
end
i = 0
count_i = jResp.SizeOfArray("restricted_roles")
while i < count_i
jResp.put_I(i)
strVal = jResp.stringOf("restricted_roles[i]")
i = i + 1
end
i = 0
count_i = jResp.SizeOfArray("tags")
while i < count_i
jResp.put_I(i)
strVal = jResp.stringOf("tags[i]")
i = i + 1
end
i = 0
count_i = jResp.SizeOfArray("template_variable_presets")
while i < count_i
jResp.put_I(i)
name = jResp.stringOf("template_variable_presets[i].name")
j = 0
count_j = jResp.SizeOfArray("template_variable_presets[i].template_variables")
while j < count_j
jResp.put_J(j)
name = jResp.stringOf("template_variable_presets[i].template_variables[j].name")
value = jResp.stringOf("template_variable_presets[i].template_variables[j].value")
k = 0
count_k = jResp.SizeOfArray("template_variable_presets[i].template_variables[j].values")
while k < count_k
jResp.put_K(k)
strVal = jResp.stringOf("template_variable_presets[i].template_variables[j].values[k]")
k = k + 1
end
j = j + 1
end
i = i + 1
end
i = 0
count_i = jResp.SizeOfArray("template_variables")
while i < count_i
jResp.put_I(i)
name = jResp.stringOf("template_variables[i].name")
default = jResp.stringOf("template_variables[i].default")
prefix = jResp.stringOf("template_variables[i].prefix")
j = 0
count_j = jResp.SizeOfArray("template_variables[i].available_values")
while j < count_j
jResp.put_J(j)
strVal = jResp.stringOf("template_variables[i].available_values[j]")
j = j + 1
end
j = 0
count_j = jResp.SizeOfArray("template_variables[i].defaults")
while j < count_j
jResp.put_J(j)
strVal = jResp.stringOf("template_variables[i].defaults[j]")
j = j + 1
end
i = i + 1
end
Curl Command
curl -X GET
-H "Accept: application/json"
https://api.app.ddog-gov.com/api/v1/dashboard/:dashboard_id
Postman Collection Item JSON
{
"name": "Get a dashboard",
"request": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
}
],
"url": {
"raw": "{{baseUrl}}/api/v1/dashboard/:dashboard_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v1",
"dashboard",
":dashboard_id"
],
"variable": [
{
"key": "dashboard_id",
"value": "tempor Ut sed velit"
}
]
},
"description": "Get a dashboard using the specified ID."
},
"response": [
{
"name": "OK",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "DD-API-KEY",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/api/v1/dashboard/:dashboard_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v1",
"dashboard",
":dashboard_id"
],
"variable": [
{
"key": "dashboard_id"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"title\": \"\",\n \"layout_type\": \"ordered\",\n \"widgets\": [\n {\n \"definition\": {\n \"type\": \"alert_graph\",\n \"alert_id\": \"\",\n \"viz_type\": \"timeseries\",\n \"time\": {\n \"live_span\": \"5m\"\n },\n \"title\": \"nisi et cupidatat sunt\",\n \"title_align\": \"right\",\n \"title_size\": \"officia anim occaecat aliq\"\n },\n \"id\": 45068649,\n \"layout\": {\n \"x\": 0,\n \"y\": 0,\n \"width\": 0,\n \"height\": 0,\n \"is_column_break\": true\n }\n },\n {\n \"definition\": {\n \"type\": \"alert_graph\",\n \"alert_id\": \"\",\n \"viz_type\": \"timeseries\",\n \"time\": {\n \"live_span\": \"5m\"\n },\n \"title\": \"laborum dolor cillum ad\",\n \"title_align\": \"center\",\n \"title_size\": \"et\"\n },\n \"id\": -40196020,\n \"layout\": {\n \"x\": 0,\n \"y\": 0,\n \"width\": 0,\n \"height\": 0,\n \"is_column_break\": false\n }\n }\n ],\n \"author_handle\": \"test@datadoghq.com\",\n \"author_name\": \"John Doe\",\n \"created_at\": \"2017-08-17T07:10:36.438Z\",\n \"description\": \"eiusmod do est velit enim\",\n \"id\": \"123-abc-456\",\n \"is_read_only\": false,\n \"modified_at\": \"1996-07-08T08:32:43.112Z\",\n \"notify_list\": [\n \"commodo voluptate eu\",\n \"consectetur amet\"\n ],\n \"reflow_type\": \"fixed\",\n \"restricted_roles\": [\n \"id cupidatat\",\n \"quis ullamco\"\n ],\n \"tags\": [\n \"quis qui mollit ex\",\n \"ullamco enim cupidatat\"\n ],\n \"template_variable_presets\": [\n {\n \"name\": \"Lorem ex enim\",\n \"template_variables\": [\n {\n \"name\": \"sed \",\n \"value\": \"quis eu\",\n \"values\": [\n \"in\"\n ]\n },\n {\n \"name\": \"non\",\n \"value\": \"ea dolore esse elit Lorem\",\n \"values\": [\n \"sed voluptate nulla\"\n ]\n }\n ]\n },\n {\n \"name\": \"est \",\n \"template_variables\": [\n {\n \"name\": \"ullamco sint\",\n \"value\": \"ad ex irure\",\n \"values\": [\n \"Duis elit dolor\"\n ]\n },\n {\n \"name\": \"proident adipisicing culpa cons\",\n \"value\": \"occaecat\",\n \"values\": [\n \"esse fugiat\"\n ]\n }\n ]\n }\n ],\n \"template_variables\": [\n {\n \"name\": \"host1\",\n \"available_values\": [\n \"my-host\",\n \"host1\",\n \"host2\"\n ],\n \"default\": \"my-host\",\n \"defaults\": [\n \"my-host-1\",\n \"my-host-2\"\n ],\n \"prefix\": \"host\"\n },\n {\n \"name\": \"host1\",\n \"available_values\": [\n \"my-host\",\n \"host1\",\n \"host2\"\n ],\n \"default\": \"my-host\",\n \"defaults\": [\n \"my-host-1\",\n \"my-host-2\"\n ],\n \"prefix\": \"host\"\n }\n ],\n \"url\": \"/dashboard/123-abc-456/example-dashboard-title\"\n}"
},
{
"name": "Authentication Error",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "DD-API-KEY",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/api/v1/dashboard/:dashboard_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v1",
"dashboard",
":dashboard_id"
],
"variable": [
{
"key": "dashboard_id"
}
]
}
},
"status": "Forbidden",
"code": 403,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n \"Bad Request\",\n \"Bad Request\"\n ]\n}"
},
{
"name": "Item Not Found",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "DD-API-KEY",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/api/v1/dashboard/:dashboard_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v1",
"dashboard",
":dashboard_id"
],
"variable": [
{
"key": "dashboard_id"
}
]
}
},
"status": "Not Found",
"code": 404,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n \"Bad Request\",\n \"Bad Request\"\n ]\n}"
},
{
"name": "Too many requests",
"originalRequest": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: apikey",
"key": "DD-API-KEY",
"value": "<API Key>"
}
],
"url": {
"raw": "{{baseUrl}}/api/v1/dashboard/:dashboard_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v1",
"dashboard",
":dashboard_id"
],
"variable": [
{
"key": "dashboard_id"
}
]
}
},
"status": "Too Many Requests",
"code": 429,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n \"Bad Request\",\n \"Bad Request\"\n ]\n}"
}
]
}