Back to Collection Items
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoHttp
Boolean iSuccess
Variant vQueryParams
Handle hoQueryParams
Variant vResp
Handle hoResp
Variant vSbResponseBody
Handle hoSbResponseBody
Handle hoJarrResp
Integer iRespStatusCode
Variant vJson
Handle hoJson
String sV_type
String sQuery
String sCreated
String sV_Email
String sHandle
String sName
String sDeleted
Integer iId
String sMessage
String sModified
Boolean iMulti
String sName
String sGroup_by
String sMetric
String sV_Type
Boolean iEnable_logs_sample
Boolean iEnable_samples
String sEscalation_message
Integer iEvaluation_delay
String sGroup_retention_duration
Boolean iGroupby_simple_monitor
Boolean iInclude_tags
Boolean iLocked
Integer iMin_failure_duration
Integer iMin_location_failed
Integer iNew_group_delay
Integer iNew_host_delay
Integer iNo_data_timeframe
String sNotification_preset_name
Boolean iNotify_audit
Boolean iNotify_no_data
String sOn_missing_data
String sRenotify_interval
Integer iRenotify_occurrences
Boolean iRequire_full_window
String sDay_starts
Integer iHour_starts
Integer iMonth_starts
Integer iUt_d_e
String sSynthetics_check_id
String sRecovery_window
String sTrigger_window
String sCritical
String sCritical_recovery
String sOk
String sUnknown
String sWarning
String sWarning_recovery
String sTimeout_h
String sOverall_state
Integer iPriority
Integer iLast_nodata_ts
Integer iLast_notified_ts
Integer iLast_resolved_ts
Integer iLast_triggered_ts
String sUllamco2Name
String sStatus
Integer iVoluptate_0cLast_nodata_ts
Integer iVoluptate_0cLast_notified_ts
Integer iVoluptate_0cLast_resolved_ts
Integer iVoluptate_0cLast_triggered_ts
String sVoluptate_0cName
String sVoluptate_0cStatus
Integer iUt_8
Integer iUt7Last_nodata_ts
Integer iUt7Last_notified_ts
Integer iUt7Last_resolved_ts
Integer iUt7Last_triggered_ts
String sUt7Name
String sUt7Status
Integer j
Integer iCount_j
Integer iV_end
Integer iStart
Integer k
Integer iCount_k
String sStrVal
String sData_source
String sAggregation
Integer iInterval
String sComputeMetric
String sQuery
String sFacet
Integer iLimit
String sSortAggregation
String sSortMetric
String sOrder
Integer i
Integer iCount_i
String sTemp1
Boolean bTemp1
// 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
Get Create (RefClass(cComChilkatJsonObject)) To hoQueryParams
If (Not(IsComObjectCreated(hoQueryParams))) Begin
Send CreateComObject of hoQueryParams
End
Get ComUpdateString Of hoQueryParams "group_states" "alert" To iSuccess
Get ComUpdateString Of hoQueryParams "name" "tempor Ut sed velit" To iSuccess
Get ComUpdateString Of hoQueryParams "tags" "host:host0" To iSuccess
Get ComUpdateString Of hoQueryParams "monitor_tags" "service:my-app" To iSuccess
Get ComUpdateString Of hoQueryParams "with_downtimes" "true" To iSuccess
Get ComUpdateInt Of hoQueryParams "id_offset" -62147425 To iSuccess
Get ComUpdateInt Of hoQueryParams "page" 0 To iSuccess
Get ComUpdateInt Of hoQueryParams "page_size" 20 To iSuccess
Send ComSetRequestHeader To hoHttp "Accept" "application/json"
Get pvComObject of hoQueryParams to vQueryParams
Get ComQuickRequestParams Of hoHttp "GET" "https://api.app.ddog-gov.com/api/v1/monitor" vQueryParams To vResp
If (IsComObject(vResp)) Begin
Get Create (RefClass(cComChilkatHttpResponse)) To hoResp
Set pvComObject Of hoResp To vResp
End
Get ComLastMethodSuccess Of hoHttp To bTemp1
If (bTemp1 = False) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody
If (Not(IsComObjectCreated(hoSbResponseBody))) Begin
Send CreateComObject of hoSbResponseBody
End
Get pvComObject of hoSbResponseBody to vSbResponseBody
Get ComGetBodySb Of hoResp vSbResponseBody To iSuccess
Get Create (RefClass(cComChilkatJsonArray)) To hoJarrResp
If (Not(IsComObjectCreated(hoJarrResp))) Begin
Send CreateComObject of hoJarrResp
End
Get pvComObject of hoSbResponseBody to vSbResponseBody
Get ComLoadSb Of hoJarrResp vSbResponseBody To iSuccess
Set ComEmitCompact Of hoJarrResp To False
Showln "Response Body:"
Get ComEmit Of hoJarrResp To sTemp1
Showln sTemp1
Get ComStatusCode Of hoResp To iRespStatusCode
Showln "Response Status Code = " iRespStatusCode
If (iRespStatusCode >= 400) Begin
Showln "Response Header:"
Get ComHeader Of hoResp To sTemp1
Showln sTemp1
Showln "Failed."
Send Destroy of hoResp
Procedure_Return
End
Send Destroy of hoResp
// 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
Move 0 To i
Get ComSize Of hoJarrResp To iCount_i
While (i < iCount_i)
Get ComObjectAt Of hoJarrResp i To vJson
If (IsComObject(vJson)) Begin
Get Create (RefClass(cComChilkatJsonObject)) To hoJson
Set pvComObject Of hoJson To vJson
End
Get ComStringOf Of hoJson "type" To sV_type
Get ComStringOf Of hoJson "query" To sQuery
Get ComStringOf Of hoJson "created" To sCreated
Get ComStringOf Of hoJson "creator.email" To sV_Email
Get ComStringOf Of hoJson "creator.handle" To sHandle
Get ComStringOf Of hoJson "creator.name" To sName
Get ComStringOf Of hoJson "deleted" To sDeleted
Get ComIntOf Of hoJson "id" To iId
Get ComStringOf Of hoJson "message" To sMessage
Get ComStringOf Of hoJson "modified" To sModified
Get ComBoolOf Of hoJson "multi" To iMulti
Get ComStringOf Of hoJson "name" To sName
Get ComStringOf Of hoJson "options.aggregation.group_by" To sGroup_by
Get ComStringOf Of hoJson "options.aggregation.metric" To sMetric
Get ComStringOf Of hoJson "options.aggregation.type" To sV_Type
Get ComBoolOf Of hoJson "options.enable_logs_sample" To iEnable_logs_sample
Get ComBoolOf Of hoJson "options.enable_samples" To iEnable_samples
Get ComStringOf Of hoJson "options.escalation_message" To sEscalation_message
Get ComIntOf Of hoJson "options.evaluation_delay" To iEvaluation_delay
Get ComStringOf Of hoJson "options.group_retention_duration" To sGroup_retention_duration
Get ComBoolOf Of hoJson "options.groupby_simple_monitor" To iGroupby_simple_monitor
Get ComBoolOf Of hoJson "options.include_tags" To iInclude_tags
Get ComBoolOf Of hoJson "options.locked" To iLocked
Get ComIntOf Of hoJson "options.min_failure_duration" To iMin_failure_duration
Get ComIntOf Of hoJson "options.min_location_failed" To iMin_location_failed
Get ComIntOf Of hoJson "options.new_group_delay" To iNew_group_delay
Get ComIntOf Of hoJson "options.new_host_delay" To iNew_host_delay
Get ComIntOf Of hoJson "options.no_data_timeframe" To iNo_data_timeframe
Get ComStringOf Of hoJson "options.notification_preset_name" To sNotification_preset_name
Get ComBoolOf Of hoJson "options.notify_audit" To iNotify_audit
Get ComBoolOf Of hoJson "options.notify_no_data" To iNotify_no_data
Get ComStringOf Of hoJson "options.on_missing_data" To sOn_missing_data
Get ComStringOf Of hoJson "options.renotify_interval" To sRenotify_interval
Get ComIntOf Of hoJson "options.renotify_occurrences" To iRenotify_occurrences
Get ComBoolOf Of hoJson "options.require_full_window" To iRequire_full_window
Get ComStringOf Of hoJson "options.scheduling_options.evaluation_window.day_starts" To sDay_starts
Get ComIntOf Of hoJson "options.scheduling_options.evaluation_window.hour_starts" To iHour_starts
Get ComIntOf Of hoJson "options.scheduling_options.evaluation_window.month_starts" To iMonth_starts
Get ComIntOf Of hoJson "options.silenced.Ut_d_e" To iUt_d_e
Get ComStringOf Of hoJson "options.synthetics_check_id" To sSynthetics_check_id
Get ComStringOf Of hoJson "options.threshold_windows.recovery_window" To sRecovery_window
Get ComStringOf Of hoJson "options.threshold_windows.trigger_window" To sTrigger_window
Get ComStringOf Of hoJson "options.thresholds.critical" To sCritical
Get ComStringOf Of hoJson "options.thresholds.critical_recovery" To sCritical_recovery
Get ComStringOf Of hoJson "options.thresholds.ok" To sOk
Get ComStringOf Of hoJson "options.thresholds.unknown" To sUnknown
Get ComStringOf Of hoJson "options.thresholds.warning" To sWarning
Get ComStringOf Of hoJson "options.thresholds.warning_recovery" To sWarning_recovery
Get ComStringOf Of hoJson "options.timeout_h" To sTimeout_h
Get ComStringOf Of hoJson "overall_state" To sOverall_state
Get ComIntOf Of hoJson "priority" To iPriority
Get ComIntOf Of hoJson "state.groups.ullamco2.last_nodata_ts" To iLast_nodata_ts
Get ComIntOf Of hoJson "state.groups.ullamco2.last_notified_ts" To iLast_notified_ts
Get ComIntOf Of hoJson "state.groups.ullamco2.last_resolved_ts" To iLast_resolved_ts
Get ComIntOf Of hoJson "state.groups.ullamco2.last_triggered_ts" To iLast_triggered_ts
Get ComStringOf Of hoJson "state.groups.ullamco2.name" To sUllamco2Name
Get ComStringOf Of hoJson "state.groups.ullamco2.status" To sStatus
Get ComIntOf Of hoJson "state.groups.voluptate_0c.last_nodata_ts" To iVoluptate_0cLast_nodata_ts
Get ComIntOf Of hoJson "state.groups.voluptate_0c.last_notified_ts" To iVoluptate_0cLast_notified_ts
Get ComIntOf Of hoJson "state.groups.voluptate_0c.last_resolved_ts" To iVoluptate_0cLast_resolved_ts
Get ComIntOf Of hoJson "state.groups.voluptate_0c.last_triggered_ts" To iVoluptate_0cLast_triggered_ts
Get ComStringOf Of hoJson "state.groups.voluptate_0c.name" To sVoluptate_0cName
Get ComStringOf Of hoJson "state.groups.voluptate_0c.status" To sVoluptate_0cStatus
Get ComIntOf Of hoJson "options.silenced.ut_8" To iUt_8
Get ComIntOf Of hoJson "state.groups.Ut7.last_nodata_ts" To iUt7Last_nodata_ts
Get ComIntOf Of hoJson "state.groups.Ut7.last_notified_ts" To iUt7Last_notified_ts
Get ComIntOf Of hoJson "state.groups.Ut7.last_resolved_ts" To iUt7Last_resolved_ts
Get ComIntOf Of hoJson "state.groups.Ut7.last_triggered_ts" To iUt7Last_triggered_ts
Get ComStringOf Of hoJson "state.groups.Ut7.name" To sUt7Name
Get ComStringOf Of hoJson "state.groups.Ut7.status" To sUt7Status
Move 0 To j
Get ComSizeOfArray Of hoJson "matching_downtimes" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJson To j
Get ComIntOf Of hoJson "matching_downtimes[j].id" To iId
Get ComIntOf Of hoJson "matching_downtimes[j].end" To iV_end
Get ComIntOf Of hoJson "matching_downtimes[j].start" To iStart
Move 0 To k
Get ComSizeOfArray Of hoJson "matching_downtimes[j].scope" To iCount_k
While (k < iCount_k)
Set ComK Of hoJson To k
Get ComStringOf Of hoJson "matching_downtimes[j].scope[k]" To sStrVal
Move (k + 1) To k
Loop
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJson "options.device_ids" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJson To j
Get ComStringOf Of hoJson "options.device_ids[j]" To sStrVal
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJson "options.notify_by" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJson To j
Get ComStringOf Of hoJson "options.notify_by[j]" To sStrVal
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJson "options.renotify_statuses" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJson To j
Get ComStringOf Of hoJson "options.renotify_statuses[j]" To sStrVal
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJson "options.variables" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJson To j
Get ComStringOf Of hoJson "options.variables[j].data_source" To sData_source
Get ComStringOf Of hoJson "options.variables[j].compute.aggregation" To sAggregation
Get ComIntOf Of hoJson "options.variables[j].compute.interval" To iInterval
Get ComStringOf Of hoJson "options.variables[j].compute.metric" To sComputeMetric
Get ComStringOf Of hoJson "options.variables[j].name" To sName
Get ComStringOf Of hoJson "options.variables[j].search.query" To sQuery
Move 0 To k
Get ComSizeOfArray Of hoJson "options.variables[j].group_by" To iCount_k
While (k < iCount_k)
Set ComK Of hoJson To k
Get ComStringOf Of hoJson "options.variables[j].group_by[k].facet" To sFacet
Get ComIntOf Of hoJson "options.variables[j].group_by[k].limit" To iLimit
Get ComStringOf Of hoJson "options.variables[j].group_by[k].sort.aggregation" To sSortAggregation
Get ComStringOf Of hoJson "options.variables[j].group_by[k].sort.metric" To sSortMetric
Get ComStringOf Of hoJson "options.variables[j].group_by[k].sort.order" To sOrder
Move (k + 1) To k
Loop
Move 0 To k
Get ComSizeOfArray Of hoJson "options.variables[j].indexes" To iCount_k
While (k < iCount_k)
Set ComK Of hoJson To k
Get ComStringOf Of hoJson "options.variables[j].indexes[k]" To sStrVal
Move (k + 1) To k
Loop
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJson "restricted_roles" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJson To j
Get ComStringOf Of hoJson "restricted_roles[j]" To sStrVal
Move (j + 1) To j
Loop
Move 0 To j
Get ComSizeOfArray Of hoJson "tags" To iCount_j
While (j < iCount_j)
Set ComJ Of hoJson To j
Get ComStringOf Of hoJson "tags[j]" To sStrVal
Move (j + 1) To j
Loop
Send Destroy of hoJson
Move (i + 1) To i
Loop
End_Procedure
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}"
}
]
}