Chilkat Online Tools

Unicode C++ / Datadog API Collection / List rules

Back to Collection Items

void ChilkatSample(void)
    {
    queryParams.UpdateInt(L"page[size]",10);    queryParams.UpdateInt(L"page[number]",0);    success = http.HttpParams(L"GET",L"https://api.app.ddog-gov.com/api/v2/security_monitoring/rules",queryParams,resp);    resp.GetBodySb(sbResponseBody);    jResp.LoadSb(sbResponseBody);    jResp.put_EmitCompact(false);    jResp.put_I(i);    DefaultActivationStatus = jResp.stringOf(L"data[i].complianceSignalOptions.defaultActivationStatus");    UserActivationStatus = jResp.stringOf(L"data[i].complianceSignalOptions.userActivationStatus");    createdAt = jResp.stringOf(L"data[i].createdAt");    creationAuthorId = jResp.stringOf(L"data[i].creationAuthorId");    deprecationDate = jResp.stringOf(L"data[i].deprecationDate");    hasExtendedTitle = jResp.stringOf(L"data[i].hasExtendedTitle");    id = jResp.stringOf(L"data[i].id");    isDefault = jResp.stringOf(L"data[i].isDefault");    isDeleted = jResp.stringOf(L"data[i].isDeleted");    isEnabled = jResp.stringOf(L"data[i].isEnabled");    message = jResp.stringOf(L"data[i].message");    name = jResp.stringOf(L"data[i].name");    ComplexRule = jResp.stringOf(L"data[i].options.complianceRuleOptions.complexRule");    Policy = jResp.stringOf(L"data[i].options.complianceRuleOptions.regoRule.policy");    ResourceType = jResp.stringOf(L"data[i].options.complianceRuleOptions.resourceType");    DecreaseCriticalityBasedOnEnv = jResp.stringOf(L"data[i].options.decreaseCriticalityBasedOnEnv");    DetectionMethod = jResp.stringOf(L"data[i].options.detectionMethod");    EvaluationWindow = jResp.IntOf(L"data[i].options.evaluationWindow");    HardcodedEvaluatorType = jResp.stringOf(L"data[i].options.hardcodedEvaluatorType");    BaselineUserLocations = jResp.stringOf(L"data[i].options.impossibleTravelOptions.baselineUserLocations");    KeepAlive = jResp.IntOf(L"data[i].options.keepAlive");    MaxSignalDuration = jResp.IntOf(L"data[i].options.maxSignalDuration");    ForgetAfter = jResp.IntOf(L"data[i].options.newValueOptions.forgetAfter");    LearningDuration = jResp.IntOf(L"data[i].options.newValueOptions.learningDuration");    LearningMethod = jResp.stringOf(L"data[i].options.newValueOptions.learningMethod");    LearningThreshold = jResp.IntOf(L"data[i].options.newValueOptions.learningThreshold");    v_type = jResp.stringOf(L"data[i].type");    updateAuthorId = jResp.stringOf(L"data[i].updateAuthorId");    version = jResp.stringOf(L"data[i].version");    j = 0;    count_j = jResp.SizeOfArray(L"data[i].cases");    jResp.put_J(j);    condition = jResp.stringOf(L"data[i].cases[j].condition");    name = jResp.stringOf(L"data[i].cases[j].name");    status = jResp.stringOf(L"data[i].cases[j].status");    k = 0;    count_k = jResp.SizeOfArray(L"data[i].cases[j].notifications");    jResp.put_K(k);    strVal = jResp.stringOf(L"data[i].cases[j].notifications[k]");    k = k + 1;    j = j + 1;    j = 0;    count_j = jResp.SizeOfArray(L"data[i].complianceSignalOptions.defaultGroupByFields");    jResp.put_J(j);    strVal = jResp.stringOf(L"data[i].complianceSignalOptions.defaultGroupByFields[j]");    j = j + 1;    j = 0;    count_j = jResp.SizeOfArray(L"data[i].complianceSignalOptions.userGroupByFields");    jResp.put_J(j);    strVal = jResp.stringOf(L"data[i].complianceSignalOptions.userGroupByFields[j]");    j = j + 1;    j = 0;    count_j = jResp.SizeOfArray(L"data[i].filters");    jResp.put_J(j);    action = jResp.stringOf(L"data[i].filters[j].action");    query = jResp.stringOf(L"data[i].filters[j].query");    j = j + 1;    j = 0;    count_j = jResp.SizeOfArray(L"data[i].options.complianceRuleOptions.regoRule.resourceTypes");    jResp.put_J(j);    strVal = jResp.stringOf(L"data[i].options.complianceRuleOptions.regoRule.resourceTypes[j]");    j = j + 1;    j = 0;    count_j = jResp.SizeOfArray(L"data[i].queries");    jResp.put_J(j);    aggregation = jResp.stringOf(L"data[i].queries[j].aggregation");    metric = jResp.stringOf(L"data[i].queries[j].metric");    name = jResp.stringOf(L"data[i].queries[j].name");    query = jResp.stringOf(L"data[i].queries[j].query");    k = 0;    count_k = jResp.SizeOfArray(L"data[i].queries[j].distinctFields");    jResp.put_K(k);    strVal = jResp.stringOf(L"data[i].queries[j].distinctFields[k]");    k = k + 1;    k = 0;    count_k = jResp.SizeOfArray(L"data[i].queries[j].groupByFields");    jResp.put_K(k);    strVal = jResp.stringOf(L"data[i].queries[j].groupByFields[k]");    k = k + 1;    k = 0;    count_k = jResp.SizeOfArray(L"data[i].queries[j].metrics");    jResp.put_K(k);    strVal = jResp.stringOf(L"data[i].queries[j].metrics[k]");    k = k + 1;    j = j + 1;    j = 0;    count_j = jResp.SizeOfArray(L"data[i].tags");    jResp.put_J(j);    strVal = jResp.stringOf(L"data[i].tags[j]");    j = j + 1;    i = i + 1;
    }

Curl Command

curl -G -d "page[size]=10"
	-d "page[number]=0"
	-H "Accept: application/json"
https://api.app.ddog-gov.com/api/v2/security_monitoring/rules

Postman Collection Item JSON

{
  "name": "List rules",
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      }
    ],
    "url": {
      "raw": "{{baseUrl}}/api/v2/security_monitoring/rules?page[size]=10&page[number]=0",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "api",
        "v2",
        "security_monitoring",
        "rules"
      ],
      "query": [
        {
          "key": "page[size]",
          "value": "10",
          "description": "Size for a given page. The maximum allowed value is 100."
        },
        {
          "key": "page[number]",
          "value": "0",
          "description": "Specific page number to return."
        }
      ]
    },
    "description": "List rules."
  },
  "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/v2/security_monitoring/rules?page[size]=10&page[number]=0",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "v2",
            "security_monitoring",
            "rules"
          ],
          "query": [
            {
              "key": "page[size]",
              "value": "10",
              "description": "Size for a given page. The maximum allowed value is 100."
            },
            {
              "key": "page[number]",
              "value": "0",
              "description": "Specific page number to return."
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"data\": [\n    {\n      \"cases\": [\n        {\n          \"condition\": \"<string>\",\n          \"name\": \"<string>\",\n          \"notifications\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"status\": \"medium\"\n        },\n        {\n          \"condition\": \"<string>\",\n          \"name\": \"<string>\",\n          \"notifications\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"status\": \"info\"\n        }\n      ],\n      \"complianceSignalOptions\": {\n        \"defaultActivationStatus\": \"<boolean>\",\n        \"defaultGroupByFields\": [\n          \"<string>\",\n          \"<string>\"\n        ],\n        \"userActivationStatus\": \"<boolean>\",\n        \"userGroupByFields\": [\n          \"<string>\",\n          \"<string>\"\n        ]\n      },\n      \"createdAt\": \"<long>\",\n      \"creationAuthorId\": \"<long>\",\n      \"deprecationDate\": \"<long>\",\n      \"filters\": [\n        {\n          \"action\": \"suppress\",\n          \"query\": \"<string>\"\n        },\n        {\n          \"action\": \"require\",\n          \"query\": \"<string>\"\n        }\n      ],\n      \"hasExtendedTitle\": \"<boolean>\",\n      \"id\": \"<string>\",\n      \"isDefault\": \"<boolean>\",\n      \"isDeleted\": \"<boolean>\",\n      \"isEnabled\": \"<boolean>\",\n      \"message\": \"<string>\",\n      \"name\": \"<string>\",\n      \"options\": {\n        \"complianceRuleOptions\": {\n          \"complexRule\": \"<boolean>\",\n          \"regoRule\": {\n            \"policy\": \"<string>\",\n            \"resourceTypes\": [\n              \"<string>\",\n              \"<string>\"\n            ]\n          },\n          \"resourceType\": \"<string>\",\n          \"sunt__\": {}\n        },\n        \"decreaseCriticalityBasedOnEnv\": \"<boolean>\",\n        \"detectionMethod\": \"threshold\",\n        \"evaluationWindow\": 7200,\n        \"hardcodedEvaluatorType\": \"log4shell\",\n        \"impossibleTravelOptions\": {\n          \"baselineUserLocations\": \"<boolean>\"\n        },\n        \"keepAlive\": 60,\n        \"maxSignalDuration\": 60,\n        \"newValueOptions\": {\n          \"forgetAfter\": 14,\n          \"learningDuration\": 0,\n          \"learningMethod\": \"duration\",\n          \"learningThreshold\": 0\n        }\n      },\n      \"queries\": [\n        {\n          \"aggregation\": \"geo_data\",\n          \"distinctFields\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"groupByFields\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"metric\": \"<string>\",\n          \"metrics\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"name\": \"<string>\",\n          \"query\": \"<string>\"\n        },\n        {\n          \"aggregation\": \"new_value\",\n          \"distinctFields\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"groupByFields\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"metric\": \"<string>\",\n          \"metrics\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"name\": \"<string>\",\n          \"query\": \"<string>\"\n        }\n      ],\n      \"tags\": [\n        \"<string>\",\n        \"<string>\"\n      ],\n      \"type\": \"log_detection\",\n      \"updateAuthorId\": \"<long>\",\n      \"version\": \"<long>\"\n    },\n    {\n      \"cases\": [\n        {\n          \"condition\": \"<string>\",\n          \"name\": \"<string>\",\n          \"notifications\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"status\": \"medium\"\n        },\n        {\n          \"condition\": \"<string>\",\n          \"name\": \"<string>\",\n          \"notifications\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"status\": \"critical\"\n        }\n      ],\n      \"complianceSignalOptions\": {\n        \"defaultActivationStatus\": \"<boolean>\",\n        \"defaultGroupByFields\": [\n          \"<string>\",\n          \"<string>\"\n        ],\n        \"userActivationStatus\": \"<boolean>\",\n        \"userGroupByFields\": [\n          \"<string>\",\n          \"<string>\"\n        ]\n      },\n      \"createdAt\": \"<long>\",\n      \"creationAuthorId\": \"<long>\",\n      \"deprecationDate\": \"<long>\",\n      \"filters\": [\n        {\n          \"action\": \"suppress\",\n          \"query\": \"<string>\"\n        },\n        {\n          \"action\": \"suppress\",\n          \"query\": \"<string>\"\n        }\n      ],\n      \"hasExtendedTitle\": \"<boolean>\",\n      \"id\": \"<string>\",\n      \"isDefault\": \"<boolean>\",\n      \"isDeleted\": \"<boolean>\",\n      \"isEnabled\": \"<boolean>\",\n      \"message\": \"<string>\",\n      \"name\": \"<string>\",\n      \"options\": {\n        \"complianceRuleOptions\": {\n          \"complexRule\": \"<boolean>\",\n          \"regoRule\": {\n            \"policy\": \"<string>\",\n            \"resourceTypes\": [\n              \"<string>\",\n              \"<string>\"\n            ]\n          },\n          \"resourceType\": \"<string>\",\n          \"mollit_4\": {},\n          \"culpa_2\": {}\n        },\n        \"decreaseCriticalityBasedOnEnv\": \"<boolean>\",\n        \"detectionMethod\": \"hardcoded\",\n        \"evaluationWindow\": 300,\n        \"hardcodedEvaluatorType\": \"log4shell\",\n        \"impossibleTravelOptions\": {\n          \"baselineUserLocations\": \"<boolean>\"\n        },\n        \"keepAlive\": 21600,\n        \"maxSignalDuration\": 10800,\n        \"newValueOptions\": {\n          \"forgetAfter\": 2,\n          \"learningDuration\": 0,\n          \"learningMethod\": \"duration\",\n          \"learningThreshold\": 0\n        }\n      },\n      \"queries\": [\n        {\n          \"aggregation\": \"new_value\",\n          \"distinctFields\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"groupByFields\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"metric\": \"<string>\",\n          \"metrics\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"name\": \"<string>\",\n          \"query\": \"<string>\"\n        },\n        {\n          \"aggregation\": \"geo_data\",\n          \"distinctFields\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"groupByFields\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"metric\": \"<string>\",\n          \"metrics\": [\n            \"<string>\",\n            \"<string>\"\n          ],\n          \"name\": \"<string>\",\n          \"query\": \"<string>\"\n        }\n      ],\n      \"tags\": [\n        \"<string>\",\n        \"<string>\"\n      ],\n      \"type\": \"infrastructure_configuration\",\n      \"updateAuthorId\": \"<long>\",\n      \"version\": \"<long>\"\n    }\n  ],\n  \"meta\": {\n    \"page\": {\n      \"total_count\": \"<long>\",\n      \"total_filtered_count\": \"<long>\"\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/v2/security_monitoring/rules?page[size]=10&page[number]=0",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "v2",
            "security_monitoring",
            "rules"
          ],
          "query": [
            {
              "key": "page[size]",
              "value": "10",
              "description": "Size for a given page. The maximum allowed value is 100."
            },
            {
              "key": "page[number]",
              "value": "0",
              "description": "Specific page number to return."
            }
          ]
        }
      },
      "status": "Bad Request",
      "code": 400,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    \"<string>\",\n    \"<string>\"\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/v2/security_monitoring/rules?page[size]=10&page[number]=0",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "v2",
            "security_monitoring",
            "rules"
          ],
          "query": [
            {
              "key": "page[size]",
              "value": "10",
              "description": "Size for a given page. The maximum allowed value is 100."
            },
            {
              "key": "page[number]",
              "value": "0",
              "description": "Specific page number to return."
            }
          ]
        }
      },
      "status": "Too Many Requests",
      "code": 429,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    \"<string>\",\n    \"<string>\"\n  ]\n}"
    }
  ]
}