Chilkat Online Tools

C++ / Datadog API Collection / Get all monitor details

Back to Collection Items

#include <CkHttp.h>
#include <CkJsonObject.h>
#include <CkHttpResponse.h>
#include <CkStringBuilder.h>
#include <CkJsonArray.h>

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

    CkHttp http;
    bool success;

    CkJsonObject queryParams;
    queryParams.UpdateString("group_states","alert");
    queryParams.UpdateString("name","tempor Ut sed velit");
    queryParams.UpdateString("tags","host:host0");
    queryParams.UpdateString("monitor_tags","service:my-app");
    queryParams.UpdateString("with_downtimes","true");
    queryParams.UpdateInt("id_offset",-62147425);
    queryParams.UpdateInt("page",0);
    queryParams.UpdateInt("page_size",20);

    http.SetRequestHeader("Accept","application/json");

    CkHttpResponse *resp = http.QuickRequestParams("GET","https://api.app.ddog-gov.com/api/v1/monitor",queryParams);
    if (http.get_LastMethodSuccess() == false) {
        std::cout << http.lastErrorText() << "\r\n";
        return;
    }

    CkStringBuilder sbResponseBody;
    resp->GetBodySb(sbResponseBody);

    CkJsonArray jarrResp;
    jarrResp.LoadSb(sbResponseBody);
    jarrResp.put_EmitCompact(false);

    std::cout << "Response Body:" << "\r\n";
    std::cout << jarrResp.emit() << "\r\n";

    int respStatusCode = resp->get_StatusCode();
    std::cout << "Response Status Code = " << respStatusCode << "\r\n";
    if (respStatusCode >= 400) {
        std::cout << "Response Header:" << "\r\n";
        std::cout << resp->header() << "\r\n";
        std::cout << "Failed." << "\r\n";
        delete resp;
        return;
    }

    delete resp;

    // 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

    // Chilkat functions returning "const char *" return a pointer to temporary internal memory owned and managed by Chilkat.

    CkJsonObject *json = 0;
    const char *v_type = 0;
    const char *query = 0;
    const char *created = 0;
    const char *v_Email = 0;
    const char *Handle = 0;
    const char *Name = 0;
    const char *deleted = 0;
    int id;
    const char *message = 0;
    const char *modified = 0;
    bool multi;
    const char *name = 0;
    const char *Group_by = 0;
    const char *Metric = 0;
    const char *v_Type = 0;
    bool Enable_logs_sample;
    bool Enable_samples;
    const char *Escalation_message = 0;
    int Evaluation_delay;
    const char *Group_retention_duration = 0;
    bool Groupby_simple_monitor;
    bool Include_tags;
    bool Locked;
    int Min_failure_duration;
    int Min_location_failed;
    int New_group_delay;
    int New_host_delay;
    int No_data_timeframe;
    const char *Notification_preset_name = 0;
    bool Notify_audit;
    bool Notify_no_data;
    const char *On_missing_data = 0;
    const char *Renotify_interval = 0;
    int Renotify_occurrences;
    bool Require_full_window;
    const char *Day_starts = 0;
    int Hour_starts;
    int Month_starts;
    int Ut_d_e;
    const char *Synthetics_check_id = 0;
    const char *Recovery_window = 0;
    const char *Trigger_window = 0;
    const char *Critical = 0;
    const char *Critical_recovery = 0;
    const char *Ok = 0;
    const char *Unknown = 0;
    const char *Warning = 0;
    const char *Warning_recovery = 0;
    const char *Timeout_h = 0;
    const char *overall_state = 0;
    int priority;
    int Last_nodata_ts;
    int Last_notified_ts;
    int Last_resolved_ts;
    int Last_triggered_ts;
    const char *Ullamco2Name = 0;
    const char *Status = 0;
    int Voluptate_0cLast_nodata_ts;
    int Voluptate_0cLast_notified_ts;
    int Voluptate_0cLast_resolved_ts;
    int Voluptate_0cLast_triggered_ts;
    const char *Voluptate_0cName = 0;
    const char *Voluptate_0cStatus = 0;
    int Ut_8;
    int Ut7Last_nodata_ts;
    int Ut7Last_notified_ts;
    int Ut7Last_resolved_ts;
    int Ut7Last_triggered_ts;
    const char *Ut7Name = 0;
    const char *Ut7Status = 0;
    int j;
    int count_j;
    int v_end;
    int start;
    int k;
    int count_k;
    const char *strVal = 0;
    const char *data_source = 0;
    const char *Aggregation = 0;
    int Interval;
    const char *computeMetric = 0;
    const char *Query = 0;
    const char *facet = 0;
    int limit;
    const char *sortAggregation = 0;
    const char *sortMetric = 0;
    const char *Order = 0;

    int i = 0;
    int count_i = jarrResp.get_Size();
    while (i < count_i) {
        json = jarrResp.ObjectAt(i);
        v_type = json->stringOf("type");
        query = json->stringOf("query");
        created = json->stringOf("created");
        v_Email = json->stringOf("creator.email");
        Handle = json->stringOf("creator.handle");
        Name = json->stringOf("creator.name");
        deleted = json->stringOf("deleted");
        id = json->IntOf("id");
        message = json->stringOf("message");
        modified = json->stringOf("modified");
        multi = json->BoolOf("multi");
        name = json->stringOf("name");
        Group_by = json->stringOf("options.aggregation.group_by");
        Metric = json->stringOf("options.aggregation.metric");
        v_Type = json->stringOf("options.aggregation.type");
        Enable_logs_sample = json->BoolOf("options.enable_logs_sample");
        Enable_samples = json->BoolOf("options.enable_samples");
        Escalation_message = json->stringOf("options.escalation_message");
        Evaluation_delay = json->IntOf("options.evaluation_delay");
        Group_retention_duration = json->stringOf("options.group_retention_duration");
        Groupby_simple_monitor = json->BoolOf("options.groupby_simple_monitor");
        Include_tags = json->BoolOf("options.include_tags");
        Locked = json->BoolOf("options.locked");
        Min_failure_duration = json->IntOf("options.min_failure_duration");
        Min_location_failed = json->IntOf("options.min_location_failed");
        New_group_delay = json->IntOf("options.new_group_delay");
        New_host_delay = json->IntOf("options.new_host_delay");
        No_data_timeframe = json->IntOf("options.no_data_timeframe");
        Notification_preset_name = json->stringOf("options.notification_preset_name");
        Notify_audit = json->BoolOf("options.notify_audit");
        Notify_no_data = json->BoolOf("options.notify_no_data");
        On_missing_data = json->stringOf("options.on_missing_data");
        Renotify_interval = json->stringOf("options.renotify_interval");
        Renotify_occurrences = json->IntOf("options.renotify_occurrences");
        Require_full_window = json->BoolOf("options.require_full_window");
        Day_starts = json->stringOf("options.scheduling_options.evaluation_window.day_starts");
        Hour_starts = json->IntOf("options.scheduling_options.evaluation_window.hour_starts");
        Month_starts = json->IntOf("options.scheduling_options.evaluation_window.month_starts");
        Ut_d_e = json->IntOf("options.silenced.Ut_d_e");
        Synthetics_check_id = json->stringOf("options.synthetics_check_id");
        Recovery_window = json->stringOf("options.threshold_windows.recovery_window");
        Trigger_window = json->stringOf("options.threshold_windows.trigger_window");
        Critical = json->stringOf("options.thresholds.critical");
        Critical_recovery = json->stringOf("options.thresholds.critical_recovery");
        Ok = json->stringOf("options.thresholds.ok");
        Unknown = json->stringOf("options.thresholds.unknown");
        Warning = json->stringOf("options.thresholds.warning");
        Warning_recovery = json->stringOf("options.thresholds.warning_recovery");
        Timeout_h = json->stringOf("options.timeout_h");
        overall_state = json->stringOf("overall_state");
        priority = json->IntOf("priority");
        Last_nodata_ts = json->IntOf("state.groups.ullamco2.last_nodata_ts");
        Last_notified_ts = json->IntOf("state.groups.ullamco2.last_notified_ts");
        Last_resolved_ts = json->IntOf("state.groups.ullamco2.last_resolved_ts");
        Last_triggered_ts = json->IntOf("state.groups.ullamco2.last_triggered_ts");
        Ullamco2Name = json->stringOf("state.groups.ullamco2.name");
        Status = json->stringOf("state.groups.ullamco2.status");
        Voluptate_0cLast_nodata_ts = json->IntOf("state.groups.voluptate_0c.last_nodata_ts");
        Voluptate_0cLast_notified_ts = json->IntOf("state.groups.voluptate_0c.last_notified_ts");
        Voluptate_0cLast_resolved_ts = json->IntOf("state.groups.voluptate_0c.last_resolved_ts");
        Voluptate_0cLast_triggered_ts = json->IntOf("state.groups.voluptate_0c.last_triggered_ts");
        Voluptate_0cName = json->stringOf("state.groups.voluptate_0c.name");
        Voluptate_0cStatus = json->stringOf("state.groups.voluptate_0c.status");
        Ut_8 = json->IntOf("options.silenced.ut_8");
        Ut7Last_nodata_ts = json->IntOf("state.groups.Ut7.last_nodata_ts");
        Ut7Last_notified_ts = json->IntOf("state.groups.Ut7.last_notified_ts");
        Ut7Last_resolved_ts = json->IntOf("state.groups.Ut7.last_resolved_ts");
        Ut7Last_triggered_ts = json->IntOf("state.groups.Ut7.last_triggered_ts");
        Ut7Name = json->stringOf("state.groups.Ut7.name");
        Ut7Status = json->stringOf("state.groups.Ut7.status");
        j = 0;
        count_j = json->SizeOfArray("matching_downtimes");
        while (j < count_j) {
            json->put_J(j);
            id = json->IntOf("matching_downtimes[j].id");
            v_end = json->IntOf("matching_downtimes[j].end");
            start = json->IntOf("matching_downtimes[j].start");
            k = 0;
            count_k = json->SizeOfArray("matching_downtimes[j].scope");
            while (k < count_k) {
                json->put_K(k);
                strVal = json->stringOf("matching_downtimes[j].scope[k]");
                k = k + 1;
            }

            j = j + 1;
        }

        j = 0;
        count_j = json->SizeOfArray("options.device_ids");
        while (j < count_j) {
            json->put_J(j);
            strVal = json->stringOf("options.device_ids[j]");
            j = j + 1;
        }

        j = 0;
        count_j = json->SizeOfArray("options.notify_by");
        while (j < count_j) {
            json->put_J(j);
            strVal = json->stringOf("options.notify_by[j]");
            j = j + 1;
        }

        j = 0;
        count_j = json->SizeOfArray("options.renotify_statuses");
        while (j < count_j) {
            json->put_J(j);
            strVal = json->stringOf("options.renotify_statuses[j]");
            j = j + 1;
        }

        j = 0;
        count_j = json->SizeOfArray("options.variables");
        while (j < count_j) {
            json->put_J(j);
            data_source = json->stringOf("options.variables[j].data_source");
            Aggregation = json->stringOf("options.variables[j].compute.aggregation");
            Interval = json->IntOf("options.variables[j].compute.interval");
            computeMetric = json->stringOf("options.variables[j].compute.metric");
            name = json->stringOf("options.variables[j].name");
            Query = json->stringOf("options.variables[j].search.query");
            k = 0;
            count_k = json->SizeOfArray("options.variables[j].group_by");
            while (k < count_k) {
                json->put_K(k);
                facet = json->stringOf("options.variables[j].group_by[k].facet");
                limit = json->IntOf("options.variables[j].group_by[k].limit");
                sortAggregation = json->stringOf("options.variables[j].group_by[k].sort.aggregation");
                sortMetric = json->stringOf("options.variables[j].group_by[k].sort.metric");
                Order = json->stringOf("options.variables[j].group_by[k].sort.order");
                k = k + 1;
            }

            k = 0;
            count_k = json->SizeOfArray("options.variables[j].indexes");
            while (k < count_k) {
                json->put_K(k);
                strVal = json->stringOf("options.variables[j].indexes[k]");
                k = k + 1;
            }

            j = j + 1;
        }

        j = 0;
        count_j = json->SizeOfArray("restricted_roles");
        while (j < count_j) {
            json->put_J(j);
            strVal = json->stringOf("restricted_roles[j]");
            j = j + 1;
        }

        j = 0;
        count_j = json->SizeOfArray("tags");
        while (j < count_j) {
            json->put_J(j);
            strVal = json->stringOf("tags[j]");
            j = j + 1;
        }

        delete json;
        i = i + 1;
    }
    }

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