Skip to content

Commit 85e60ad

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit c40a673 of spec repo
1 parent 8d11342 commit 85e60ad

18 files changed

+774
-1
lines changed

.generator/schemas/v2/openapi.yaml

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63779,6 +63779,67 @@ paths:
6377963779
tags:
6378063780
- Security Monitoring
6378163781
x-codegen-request-body-name: body
63782+
/api/v2/security_monitoring/configuration/suppressions/rules:
63783+
post:
63784+
description: Get the list of suppressions that would affect future rule evaluations
63785+
for a given rule query. This endpoint is useful to preview which suppressions
63786+
would apply to a rule before creating or updating it.
63787+
operationId: GetSuppressionsAffectingFutureRule
63788+
requestBody:
63789+
content:
63790+
application/json:
63791+
schema:
63792+
$ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload'
63793+
required: true
63794+
responses:
63795+
'200':
63796+
content:
63797+
application/json:
63798+
schema:
63799+
$ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse'
63800+
description: OK
63801+
'400':
63802+
$ref: '#/components/responses/BadRequestResponse'
63803+
'403':
63804+
$ref: '#/components/responses/NotAuthorizedResponse'
63805+
'429':
63806+
$ref: '#/components/responses/TooManyRequestsResponse'
63807+
security:
63808+
- apiKeyAuth: []
63809+
appKeyAuth: []
63810+
- AuthZ:
63811+
- security_monitoring_suppressions_read
63812+
summary: Get suppressions affecting future rule evaluations
63813+
tags:
63814+
- Security Monitoring
63815+
/api/v2/security_monitoring/configuration/suppressions/rules/{rule_id}:
63816+
get:
63817+
description: Get the list of suppressions that affect a specific existing rule
63818+
by its ID.
63819+
operationId: GetSuppressionsAffectingRule
63820+
parameters:
63821+
- $ref: '#/components/parameters/SecurityMonitoringRuleID'
63822+
responses:
63823+
'200':
63824+
content:
63825+
application/json:
63826+
schema:
63827+
$ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse'
63828+
description: OK
63829+
'403':
63830+
$ref: '#/components/responses/NotAuthorizedResponse'
63831+
'404':
63832+
$ref: '#/components/responses/NotFoundResponse'
63833+
'429':
63834+
$ref: '#/components/responses/TooManyRequestsResponse'
63835+
security:
63836+
- apiKeyAuth: []
63837+
appKeyAuth: []
63838+
- AuthZ:
63839+
- security_monitoring_suppressions_read
63840+
summary: Get suppressions affecting a specific rule
63841+
tags:
63842+
- Security Monitoring
6378263843
/api/v2/security_monitoring/configuration/suppressions/{suppression_id}:
6378363844
delete:
6378463845
description: Delete a specific suppression rule.
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
// Get suppressions affecting future rule evaluations returns "OK" response
2+
3+
import com.datadog.api.client.ApiClient;
4+
import com.datadog.api.client.ApiException;
5+
import com.datadog.api.client.v2.api.SecurityMonitoringApi;
6+
import com.datadog.api.client.v2.model.SecurityMonitoringReferenceTable;
7+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleCaseCreate;
8+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleCreatePayload;
9+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleEvaluationWindow;
10+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleKeepAlive;
11+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleMaxSignalDuration;
12+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleOptions;
13+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleQueryAggregation;
14+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleSeverity;
15+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleTypeCreate;
16+
import com.datadog.api.client.v2.model.SecurityMonitoringStandardRuleCreatePayload;
17+
import com.datadog.api.client.v2.model.SecurityMonitoringStandardRuleQuery;
18+
import com.datadog.api.client.v2.model.SecurityMonitoringSuppressionsResponse;
19+
import java.util.Collections;
20+
21+
public class Example {
22+
public static void main(String[] args) {
23+
ApiClient defaultClient = ApiClient.getDefaultApiClient();
24+
SecurityMonitoringApi apiInstance = new SecurityMonitoringApi(defaultClient);
25+
26+
SecurityMonitoringRuleCreatePayload body =
27+
new SecurityMonitoringRuleCreatePayload(
28+
new SecurityMonitoringStandardRuleCreatePayload()
29+
.name("Example-Security-Monitoring")
30+
.queries(
31+
Collections.singletonList(
32+
new SecurityMonitoringStandardRuleQuery()
33+
.query("@test:true")
34+
.aggregation(SecurityMonitoringRuleQueryAggregation.COUNT)
35+
.metric("")))
36+
.cases(
37+
Collections.singletonList(
38+
new SecurityMonitoringRuleCaseCreate()
39+
.name("")
40+
.status(SecurityMonitoringRuleSeverity.INFO)
41+
.condition("a > 0")))
42+
.options(
43+
new SecurityMonitoringRuleOptions()
44+
.evaluationWindow(SecurityMonitoringRuleEvaluationWindow.FIFTEEN_MINUTES)
45+
.keepAlive(SecurityMonitoringRuleKeepAlive.ONE_HOUR)
46+
.maxSignalDuration(SecurityMonitoringRuleMaxSignalDuration.ONE_DAY))
47+
.message("Test rule")
48+
.isEnabled(true)
49+
.type(SecurityMonitoringRuleTypeCreate.LOG_DETECTION)
50+
.referenceTables(
51+
Collections.singletonList(
52+
new SecurityMonitoringReferenceTable()
53+
.tableName("synthetics_test_reference_table_dont_delete")
54+
.columnName("value")
55+
.logFieldPath("testtag")
56+
.checkPresence(true)
57+
.ruleQueryName("a"))));
58+
59+
try {
60+
SecurityMonitoringSuppressionsResponse result =
61+
apiInstance.getSuppressionsAffectingFutureRule(body);
62+
System.out.println(result);
63+
} catch (ApiException e) {
64+
System.err.println(
65+
"Exception when calling SecurityMonitoringApi#getSuppressionsAffectingFutureRule");
66+
System.err.println("Status code: " + e.getCode());
67+
System.err.println("Reason: " + e.getResponseBody());
68+
System.err.println("Response headers: " + e.getResponseHeaders());
69+
e.printStackTrace();
70+
}
71+
}
72+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
// Get suppressions affecting a specific rule returns "OK" response
2+
3+
import com.datadog.api.client.ApiClient;
4+
import com.datadog.api.client.ApiException;
5+
import com.datadog.api.client.v2.api.SecurityMonitoringApi;
6+
import com.datadog.api.client.v2.model.SecurityMonitoringSuppressionsResponse;
7+
8+
public class Example {
9+
public static void main(String[] args) {
10+
ApiClient defaultClient = ApiClient.getDefaultApiClient();
11+
SecurityMonitoringApi apiInstance = new SecurityMonitoringApi(defaultClient);
12+
13+
try {
14+
SecurityMonitoringSuppressionsResponse result =
15+
apiInstance.getSuppressionsAffectingRule("rule_id");
16+
System.out.println(result);
17+
} catch (ApiException e) {
18+
System.err.println(
19+
"Exception when calling SecurityMonitoringApi#getSuppressionsAffectingRule");
20+
System.err.println("Status code: " + e.getCode());
21+
System.err.println("Reason: " + e.getResponseBody());
22+
System.err.println("Response headers: " + e.getResponseHeaders());
23+
e.printStackTrace();
24+
}
25+
}
26+
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
// Get suppressions affecting rule returns "OK" response
2+
3+
import com.datadog.api.client.ApiClient;
4+
import com.datadog.api.client.ApiException;
5+
import com.datadog.api.client.v2.api.SecurityMonitoringApi;
6+
import com.datadog.api.client.v2.model.SecurityMonitoringSuppressionsResponse;
7+
8+
public class Example {
9+
public static void main(String[] args) {
10+
ApiClient defaultClient = ApiClient.getDefaultApiClient();
11+
SecurityMonitoringApi apiInstance = new SecurityMonitoringApi(defaultClient);
12+
13+
// there is a valid "security_rule" in the system
14+
String SECURITY_RULE_ID = System.getenv("SECURITY_RULE_ID");
15+
16+
try {
17+
SecurityMonitoringSuppressionsResponse result =
18+
apiInstance.getSuppressionsAffectingRule(SECURITY_RULE_ID);
19+
System.out.println(result);
20+
} catch (ApiException e) {
21+
System.err.println(
22+
"Exception when calling SecurityMonitoringApi#getSuppressionsAffectingRule");
23+
System.err.println("Status code: " + e.getCode());
24+
System.err.println("Reason: " + e.getResponseBody());
25+
System.err.println("Response headers: " + e.getResponseHeaders());
26+
e.printStackTrace();
27+
}
28+
}
29+
}

0 commit comments

Comments
 (0)