Chilkat Online Tools

Foxpro / Datadog API Collection / Get all monitor details

Back to Collection Items

LOCAL loHttp
LOCAL lnSuccess
LOCAL loQueryParams
LOCAL loResp
LOCAL loSbResponseBody
LOCAL loJarrResp
LOCAL lnRespStatusCode
LOCAL loJson
LOCAL lcV_type
LOCAL lcQuery
LOCAL lcCreated
LOCAL lcV_Email
LOCAL lcHandle
LOCAL lcName
LOCAL lcDeleted
LOCAL lnId
LOCAL lcMessage
LOCAL lcModified
LOCAL lnMulti
LOCAL lcName
LOCAL lcGroup_by
LOCAL lcMetric
LOCAL lcV_Type
LOCAL lnEnable_logs_sample
LOCAL lnEnable_samples
LOCAL lcEscalation_message
LOCAL lnEvaluation_delay
LOCAL lcGroup_retention_duration
LOCAL lnGroupby_simple_monitor
LOCAL lnInclude_tags
LOCAL lnLocked
LOCAL lnMin_failure_duration
LOCAL lnMin_location_failed
LOCAL lnNew_group_delay
LOCAL lnNew_host_delay
LOCAL lnNo_data_timeframe
LOCAL lcNotification_preset_name
LOCAL lnNotify_audit
LOCAL lnNotify_no_data
LOCAL lcOn_missing_data
LOCAL lcRenotify_interval
LOCAL lnRenotify_occurrences
LOCAL lnRequire_full_window
LOCAL lcDay_starts
LOCAL lnHour_starts
LOCAL lnMonth_starts
LOCAL lnUt_d_e
LOCAL lcSynthetics_check_id
LOCAL lcRecovery_window
LOCAL lcTrigger_window
LOCAL lcCritical
LOCAL lcCritical_recovery
LOCAL lcOk
LOCAL lcUnknown
LOCAL lcWarning
LOCAL lcWarning_recovery
LOCAL lcTimeout_h
LOCAL lcOverall_state
LOCAL lnPriority
LOCAL lnLast_nodata_ts
LOCAL lnLast_notified_ts
LOCAL lnLast_resolved_ts
LOCAL lnLast_triggered_ts
LOCAL lcUllamco2Name
LOCAL lcStatus
LOCAL lnVoluptate_0cLast_nodata_ts
LOCAL lnVoluptate_0cLast_notified_ts
LOCAL lnVoluptate_0cLast_resolved_ts
LOCAL lnVoluptate_0cLast_triggered_ts
LOCAL lcVoluptate_0cName
LOCAL lcVoluptate_0cStatus
LOCAL lnUt_8
LOCAL lnUt7Last_nodata_ts
LOCAL lnUt7Last_notified_ts
LOCAL lnUt7Last_resolved_ts
LOCAL lnUt7Last_triggered_ts
LOCAL lcUt7Name
LOCAL lcUt7Status
LOCAL j
LOCAL lnCount_j
LOCAL lnV_end
LOCAL lnStart
LOCAL k
LOCAL lnCount_k
LOCAL lcStrVal
LOCAL lcData_source
LOCAL lcAggregation
LOCAL lnInterval
LOCAL lcComputeMetric
LOCAL lcQuery
LOCAL lcFacet
LOCAL lnLimit
LOCAL lcSortAggregation
LOCAL lcSortMetric
LOCAL lcOrder
LOCAL i
LOCAL lnCount_i

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

* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http')
loHttp = CreateObject('Chilkat.Http')

* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject')
loQueryParams = CreateObject('Chilkat.JsonObject')
loQueryParams.UpdateString("group_states","alert")
loQueryParams.UpdateString("name","tempor Ut sed velit")
loQueryParams.UpdateString("tags","host:host0")
loQueryParams.UpdateString("monitor_tags","service:my-app")
loQueryParams.UpdateString("with_downtimes","true")
loQueryParams.UpdateInt("id_offset",-62147425)
loQueryParams.UpdateInt("page",0)
loQueryParams.UpdateInt("page_size",20)

loHttp.SetRequestHeader("Accept","application/json")

loResp = loHttp.QuickRequestParams("GET","https://api.app.ddog-gov.com/api/v1/monitor",loQueryParams)
IF (loHttp.LastMethodSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loHttp
    RELEASE loQueryParams
    CANCEL
ENDIF

* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.StringBuilder')
loSbResponseBody = CreateObject('Chilkat.StringBuilder')
loResp.GetBodySb(loSbResponseBody)

* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonArray')
loJarrResp = CreateObject('Chilkat.JsonArray')
loJarrResp.LoadSb(loSbResponseBody)
loJarrResp.EmitCompact = 0

? "Response Body:"
? loJarrResp.Emit()

lnRespStatusCode = loResp.StatusCode
? "Response Status Code = " + STR(lnRespStatusCode)
IF (lnRespStatusCode >= 400) THEN
    ? "Response Header:"
    ? loResp.Header
    ? "Failed."
    RELEASE loResp
    RELEASE loHttp
    RELEASE loQueryParams
    RELEASE loSbResponseBody
    RELEASE loJarrResp
    CANCEL
ENDIF

RELEASE loResp

* Sample JSON response:
* (Sample code for parsing the JSON response is shown below)

* [
*   {
*     "type": "query alert",
*     "query": "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100",
*     "created": "1977-10-10T13:08:01.527Z",
*     "creator": {
*       "email": "eiusmod aliquip pariatur dolore",
*       "handle": "fugiat id sint",
*       "name": "elit in"
*     },
*     "deleted": "2015-07-16T18:46:50.390Z",
*     "id": 83649643,
*     "matching_downtimes": [
*       {
*         "id": 1625,
*         "end": 1412792983,
*         "scope": [
*           "env:staging"
*         ],
*         "start": 1412792983
*       },
*       {
*         "id": 1625,
*         "end": 1412792983,
*         "scope": [
*           "env:staging"
*         ],
*         "start": 1412792983
*       }
*     ],
*     "message": "adi",
*     "modified": "1973-08-05T09:10:13.718Z",
*     "multi": false,
*     "name": "My monitor",
*     "options": {
*       "aggregation": {
*         "group_by": "host",
*         "metric": "metrics.name",
*         "type": "count"
*       },
*       "device_ids": [
*         "firefox.tablet",
*         "mobile_small"
*       ],
*       "enable_logs_sample": true,
*       "enable_samples": true,
*       "escalation_message": "none",
*       "evaluation_delay": 27121357,
*       "group_retention_duration": "esse aliquip ullamco irure",
*       "groupby_simple_monitor": true,
*       "include_tags": true,
*       "locked": false,
*       "min_failure_duration": 0,
*       "min_location_failed": 1,
*       "new_group_delay": -9275927,
*       "new_host_delay": 300,
*       "no_data_timeframe": 58492166,
*       "notification_preset_name": "show_all",
*       "notify_audit": false,
*       "notify_by": [
*         "ut quis e",
*         "dolore elit"
*       ],
*       "notify_no_data": false,
*       "on_missing_data": "show_no_data",
*       "renotify_interval": null,
*       "renotify_occurrences": -27638100,
*       "renotify_statuses": [
*         "alert",
*         "warn"
*       ],
*       "require_full_window": true,
*       "scheduling_options": {
*         "evaluation_window": {
*           "day_starts": "04:00",
*           "hour_starts": 0,
*           "month_starts": 1
*         }
*       },
*       "silenced": {
*         "Ut_d_e": 94650378
*       },
*       "synthetics_check_id": "enim et tempor",
*       "threshold_windows": {
*         "recovery_window": "ipsum eiusmod",
*         "trigger_window": "ullamco"
*       },
*       "thresholds": {
*         "critical": -74585739.55469063,
*         "critical_recovery": -14449679.792215124,
*         "ok": 69468073.65422091,
*         "unknown": -35840527.53565459,
*         "warning": -78191860.79094723,
*         "warning_recovery": 30967604.742167816
*       },
*       "timeout_h": null,
*       "variables": [
*         {
*           "data_source": "rum",
*           "compute": {
*             "aggregation": "avg",
*             "interval": 60000,
*             "metric": "@duration"
*           },
*           "name": "query_errors",
*           "group_by": [
*             {
*               "facet": "status",
*               "limit": 10,
*               "sort": {
*                 "aggregation": "avg",
*                 "metric": "qui Ut cupidatat proid",
*                 "order": "desc"
*               }
*             },
*             {
*               "facet": "status",
*               "limit": 10,
*               "sort": {
*                 "aggregation": "avg",
*                 "metric": "nostrud mollit",
*                 "order": "desc"
*               }
*             }
*           ],
*           "indexes": [
*             "days-3",
*             "days-7"
*           ],
*           "search": {
*             "query": "service:query"
*           }
*         },
*         {
*           "data_source": "rum",
*           "compute": {
*             "aggregation": "avg",
*             "interval": 60000,
*             "metric": "@duration"
*           },
*           "name": "query_errors",
*           "group_by": [
*             {
*               "facet": "status",
*               "limit": 10,
*               "sort": {
*                 "aggregation": "avg",
*                 "metric": "ut non",
*                 "order": "desc"
*               }
*             },
*             {
*               "facet": "status",
*               "limit": 10,
*               "sort": {
*                 "aggregation": "avg",
*                 "metric": "reprehenderit sint eu proident",
*                 "order": "desc"
*               }
*             }
*           ],
*           "indexes": [
*             "days-3",
*             "days-7"
*           ],
*           "search": {
*             "query": "service:query"
*           }
*         }
*       ]
*     },
*     "overall_state": "Unknown",
*     "priority": 4,
*     "restricted_roles": [
*       "Ut",
*       "dolor ad Duis proident"
*     ],
*     "state": {
*       "groups": {
*         "ullamco2": {
*           "last_nodata_ts": -30657062,
*           "last_notified_ts": -69789968,
*           "last_resolved_ts": -40935564,
*           "last_triggered_ts": 63742261,
*           "name": "id",
*           "status": "Alert"
*         },
*         "voluptate_0c": {
*           "last_nodata_ts": 13097104,
*           "last_notified_ts": 53104444,
*           "last_resolved_ts": -69320667,
*           "last_triggered_ts": 27152807,
*           "name": "quis amet",
*           "status": "Alert"
*         }
*       }
*     },
*     "tags": [
*       "fugiat culpa aliqua consectetur",
*       "minim in"
*     ]
*   },
*   {
*     "type": "query alert",
*     "query": "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100",
*     "created": "1952-04-01T14:02:58.093Z",
*     "creator": {
*       "email": "esse ad veniam qui",
*       "handle": "nulla enim non",
*       "name": "ut reprehend"
*     },
*     "deleted": "2005-07-24T20:18:36.078Z",
*     "id": 14961847,
*     "matching_downtimes": [
*       {
*         "id": 1625,
*         "end": 1412792983,
*         "scope": [
*           "env:staging"
*         ],
*         "start": 1412792983
*       },
*       {
*         "id": 1625,
*         "end": 1412792983,
*         "scope": [
*           "env:staging"
*         ],
*         "start": 1412792983
*       }
*     ],
*     "message": "labore nulla",
*     "modified": "2013-05-28T22:30:26.014Z",
*     "multi": true,
*     "name": "My monitor",
*     "options": {
*       "aggregation": {
*         "group_by": "host",
*         "metric": "metrics.name",
*         "type": "count"
*       },
*       "device_ids": [
*         "chrome.tablet",
*         "firefox.laptop_large"
*       ],
*       "enable_logs_sample": false,
*       "enable_samples": true,
*       "escalation_message": "none",
*       "evaluation_delay": 48023490,
*       "group_retention_duration": "veniam eiusmod anim",
*       "groupby_simple_monitor": true,
*       "include_tags": true,
*       "locked": false,
*       "min_failure_duration": 0,
*       "min_location_failed": 1,
*       "new_group_delay": -78698406,
*       "new_host_delay": 300,
*       "no_data_timeframe": -29298203,
*       "notification_preset_name": "show_all",
*       "notify_audit": false,
*       "notify_by": [
*         "in labore irure reprehenderit",
*         "Ut ea"
*       ],
*       "notify_no_data": false,
*       "on_missing_data": "default",
*       "renotify_interval": null,
*       "renotify_occurrences": 88843653,
*       "renotify_statuses": [
*         "warn",
*         "no data"
*       ],
*       "require_full_window": false,
*       "scheduling_options": {
*         "evaluation_window": {
*           "day_starts": "04:00",
*           "hour_starts": 0,
*           "month_starts": 1
*         }
*       },
*       "silenced": {
*         "ut_8": -75892703
*       },
*       "synthetics_check_id": "ut et aute cupidatat",
*       "threshold_windows": {
*         "recovery_window": "dolor do",
*         "trigger_window": "pariatur"
*       },
*       "thresholds": {
*         "critical": -5336230.352944598,
*         "critical_recovery": 7945004.71738635,
*         "ok": -68115416.21610427,
*         "unknown": 89541673.34797806,
*         "warning": 66901483.96194494,
*         "warning_recovery": -39599171.26178945
*       },
*       "timeout_h": null,
*       "variables": [
*         {
*           "data_source": "rum",
*           "compute": {
*             "aggregation": "avg",
*             "interval": 60000,
*             "metric": "@duration"
*           },
*           "name": "query_errors",
*           "group_by": [
*             {
*               "facet": "status",
*               "limit": 10,
*               "sort": {
*                 "aggregation": "avg",
*                 "metric": "deserunt nisi mollit",
*                 "order": "desc"
*               }
*             },
*             {
*               "facet": "status",
*               "limit": 10,
*               "sort": {
*                 "aggregation": "avg",
*                 "metric": "dolor pariatur",
*                 "order": "desc"
*               }
*             }
*           ],
*           "indexes": [
*             "days-3",
*             "days-7"
*           ],
*           "search": {
*             "query": "service:query"
*           }
*         },
*         {
*           "data_source": "rum",
*           "compute": {
*             "aggregation": "avg",
*             "interval": 60000,
*             "metric": "@duration"
*           },
*           "name": "query_errors",
*           "group_by": [
*             {
*               "facet": "status",
*               "limit": 10,
*               "sort": {
*                 "aggregation": "avg",
*                 "metric": "l",
*                 "order": "desc"
*               }
*             },
*             {
*               "facet": "status",
*               "limit": 10,
*               "sort": {
*                 "aggregation": "avg",
*                 "metric": "ut non",
*                 "order": "desc"
*               }
*             }
*           ],
*           "indexes": [
*             "days-3",
*             "days-7"
*           ],
*           "search": {
*             "query": "service:query"
*           }
*         }
*       ]
*     },
*     "overall_state": "Unknown",
*     "priority": 3,
*     "restricted_roles": [
*       "ipsum laboris laborum incididunt",
*       "fugiat non est"
*     ],
*     "state": {
*       "groups": {
*         "Ut7": {
*           "last_nodata_ts": 21127128,
*           "last_notified_ts": 19208840,
*           "last_resolved_ts": 29022384,
*           "last_triggered_ts": -96682791,
*           "name": "ex tempor",
*           "status": "OK"
*         }
*       }
*     },
*     "tags": [
*       "dolor nulla dolore elit",
*       "consequat sunt in"
*     ]
*   }
* ]

* Sample code for parsing the JSON response...
* Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code

i = 0
lnCount_i = loJarrResp.Size
DO WHILE i < lnCount_i
    loJson = loJarrResp.ObjectAt(i)
    lcV_type = loJson.StringOf("type")
    lcQuery = loJson.StringOf("query")
    lcCreated = loJson.StringOf("created")
    lcV_Email = loJson.StringOf("creator.email")
    lcHandle = loJson.StringOf("creator.handle")
    lcName = loJson.StringOf("creator.name")
    lcDeleted = loJson.StringOf("deleted")
    lnId = loJson.IntOf("id")
    lcMessage = loJson.StringOf("message")
    lcModified = loJson.StringOf("modified")
    lnMulti = loJson.BoolOf("multi")
    lcName = loJson.StringOf("name")
    lcGroup_by = loJson.StringOf("options.aggregation.group_by")
    lcMetric = loJson.StringOf("options.aggregation.metric")
    lcV_Type = loJson.StringOf("options.aggregation.type")
    lnEnable_logs_sample = loJson.BoolOf("options.enable_logs_sample")
    lnEnable_samples = loJson.BoolOf("options.enable_samples")
    lcEscalation_message = loJson.StringOf("options.escalation_message")
    lnEvaluation_delay = loJson.IntOf("options.evaluation_delay")
    lcGroup_retention_duration = loJson.StringOf("options.group_retention_duration")
    lnGroupby_simple_monitor = loJson.BoolOf("options.groupby_simple_monitor")
    lnInclude_tags = loJson.BoolOf("options.include_tags")
    lnLocked = loJson.BoolOf("options.locked")
    lnMin_failure_duration = loJson.IntOf("options.min_failure_duration")
    lnMin_location_failed = loJson.IntOf("options.min_location_failed")
    lnNew_group_delay = loJson.IntOf("options.new_group_delay")
    lnNew_host_delay = loJson.IntOf("options.new_host_delay")
    lnNo_data_timeframe = loJson.IntOf("options.no_data_timeframe")
    lcNotification_preset_name = loJson.StringOf("options.notification_preset_name")
    lnNotify_audit = loJson.BoolOf("options.notify_audit")
    lnNotify_no_data = loJson.BoolOf("options.notify_no_data")
    lcOn_missing_data = loJson.StringOf("options.on_missing_data")
    lcRenotify_interval = loJson.StringOf("options.renotify_interval")
    lnRenotify_occurrences = loJson.IntOf("options.renotify_occurrences")
    lnRequire_full_window = loJson.BoolOf("options.require_full_window")
    lcDay_starts = loJson.StringOf("options.scheduling_options.evaluation_window.day_starts")
    lnHour_starts = loJson.IntOf("options.scheduling_options.evaluation_window.hour_starts")
    lnMonth_starts = loJson.IntOf("options.scheduling_options.evaluation_window.month_starts")
    lnUt_d_e = loJson.IntOf("options.silenced.Ut_d_e")
    lcSynthetics_check_id = loJson.StringOf("options.synthetics_check_id")
    lcRecovery_window = loJson.StringOf("options.threshold_windows.recovery_window")
    lcTrigger_window = loJson.StringOf("options.threshold_windows.trigger_window")
    lcCritical = loJson.StringOf("options.thresholds.critical")
    lcCritical_recovery = loJson.StringOf("options.thresholds.critical_recovery")
    lcOk = loJson.StringOf("options.thresholds.ok")
    lcUnknown = loJson.StringOf("options.thresholds.unknown")
    lcWarning = loJson.StringOf("options.thresholds.warning")
    lcWarning_recovery = loJson.StringOf("options.thresholds.warning_recovery")
    lcTimeout_h = loJson.StringOf("options.timeout_h")
    lcOverall_state = loJson.StringOf("overall_state")
    lnPriority = loJson.IntOf("priority")
    lnLast_nodata_ts = loJson.IntOf("state.groups.ullamco2.last_nodata_ts")
    lnLast_notified_ts = loJson.IntOf("state.groups.ullamco2.last_notified_ts")
    lnLast_resolved_ts = loJson.IntOf("state.groups.ullamco2.last_resolved_ts")
    lnLast_triggered_ts = loJson.IntOf("state.groups.ullamco2.last_triggered_ts")
    lcUllamco2Name = loJson.StringOf("state.groups.ullamco2.name")
    lcStatus = loJson.StringOf("state.groups.ullamco2.status")
    lnVoluptate_0cLast_nodata_ts = loJson.IntOf("state.groups.voluptate_0c.last_nodata_ts")
    lnVoluptate_0cLast_notified_ts = loJson.IntOf("state.groups.voluptate_0c.last_notified_ts")
    lnVoluptate_0cLast_resolved_ts = loJson.IntOf("state.groups.voluptate_0c.last_resolved_ts")
    lnVoluptate_0cLast_triggered_ts = loJson.IntOf("state.groups.voluptate_0c.last_triggered_ts")
    lcVoluptate_0cName = loJson.StringOf("state.groups.voluptate_0c.name")
    lcVoluptate_0cStatus = loJson.StringOf("state.groups.voluptate_0c.status")
    lnUt_8 = loJson.IntOf("options.silenced.ut_8")
    lnUt7Last_nodata_ts = loJson.IntOf("state.groups.Ut7.last_nodata_ts")
    lnUt7Last_notified_ts = loJson.IntOf("state.groups.Ut7.last_notified_ts")
    lnUt7Last_resolved_ts = loJson.IntOf("state.groups.Ut7.last_resolved_ts")
    lnUt7Last_triggered_ts = loJson.IntOf("state.groups.Ut7.last_triggered_ts")
    lcUt7Name = loJson.StringOf("state.groups.Ut7.name")
    lcUt7Status = loJson.StringOf("state.groups.Ut7.status")
    j = 0
    lnCount_j = loJson.SizeOfArray("matching_downtimes")
    DO WHILE j < lnCount_j
        loJson.J = j
        lnId = loJson.IntOf("matching_downtimes[j].id")
        lnV_end = loJson.IntOf("matching_downtimes[j].end")
        lnStart = loJson.IntOf("matching_downtimes[j].start")
        k = 0
        lnCount_k = loJson.SizeOfArray("matching_downtimes[j].scope")
        DO WHILE k < lnCount_k
            loJson.K = k
            lcStrVal = loJson.StringOf("matching_downtimes[j].scope[k]")
            k = k + 1
        ENDDO
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("options.device_ids")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcStrVal = loJson.StringOf("options.device_ids[j]")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("options.notify_by")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcStrVal = loJson.StringOf("options.notify_by[j]")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("options.renotify_statuses")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcStrVal = loJson.StringOf("options.renotify_statuses[j]")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("options.variables")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcData_source = loJson.StringOf("options.variables[j].data_source")
        lcAggregation = loJson.StringOf("options.variables[j].compute.aggregation")
        lnInterval = loJson.IntOf("options.variables[j].compute.interval")
        lcComputeMetric = loJson.StringOf("options.variables[j].compute.metric")
        lcName = loJson.StringOf("options.variables[j].name")
        lcQuery = loJson.StringOf("options.variables[j].search.query")
        k = 0
        lnCount_k = loJson.SizeOfArray("options.variables[j].group_by")
        DO WHILE k < lnCount_k
            loJson.K = k
            lcFacet = loJson.StringOf("options.variables[j].group_by[k].facet")
            lnLimit = loJson.IntOf("options.variables[j].group_by[k].limit")
            lcSortAggregation = loJson.StringOf("options.variables[j].group_by[k].sort.aggregation")
            lcSortMetric = loJson.StringOf("options.variables[j].group_by[k].sort.metric")
            lcOrder = loJson.StringOf("options.variables[j].group_by[k].sort.order")
            k = k + 1
        ENDDO
        k = 0
        lnCount_k = loJson.SizeOfArray("options.variables[j].indexes")
        DO WHILE k < lnCount_k
            loJson.K = k
            lcStrVal = loJson.StringOf("options.variables[j].indexes[k]")
            k = k + 1
        ENDDO
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("restricted_roles")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcStrVal = loJson.StringOf("restricted_roles[j]")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("tags")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcStrVal = loJson.StringOf("tags[j]")
        j = j + 1
    ENDDO
    RELEASE loJson
    i = i + 1
ENDDO

RELEASE loHttp
RELEASE loQueryParams
RELEASE loSbResponseBody
RELEASE loJarrResp

Curl Command

curl -G -d "group_states=alert"
	-d "name=tempor%20Ut%20sed%20velit"
	-d "tags=host%3Ahost0"
	-d "monitor_tags=service%3Amy-app"
	-d "with_downtimes=true"
	-d "id_offset=-62147425"
	-d "page=0"
	-d "page_size=20"
	-H "Accept: application/json"
https://api.app.ddog-gov.com/api/v1/monitor

Postman Collection Item JSON

{
  "name": "Get all monitor details",
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      }
    ],
    "url": {
      "raw": "{{baseUrl}}/api/v1/monitor?group_states=alert&name=tempor Ut sed velit&tags=host:host0&monitor_tags=service:my-app&with_downtimes=true&id_offset=-62147425&page=0&page_size=20",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "api",
        "v1",
        "monitor"
      ],
      "query": [
        {
          "key": "group_states",
          "value": "alert",
          "description": "When specified, shows additional information about the group states.\nChoose one or more from `all`, `alert`, `warn`, and `no data`."
        },
        {
          "key": "name",
          "value": "tempor Ut sed velit",
          "description": "A string to filter monitors by name."
        },
        {
          "key": "tags",
          "value": "host:host0",
          "description": "A comma separated list indicating what tags, if any, should be used to filter the list of monitors by scope.\nFor example, `host:host0`."
        },
        {
          "key": "monitor_tags",
          "value": "service:my-app",
          "description": "A comma separated list indicating what service and/or custom tags, if any, should be used to filter the list of monitors.\nTags created in the Datadog UI automatically have the service key prepended. For example, `service:my-app`."
        },
        {
          "key": "with_downtimes",
          "value": "true",
          "description": "If this argument is set to true, then the returned data includes all current active downtimes for each monitor."
        },
        {
          "key": "id_offset",
          "value": "-62147425",
          "description": "Use this parameter for paginating through large sets of monitors. Start with a value of zero, make a request, set the value to the last ID of result set, and then repeat until the response is empty."
        },
        {
          "key": "page",
          "value": "0",
          "description": "The page to start paginating from. If this argument is not specified, the request returns all monitors without pagination."
        },
        {
          "key": "page_size",
          "value": "20",
          "description": "The number of monitors to return per page. If the page argument is not specified, the default behavior returns all monitors without a `page_size` limit. However, if page is specified and `page_size` is not, the argument defaults to 100."
        }
      ]
    },
    "description": "Get details about the specified monitor from your organization."
  },
  "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/monitor?group_states=alert&name=tempor Ut sed velit&tags=host:host0&monitor_tags=service:my-app&with_downtimes=true&id_offset=-62147425&page=0&page_size=20",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "v1",
            "monitor"
          ],
          "query": [
            {
              "key": "group_states",
              "value": "alert",
              "description": "When specified, shows additional information about the group states.\nChoose one or more from `all`, `alert`, `warn`, and `no data`."
            },
            {
              "key": "name",
              "value": "tempor Ut sed velit",
              "description": "A string to filter monitors by name."
            },
            {
              "key": "tags",
              "value": "host:host0",
              "description": "A comma separated list indicating what tags, if any, should be used to filter the list of monitors by scope.\nFor example, `host:host0`."
            },
            {
              "key": "monitor_tags",
              "value": "service:my-app",
              "description": "A comma separated list indicating what service and/or custom tags, if any, should be used to filter the list of monitors.\nTags created in the Datadog UI automatically have the service key prepended. For example, `service:my-app`."
            },
            {
              "key": "with_downtimes",
              "value": "true",
              "description": "If this argument is set to true, then the returned data includes all current active downtimes for each monitor."
            },
            {
              "key": "id_offset",
              "value": "-62147425",
              "description": "Use this parameter for paginating through large sets of monitors. Start with a value of zero, make a request, set the value to the last ID of result set, and then repeat until the response is empty."
            },
            {
              "key": "page",
              "value": "0",
              "description": "The page to start paginating from. If this argument is not specified, the request returns all monitors without pagination."
            },
            {
              "key": "page_size",
              "value": "20",
              "description": "The number of monitors to return per page. If the page argument is not specified, the default behavior returns all monitors without a `page_size` limit. However, if page is specified and `page_size` is not, the argument defaults to 100."
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "[\n  {\n    \"type\": \"query alert\",\n    \"query\": \"avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100\",\n    \"created\": \"1977-10-10T13:08:01.527Z\",\n    \"creator\": {\n      \"email\": \"eiusmod aliquip pariatur dolore\",\n      \"handle\": \"fugiat id sint\",\n      \"name\": \"elit in\"\n    },\n    \"deleted\": \"2015-07-16T18:46:50.390Z\",\n    \"id\": 83649643,\n    \"matching_downtimes\": [\n      {\n        \"id\": 1625,\n        \"end\": 1412792983,\n        \"scope\": [\n          \"env:staging\"\n        ],\n        \"start\": 1412792983\n      },\n      {\n        \"id\": 1625,\n        \"end\": 1412792983,\n        \"scope\": [\n          \"env:staging\"\n        ],\n        \"start\": 1412792983\n      }\n    ],\n    \"message\": \"adi\",\n    \"modified\": \"1973-08-05T09:10:13.718Z\",\n    \"multi\": false,\n    \"name\": \"My monitor\",\n    \"options\": {\n      \"aggregation\": {\n        \"group_by\": \"host\",\n        \"metric\": \"metrics.name\",\n        \"type\": \"count\"\n      },\n      \"device_ids\": [\n        \"firefox.tablet\",\n        \"mobile_small\"\n      ],\n      \"enable_logs_sample\": true,\n      \"enable_samples\": true,\n      \"escalation_message\": \"none\",\n      \"evaluation_delay\": 27121357,\n      \"group_retention_duration\": \"esse aliquip ullamco irure\",\n      \"groupby_simple_monitor\": true,\n      \"include_tags\": true,\n      \"locked\": false,\n      \"min_failure_duration\": 0,\n      \"min_location_failed\": 1,\n      \"new_group_delay\": -9275927,\n      \"new_host_delay\": 300,\n      \"no_data_timeframe\": 58492166,\n      \"notification_preset_name\": \"show_all\",\n      \"notify_audit\": false,\n      \"notify_by\": [\n        \"ut quis e\",\n        \"dolore elit\"\n      ],\n      \"notify_no_data\": false,\n      \"on_missing_data\": \"show_no_data\",\n      \"renotify_interval\": null,\n      \"renotify_occurrences\": -27638100,\n      \"renotify_statuses\": [\n        \"alert\",\n        \"warn\"\n      ],\n      \"require_full_window\": true,\n      \"scheduling_options\": {\n        \"evaluation_window\": {\n          \"day_starts\": \"04:00\",\n          \"hour_starts\": 0,\n          \"month_starts\": 1\n        }\n      },\n      \"silenced\": {\n        \"Ut_d_e\": 94650378\n      },\n      \"synthetics_check_id\": \"enim et tempor\",\n      \"threshold_windows\": {\n        \"recovery_window\": \"ipsum eiusmod\",\n        \"trigger_window\": \"ullamco\"\n      },\n      \"thresholds\": {\n        \"critical\": -74585739.55469063,\n        \"critical_recovery\": -14449679.792215124,\n        \"ok\": 69468073.65422091,\n        \"unknown\": -35840527.53565459,\n        \"warning\": -78191860.79094723,\n        \"warning_recovery\": 30967604.742167816\n      },\n      \"timeout_h\": null,\n      \"variables\": [\n        {\n          \"data_source\": \"rum\",\n          \"compute\": {\n            \"aggregation\": \"avg\",\n            \"interval\": 60000,\n            \"metric\": \"@duration\"\n          },\n          \"name\": \"query_errors\",\n          \"group_by\": [\n            {\n              \"facet\": \"status\",\n              \"limit\": 10,\n              \"sort\": {\n                \"aggregation\": \"avg\",\n                \"metric\": \"qui Ut cupidatat proid\",\n                \"order\": \"desc\"\n              }\n            },\n            {\n              \"facet\": \"status\",\n              \"limit\": 10,\n              \"sort\": {\n                \"aggregation\": \"avg\",\n                \"metric\": \"nostrud mollit\",\n                \"order\": \"desc\"\n              }\n            }\n          ],\n          \"indexes\": [\n            \"days-3\",\n            \"days-7\"\n          ],\n          \"search\": {\n            \"query\": \"service:query\"\n          }\n        },\n        {\n          \"data_source\": \"rum\",\n          \"compute\": {\n            \"aggregation\": \"avg\",\n            \"interval\": 60000,\n            \"metric\": \"@duration\"\n          },\n          \"name\": \"query_errors\",\n          \"group_by\": [\n            {\n              \"facet\": \"status\",\n              \"limit\": 10,\n              \"sort\": {\n                \"aggregation\": \"avg\",\n                \"metric\": \"ut non\",\n                \"order\": \"desc\"\n              }\n            },\n            {\n              \"facet\": \"status\",\n              \"limit\": 10,\n              \"sort\": {\n                \"aggregation\": \"avg\",\n                \"metric\": \"reprehenderit sint eu proident\",\n                \"order\": \"desc\"\n              }\n            }\n          ],\n          \"indexes\": [\n            \"days-3\",\n            \"days-7\"\n          ],\n          \"search\": {\n            \"query\": \"service:query\"\n          }\n        }\n      ]\n    },\n    \"overall_state\": \"Unknown\",\n    \"priority\": 4,\n    \"restricted_roles\": [\n      \"Ut\",\n      \"dolor ad Duis proident\"\n    ],\n    \"state\": {\n      \"groups\": {\n        \"ullamco2\": {\n          \"last_nodata_ts\": -30657062,\n          \"last_notified_ts\": -69789968,\n          \"last_resolved_ts\": -40935564,\n          \"last_triggered_ts\": 63742261,\n          \"name\": \"id\",\n          \"status\": \"Alert\"\n        },\n        \"voluptate_0c\": {\n          \"last_nodata_ts\": 13097104,\n          \"last_notified_ts\": 53104444,\n          \"last_resolved_ts\": -69320667,\n          \"last_triggered_ts\": 27152807,\n          \"name\": \"quis amet\",\n          \"status\": \"Alert\"\n        }\n      }\n    },\n    \"tags\": [\n      \"fugiat culpa aliqua consectetur\",\n      \"minim in\"\n    ]\n  },\n  {\n    \"type\": \"query alert\",\n    \"query\": \"avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100\",\n    \"created\": \"1952-04-01T14:02:58.093Z\",\n    \"creator\": {\n      \"email\": \"esse ad veniam qui\",\n      \"handle\": \"nulla enim non\",\n      \"name\": \"ut reprehend\"\n    },\n    \"deleted\": \"2005-07-24T20:18:36.078Z\",\n    \"id\": 14961847,\n    \"matching_downtimes\": [\n      {\n        \"id\": 1625,\n        \"end\": 1412792983,\n        \"scope\": [\n          \"env:staging\"\n        ],\n        \"start\": 1412792983\n      },\n      {\n        \"id\": 1625,\n        \"end\": 1412792983,\n        \"scope\": [\n          \"env:staging\"\n        ],\n        \"start\": 1412792983\n      }\n    ],\n    \"message\": \"labore nulla\",\n    \"modified\": \"2013-05-28T22:30:26.014Z\",\n    \"multi\": true,\n    \"name\": \"My monitor\",\n    \"options\": {\n      \"aggregation\": {\n        \"group_by\": \"host\",\n        \"metric\": \"metrics.name\",\n        \"type\": \"count\"\n      },\n      \"device_ids\": [\n        \"chrome.tablet\",\n        \"firefox.laptop_large\"\n      ],\n      \"enable_logs_sample\": false,\n      \"enable_samples\": true,\n      \"escalation_message\": \"none\",\n      \"evaluation_delay\": 48023490,\n      \"group_retention_duration\": \"veniam eiusmod anim\",\n      \"groupby_simple_monitor\": true,\n      \"include_tags\": true,\n      \"locked\": false,\n      \"min_failure_duration\": 0,\n      \"min_location_failed\": 1,\n      \"new_group_delay\": -78698406,\n      \"new_host_delay\": 300,\n      \"no_data_timeframe\": -29298203,\n      \"notification_preset_name\": \"show_all\",\n      \"notify_audit\": false,\n      \"notify_by\": [\n        \"in labore irure reprehenderit\",\n        \"Ut ea\"\n      ],\n      \"notify_no_data\": false,\n      \"on_missing_data\": \"default\",\n      \"renotify_interval\": null,\n      \"renotify_occurrences\": 88843653,\n      \"renotify_statuses\": [\n        \"warn\",\n        \"no data\"\n      ],\n      \"require_full_window\": false,\n      \"scheduling_options\": {\n        \"evaluation_window\": {\n          \"day_starts\": \"04:00\",\n          \"hour_starts\": 0,\n          \"month_starts\": 1\n        }\n      },\n      \"silenced\": {\n        \"ut_8\": -75892703\n      },\n      \"synthetics_check_id\": \"ut et aute cupidatat\",\n      \"threshold_windows\": {\n        \"recovery_window\": \"dolor do\",\n        \"trigger_window\": \"pariatur\"\n      },\n      \"thresholds\": {\n        \"critical\": -5336230.352944598,\n        \"critical_recovery\": 7945004.71738635,\n        \"ok\": -68115416.21610427,\n        \"unknown\": 89541673.34797806,\n        \"warning\": 66901483.96194494,\n        \"warning_recovery\": -39599171.26178945\n      },\n      \"timeout_h\": null,\n      \"variables\": [\n        {\n          \"data_source\": \"rum\",\n          \"compute\": {\n            \"aggregation\": \"avg\",\n            \"interval\": 60000,\n            \"metric\": \"@duration\"\n          },\n          \"name\": \"query_errors\",\n          \"group_by\": [\n            {\n              \"facet\": \"status\",\n              \"limit\": 10,\n              \"sort\": {\n                \"aggregation\": \"avg\",\n                \"metric\": \"deserunt nisi mollit\",\n                \"order\": \"desc\"\n              }\n            },\n            {\n              \"facet\": \"status\",\n              \"limit\": 10,\n              \"sort\": {\n                \"aggregation\": \"avg\",\n                \"metric\": \"dolor pariatur\",\n                \"order\": \"desc\"\n              }\n            }\n          ],\n          \"indexes\": [\n            \"days-3\",\n            \"days-7\"\n          ],\n          \"search\": {\n            \"query\": \"service:query\"\n          }\n        },\n        {\n          \"data_source\": \"rum\",\n          \"compute\": {\n            \"aggregation\": \"avg\",\n            \"interval\": 60000,\n            \"metric\": \"@duration\"\n          },\n          \"name\": \"query_errors\",\n          \"group_by\": [\n            {\n              \"facet\": \"status\",\n              \"limit\": 10,\n              \"sort\": {\n                \"aggregation\": \"avg\",\n                \"metric\": \"l\",\n                \"order\": \"desc\"\n              }\n            },\n            {\n              \"facet\": \"status\",\n              \"limit\": 10,\n              \"sort\": {\n                \"aggregation\": \"avg\",\n                \"metric\": \"ut non\",\n                \"order\": \"desc\"\n              }\n            }\n          ],\n          \"indexes\": [\n            \"days-3\",\n            \"days-7\"\n          ],\n          \"search\": {\n            \"query\": \"service:query\"\n          }\n        }\n      ]\n    },\n    \"overall_state\": \"Unknown\",\n    \"priority\": 3,\n    \"restricted_roles\": [\n      \"ipsum laboris laborum incididunt\",\n      \"fugiat non est\"\n    ],\n    \"state\": {\n      \"groups\": {\n        \"Ut7\": {\n          \"last_nodata_ts\": 21127128,\n          \"last_notified_ts\": 19208840,\n          \"last_resolved_ts\": 29022384,\n          \"last_triggered_ts\": -96682791,\n          \"name\": \"ex tempor\",\n          \"status\": \"OK\"\n        }\n      }\n    },\n    \"tags\": [\n      \"dolor nulla dolore elit\",\n      \"consequat sunt in\"\n    ]\n  }\n]"
    },
    {
      "name": "Bad Request",
      "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/monitor?group_states=alert&name=tempor Ut sed velit&tags=host:host0&monitor_tags=service:my-app&with_downtimes=true&id_offset=-62147425&page=0&page_size=20",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "v1",
            "monitor"
          ],
          "query": [
            {
              "key": "group_states",
              "value": "alert",
              "description": "When specified, shows additional information about the group states.\nChoose one or more from `all`, `alert`, `warn`, and `no data`."
            },
            {
              "key": "name",
              "value": "tempor Ut sed velit",
              "description": "A string to filter monitors by name."
            },
            {
              "key": "tags",
              "value": "host:host0",
              "description": "A comma separated list indicating what tags, if any, should be used to filter the list of monitors by scope.\nFor example, `host:host0`."
            },
            {
              "key": "monitor_tags",
              "value": "service:my-app",
              "description": "A comma separated list indicating what service and/or custom tags, if any, should be used to filter the list of monitors.\nTags created in the Datadog UI automatically have the service key prepended. For example, `service:my-app`."
            },
            {
              "key": "with_downtimes",
              "value": "true",
              "description": "If this argument is set to true, then the returned data includes all current active downtimes for each monitor."
            },
            {
              "key": "id_offset",
              "value": "-62147425",
              "description": "Use this parameter for paginating through large sets of monitors. Start with a value of zero, make a request, set the value to the last ID of result set, and then repeat until the response is empty."
            },
            {
              "key": "page",
              "value": "0",
              "description": "The page to start paginating from. If this argument is not specified, the request returns all monitors without pagination."
            },
            {
              "key": "page_size",
              "value": "20",
              "description": "The number of monitors to return per page. If the page argument is not specified, the default behavior returns all monitors without a `page_size` limit. However, if page is specified and `page_size` is not, the argument defaults to 100."
            }
          ]
        }
      },
      "status": "Bad Request",
      "code": 400,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    \"Bad Request\",\n    \"Bad Request\"\n  ]\n}"
    },
    {
      "name": "Forbidden",
      "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/monitor?group_states=alert&name=tempor Ut sed velit&tags=host:host0&monitor_tags=service:my-app&with_downtimes=true&id_offset=-62147425&page=0&page_size=20",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "v1",
            "monitor"
          ],
          "query": [
            {
              "key": "group_states",
              "value": "alert",
              "description": "When specified, shows additional information about the group states.\nChoose one or more from `all`, `alert`, `warn`, and `no data`."
            },
            {
              "key": "name",
              "value": "tempor Ut sed velit",
              "description": "A string to filter monitors by name."
            },
            {
              "key": "tags",
              "value": "host:host0",
              "description": "A comma separated list indicating what tags, if any, should be used to filter the list of monitors by scope.\nFor example, `host:host0`."
            },
            {
              "key": "monitor_tags",
              "value": "service:my-app",
              "description": "A comma separated list indicating what service and/or custom tags, if any, should be used to filter the list of monitors.\nTags created in the Datadog UI automatically have the service key prepended. For example, `service:my-app`."
            },
            {
              "key": "with_downtimes",
              "value": "true",
              "description": "If this argument is set to true, then the returned data includes all current active downtimes for each monitor."
            },
            {
              "key": "id_offset",
              "value": "-62147425",
              "description": "Use this parameter for paginating through large sets of monitors. Start with a value of zero, make a request, set the value to the last ID of result set, and then repeat until the response is empty."
            },
            {
              "key": "page",
              "value": "0",
              "description": "The page to start paginating from. If this argument is not specified, the request returns all monitors without pagination."
            },
            {
              "key": "page_size",
              "value": "20",
              "description": "The number of monitors to return per page. If the page argument is not specified, the default behavior returns all monitors without a `page_size` limit. However, if page is specified and `page_size` is not, the argument defaults to 100."
            }
          ]
        }
      },
      "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": "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/monitor?group_states=alert&name=tempor Ut sed velit&tags=host:host0&monitor_tags=service:my-app&with_downtimes=true&id_offset=-62147425&page=0&page_size=20",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "v1",
            "monitor"
          ],
          "query": [
            {
              "key": "group_states",
              "value": "alert",
              "description": "When specified, shows additional information about the group states.\nChoose one or more from `all`, `alert`, `warn`, and `no data`."
            },
            {
              "key": "name",
              "value": "tempor Ut sed velit",
              "description": "A string to filter monitors by name."
            },
            {
              "key": "tags",
              "value": "host:host0",
              "description": "A comma separated list indicating what tags, if any, should be used to filter the list of monitors by scope.\nFor example, `host:host0`."
            },
            {
              "key": "monitor_tags",
              "value": "service:my-app",
              "description": "A comma separated list indicating what service and/or custom tags, if any, should be used to filter the list of monitors.\nTags created in the Datadog UI automatically have the service key prepended. For example, `service:my-app`."
            },
            {
              "key": "with_downtimes",
              "value": "true",
              "description": "If this argument is set to true, then the returned data includes all current active downtimes for each monitor."
            },
            {
              "key": "id_offset",
              "value": "-62147425",
              "description": "Use this parameter for paginating through large sets of monitors. Start with a value of zero, make a request, set the value to the last ID of result set, and then repeat until the response is empty."
            },
            {
              "key": "page",
              "value": "0",
              "description": "The page to start paginating from. If this argument is not specified, the request returns all monitors without pagination."
            },
            {
              "key": "page_size",
              "value": "20",
              "description": "The number of monitors to return per page. If the page argument is not specified, the default behavior returns all monitors without a `page_size` limit. However, if page is specified and `page_size` is not, the argument defaults to 100."
            }
          ]
        }
      },
      "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}"
    }
  ]
}