Chilkat Online Tools

DataFlex / Datadog API Collection / Get a dashboard

Back to Collection Items

Use ChilkatAx-9.5.0-win32.pkg

Procedure Test
    Handle hoHttp
    Boolean iSuccess
    Variant vSbResponseBody
    Handle hoSbResponseBody
    Handle hoJResp
    Integer iRespStatusCode
    String sV_Type
    String sAlert_id
    String sViz_type
    String sLive_span
    String sTitle
    String sTitle_align
    String sTitle_size
    Integer iId_int
    Integer X
    Integer Y
    Integer iWidth
    Integer iHeight
    Boolean iIs_column_break
    String sStrVal
    String sName
    Integer j
    Integer iCount_j
    String sValue
    Integer k
    Integer iCount_k
    String sDefault
    String sPrefix
    String sTitle
    String sLayout_type
    String sAuthor_handle
    String sAuthor_name
    String sCreated_at
    String sDescription
    String sId
    Boolean iIs_read_only
    String sModified_at
    String sReflow_type
    String sUrl
    Integer i
    Integer iCount_i
    String sTemp1

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    Get Create (RefClass(cComChilkatHttp)) To hoHttp
    If (Not(IsComObjectCreated(hoHttp))) Begin
        Send CreateComObject of hoHttp
    End

    Send ComSetRequestHeader To hoHttp "Accept" "application/json"

    Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody
    If (Not(IsComObjectCreated(hoSbResponseBody))) Begin
        Send CreateComObject of hoSbResponseBody
    End
    Get pvComObject of hoSbResponseBody to vSbResponseBody
    Get ComQuickGetSb Of hoHttp "https://api.app.ddog-gov.com/api/v1/dashboard/:dashboard_id" vSbResponseBody To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoHttp To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get Create (RefClass(cComChilkatJsonObject)) To hoJResp
    If (Not(IsComObjectCreated(hoJResp))) Begin
        Send CreateComObject of hoJResp
    End
    Get pvComObject of hoSbResponseBody to vSbResponseBody
    Get ComLoadSb Of hoJResp vSbResponseBody To iSuccess
    Set ComEmitCompact Of hoJResp To False

    Showln "Response Body:"
    Get ComEmit Of hoJResp To sTemp1
    Showln sTemp1

    Get ComLastStatus Of hoHttp To iRespStatusCode
    Showln "Response Status Code = " iRespStatusCode
    If (iRespStatusCode >= 400) Begin
        Showln "Response Header:"
        Get ComLastHeader Of hoHttp To sTemp1
        Showln sTemp1
        Showln "Failed."
        Procedure_Return
    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

    Get ComStringOf Of hoJResp "title" To sTitle
    Get ComStringOf Of hoJResp "layout_type" To sLayout_type
    Get ComStringOf Of hoJResp "author_handle" To sAuthor_handle
    Get ComStringOf Of hoJResp "author_name" To sAuthor_name
    Get ComStringOf Of hoJResp "created_at" To sCreated_at
    Get ComStringOf Of hoJResp "description" To sDescription
    Get ComStringOf Of hoJResp "id" To sId
    Get ComBoolOf Of hoJResp "is_read_only" To iIs_read_only
    Get ComStringOf Of hoJResp "modified_at" To sModified_at
    Get ComStringOf Of hoJResp "reflow_type" To sReflow_type
    Get ComStringOf Of hoJResp "url" To sUrl
    Move 0 To i
    Get ComSizeOfArray Of hoJResp "widgets" To iCount_i
    While (i < iCount_i)
        Set ComI Of hoJResp To i
        Get ComStringOf Of hoJResp "widgets[i].definition.type" To sV_Type
        Get ComStringOf Of hoJResp "widgets[i].definition.alert_id" To sAlert_id
        Get ComStringOf Of hoJResp "widgets[i].definition.viz_type" To sViz_type
        Get ComStringOf Of hoJResp "widgets[i].definition.time.live_span" To sLive_span
        Get ComStringOf Of hoJResp "widgets[i].definition.title" To sTitle
        Get ComStringOf Of hoJResp "widgets[i].definition.title_align" To sTitle_align
        Get ComStringOf Of hoJResp "widgets[i].definition.title_size" To sTitle_size
        Get ComIntOf Of hoJResp "widgets[i].id" To iId_int
        Get ComIntOf Of hoJResp "widgets[i].layout.x" To X
        Get ComIntOf Of hoJResp "widgets[i].layout.y" To Y
        Get ComIntOf Of hoJResp "widgets[i].layout.width" To iWidth
        Get ComIntOf Of hoJResp "widgets[i].layout.height" To iHeight
        Get ComBoolOf Of hoJResp "widgets[i].layout.is_column_break" To iIs_column_break
        Move (i + 1) To i
    Loop

    Move 0 To i
    Get ComSizeOfArray Of hoJResp "notify_list" To iCount_i
    While (i < iCount_i)
        Set ComI Of hoJResp To i
        Get ComStringOf Of hoJResp "notify_list[i]" To sStrVal
        Move (i + 1) To i
    Loop

    Move 0 To i
    Get ComSizeOfArray Of hoJResp "restricted_roles" To iCount_i
    While (i < iCount_i)
        Set ComI Of hoJResp To i
        Get ComStringOf Of hoJResp "restricted_roles[i]" To sStrVal
        Move (i + 1) To i
    Loop

    Move 0 To i
    Get ComSizeOfArray Of hoJResp "tags" To iCount_i
    While (i < iCount_i)
        Set ComI Of hoJResp To i
        Get ComStringOf Of hoJResp "tags[i]" To sStrVal
        Move (i + 1) To i
    Loop

    Move 0 To i
    Get ComSizeOfArray Of hoJResp "template_variable_presets" To iCount_i
    While (i < iCount_i)
        Set ComI Of hoJResp To i
        Get ComStringOf Of hoJResp "template_variable_presets[i].name" To sName
        Move 0 To j
        Get ComSizeOfArray Of hoJResp "template_variable_presets[i].template_variables" To iCount_j
        While (j < iCount_j)
            Set ComJ Of hoJResp To j
            Get ComStringOf Of hoJResp "template_variable_presets[i].template_variables[j].name" To sName
            Get ComStringOf Of hoJResp "template_variable_presets[i].template_variables[j].value" To sValue
            Move 0 To k
            Get ComSizeOfArray Of hoJResp "template_variable_presets[i].template_variables[j].values" To iCount_k
            While (k < iCount_k)
                Set ComK Of hoJResp To k
                Get ComStringOf Of hoJResp "template_variable_presets[i].template_variables[j].values[k]" To sStrVal
                Move (k + 1) To k
            Loop

            Move (j + 1) To j
        Loop

        Move (i + 1) To i
    Loop

    Move 0 To i
    Get ComSizeOfArray Of hoJResp "template_variables" To iCount_i
    While (i < iCount_i)
        Set ComI Of hoJResp To i
        Get ComStringOf Of hoJResp "template_variables[i].name" To sName
        Get ComStringOf Of hoJResp "template_variables[i].default" To sDefault
        Get ComStringOf Of hoJResp "template_variables[i].prefix" To sPrefix
        Move 0 To j
        Get ComSizeOfArray Of hoJResp "template_variables[i].available_values" To iCount_j
        While (j < iCount_j)
            Set ComJ Of hoJResp To j
            Get ComStringOf Of hoJResp "template_variables[i].available_values[j]" To sStrVal
            Move (j + 1) To j
        Loop

        Move 0 To j
        Get ComSizeOfArray Of hoJResp "template_variables[i].defaults" To iCount_j
        While (j < iCount_j)
            Set ComJ Of hoJResp To j
            Get ComStringOf Of hoJResp "template_variables[i].defaults[j]" To sStrVal
            Move (j + 1) To j
        Loop

        Move (i + 1) To i
    Loop



End_Procedure

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}"
    }
  ]
}