diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 39f6901f1a8..6026994e243 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -1761,6 +1761,65 @@ components:
required:
- role_name
type: object
+ AWSCloudAuthPersonaMappingAttributesResponse:
+ description: Attributes for AWS cloud authentication persona mapping response
+ properties:
+ account_identifier:
+ description: Datadog account identifier (email or handle) mapped to the
+ AWS principal
+ example: test@test.com
+ type: string
+ account_uuid:
+ description: Datadog account UUID
+ example: 12bbdc5c-5966-47e0-8733-285f9e44bcf4
+ type: string
+ arn_pattern:
+ description: AWS IAM ARN pattern to match for authentication
+ example: arn:aws:iam::123456789012:user/testuser
+ type: string
+ required:
+ - arn_pattern
+ - account_identifier
+ - account_uuid
+ type: object
+ AWSCloudAuthPersonaMappingDataResponse:
+ description: Data for AWS cloud authentication persona mapping response
+ properties:
+ attributes:
+ $ref: '#/components/schemas/AWSCloudAuthPersonaMappingAttributesResponse'
+ id:
+ description: Unique identifier for the persona mapping
+ example: c5c758c6-18c2-4484-ae3f-46b84128404a
+ type: string
+ type:
+ $ref: '#/components/schemas/AWSCloudAuthPersonaMappingType'
+ required:
+ - id
+ - type
+ - attributes
+ type: object
+ AWSCloudAuthPersonaMappingType:
+ description: Type identifier for AWS cloud authentication persona mapping
+ enum:
+ - aws_cloud_auth_config
+ example: aws_cloud_auth_config
+ type: string
+ x-enum-varnames:
+ - AWS_CLOUD_AUTH_CONFIG
+ AWSCloudAuthPersonaMappingsData:
+ description: List of AWS cloud authentication persona mappings
+ items:
+ $ref: '#/components/schemas/AWSCloudAuthPersonaMappingDataResponse'
+ type: array
+ AWSCloudAuthPersonaMappingsResponse:
+ description: Response containing a list of AWS cloud authentication persona
+ mappings
+ properties:
+ data:
+ $ref: '#/components/schemas/AWSCloudAuthPersonaMappingsData'
+ required:
+ - data
+ type: object
AWSCredentials:
description: The definition of `AWSCredentials` object.
oneOf:
@@ -69385,6 +69444,39 @@ paths:
permissions:
- ci_visibility_read
- test_optimization_read
+ /api/v2/cloud_auth/aws/persona_mapping:
+ get:
+ description: List all AWS cloud authentication persona mappings. This endpoint
+ retrieves all configured persona mappings that associate AWS IAM principals
+ with Datadog users.
+ operationId: ListAWSCloudAuthPersonaMappings
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/AWSCloudAuthPersonaMappingsResponse'
+ description: OK
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/APIErrorResponse'
+ description: Bad Request
+ '403':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/APIErrorResponse'
+ description: Forbidden
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ summary: List AWS cloud authentication persona mappings
+ tags:
+ - Cloud Authentication
+ x-unstable: '**Note**: This endpoint is in public beta and is subject to change.
+
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
/api/v2/cloud_security_management/custom_frameworks:
post:
description: Create a custom framework.
@@ -96576,6 +96668,9 @@ tags:
Management page](https://docs.datadoghq.com/service_management/case_management/)
for more information.
name: Case Management Type
+- description: Configure AWS cloud authentication mappings for persona and intake
+ authentication through the Datadog API.
+ name: Cloud Authentication
- description: The Cloud Cost Management API allows you to set up, edit, and delete
Cloud Cost Management accounts for AWS, Azure, and Google Cloud. You can query
your cost data by using the [Metrics endpoint](https://docs.datadoghq.com/api/latest/metrics/#query-timeseries-data-across-multiple-products)
diff --git a/examples/v2/cloud-authentication/ListAWSCloudAuthPersonaMappings.java b/examples/v2/cloud-authentication/ListAWSCloudAuthPersonaMappings.java
new file mode 100644
index 00000000000..ae92435172d
--- /dev/null
+++ b/examples/v2/cloud-authentication/ListAWSCloudAuthPersonaMappings.java
@@ -0,0 +1,26 @@
+// List AWS cloud authentication persona mappings returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.CloudAuthenticationApi;
+import com.datadog.api.client.v2.model.AWSCloudAuthPersonaMappingsResponse;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.listAWSCloudAuthPersonaMappings", true);
+ CloudAuthenticationApi apiInstance = new CloudAuthenticationApi(defaultClient);
+
+ try {
+ AWSCloudAuthPersonaMappingsResponse result = apiInstance.listAWSCloudAuthPersonaMappings();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling CloudAuthenticationApi#listAWSCloudAuthPersonaMappings");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/ApiClient.java b/src/main/java/com/datadog/api/client/ApiClient.java
index 5c25d9425fa..d1a725403ca 100644
--- a/src/main/java/com/datadog/api/client/ApiClient.java
+++ b/src/main/java/com/datadog/api/client/ApiClient.java
@@ -775,6 +775,7 @@ public class ApiClient {
put("v2.getOpenAPI", false);
put("v2.listAPIs", false);
put("v2.updateOpenAPI", false);
+ put("v2.listAWSCloudAuthPersonaMappings", false);
put("v2.attachJiraIssue", false);
put("v2.cancelThreatHuntingJob", false);
put("v2.convertJobResultToSignal", false);
diff --git a/src/main/java/com/datadog/api/client/v2/api/CloudAuthenticationApi.java b/src/main/java/com/datadog/api/client/v2/api/CloudAuthenticationApi.java
new file mode 100644
index 00000000000..711493e41e5
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/api/CloudAuthenticationApi.java
@@ -0,0 +1,178 @@
+package com.datadog.api.client.v2.api;
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.ApiResponse;
+import com.datadog.api.client.Pair;
+import com.datadog.api.client.v2.model.AWSCloudAuthPersonaMappingsResponse;
+import jakarta.ws.rs.client.Invocation;
+import jakarta.ws.rs.core.GenericType;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.concurrent.CompletableFuture;
+
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class CloudAuthenticationApi {
+ private ApiClient apiClient;
+
+ public CloudAuthenticationApi() {
+ this(ApiClient.getDefaultApiClient());
+ }
+
+ public CloudAuthenticationApi(ApiClient apiClient) {
+ this.apiClient = apiClient;
+ }
+
+ /**
+ * Get the API client.
+ *
+ * @return API client
+ */
+ public ApiClient getApiClient() {
+ return apiClient;
+ }
+
+ /**
+ * Set the API client.
+ *
+ * @param apiClient an instance of API client
+ */
+ public void setApiClient(ApiClient apiClient) {
+ this.apiClient = apiClient;
+ }
+
+ /**
+ * List AWS cloud authentication persona mappings.
+ *
+ *
See {@link #listAWSCloudAuthPersonaMappingsWithHttpInfo}.
+ *
+ * @return AWSCloudAuthPersonaMappingsResponse
+ * @throws ApiException if fails to make API call
+ */
+ public AWSCloudAuthPersonaMappingsResponse listAWSCloudAuthPersonaMappings() throws ApiException {
+ return listAWSCloudAuthPersonaMappingsWithHttpInfo().getData();
+ }
+
+ /**
+ * List AWS cloud authentication persona mappings.
+ *
+ *
See {@link #listAWSCloudAuthPersonaMappingsWithHttpInfoAsync}.
+ *
+ * @return CompletableFuture<AWSCloudAuthPersonaMappingsResponse>
+ */
+ public CompletableFuture
+ listAWSCloudAuthPersonaMappingsAsync() {
+ return listAWSCloudAuthPersonaMappingsWithHttpInfoAsync()
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * List all AWS cloud authentication persona mappings. This endpoint retrieves all configured
+ * persona mappings that associate AWS IAM principals with Datadog users.
+ *
+ * @return ApiResponse<AWSCloudAuthPersonaMappingsResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse
+ listAWSCloudAuthPersonaMappingsWithHttpInfo() throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "listAWSCloudAuthPersonaMappings";
+ if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
+ apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
+ } else {
+ throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId));
+ }
+ Object localVarPostBody = null;
+ // create path and map variables
+ String localVarPath = "/api/v2/cloud_auth/aws/persona_mapping";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.CloudAuthenticationApi.listAWSCloudAuthPersonaMappings",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * List AWS cloud authentication persona mappings.
+ *
+ * See {@link #listAWSCloudAuthPersonaMappingsWithHttpInfo}.
+ *
+ * @return CompletableFuture<ApiResponse<AWSCloudAuthPersonaMappingsResponse>>
+ */
+ public CompletableFuture>
+ listAWSCloudAuthPersonaMappingsWithHttpInfoAsync() {
+ // Check if unstable operation is enabled
+ String operationId = "listAWSCloudAuthPersonaMappings";
+ if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
+ apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
+ } else {
+ CompletableFuture> result =
+ new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)));
+ return result;
+ }
+ Object localVarPostBody = null;
+ // create path and map variables
+ String localVarPath = "/api/v2/cloud_auth/aws/persona_mapping";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.CloudAuthenticationApi.listAWSCloudAuthPersonaMappings",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ } catch (ApiException ex) {
+ CompletableFuture> result =
+ new CompletableFuture<>();
+ result.completeExceptionally(ex);
+ return result;
+ }
+ return apiClient.invokeAPIAsync(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingAttributesResponse.java b/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingAttributesResponse.java
new file mode 100644
index 00000000000..5a1ee55a6bd
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingAttributesResponse.java
@@ -0,0 +1,208 @@
+/*
+ * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
+ * Copyright 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** Attributes for AWS cloud authentication persona mapping response */
+@JsonPropertyOrder({
+ AWSCloudAuthPersonaMappingAttributesResponse.JSON_PROPERTY_ACCOUNT_IDENTIFIER,
+ AWSCloudAuthPersonaMappingAttributesResponse.JSON_PROPERTY_ACCOUNT_UUID,
+ AWSCloudAuthPersonaMappingAttributesResponse.JSON_PROPERTY_ARN_PATTERN
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class AWSCloudAuthPersonaMappingAttributesResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ACCOUNT_IDENTIFIER = "account_identifier";
+ private String accountIdentifier;
+
+ public static final String JSON_PROPERTY_ACCOUNT_UUID = "account_uuid";
+ private String accountUuid;
+
+ public static final String JSON_PROPERTY_ARN_PATTERN = "arn_pattern";
+ private String arnPattern;
+
+ public AWSCloudAuthPersonaMappingAttributesResponse() {}
+
+ @JsonCreator
+ public AWSCloudAuthPersonaMappingAttributesResponse(
+ @JsonProperty(required = true, value = JSON_PROPERTY_ACCOUNT_IDENTIFIER)
+ String accountIdentifier,
+ @JsonProperty(required = true, value = JSON_PROPERTY_ACCOUNT_UUID) String accountUuid,
+ @JsonProperty(required = true, value = JSON_PROPERTY_ARN_PATTERN) String arnPattern) {
+ this.accountIdentifier = accountIdentifier;
+ this.accountUuid = accountUuid;
+ this.arnPattern = arnPattern;
+ }
+
+ public AWSCloudAuthPersonaMappingAttributesResponse accountIdentifier(String accountIdentifier) {
+ this.accountIdentifier = accountIdentifier;
+ return this;
+ }
+
+ /**
+ * Datadog account identifier (email or handle) mapped to the AWS principal
+ *
+ * @return accountIdentifier
+ */
+ @JsonProperty(JSON_PROPERTY_ACCOUNT_IDENTIFIER)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getAccountIdentifier() {
+ return accountIdentifier;
+ }
+
+ public void setAccountIdentifier(String accountIdentifier) {
+ this.accountIdentifier = accountIdentifier;
+ }
+
+ public AWSCloudAuthPersonaMappingAttributesResponse accountUuid(String accountUuid) {
+ this.accountUuid = accountUuid;
+ return this;
+ }
+
+ /**
+ * Datadog account UUID
+ *
+ * @return accountUuid
+ */
+ @JsonProperty(JSON_PROPERTY_ACCOUNT_UUID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getAccountUuid() {
+ return accountUuid;
+ }
+
+ public void setAccountUuid(String accountUuid) {
+ this.accountUuid = accountUuid;
+ }
+
+ public AWSCloudAuthPersonaMappingAttributesResponse arnPattern(String arnPattern) {
+ this.arnPattern = arnPattern;
+ return this;
+ }
+
+ /**
+ * AWS IAM ARN pattern to match for authentication
+ *
+ * @return arnPattern
+ */
+ @JsonProperty(JSON_PROPERTY_ARN_PATTERN)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getArnPattern() {
+ return arnPattern;
+ }
+
+ public void setArnPattern(String arnPattern) {
+ this.arnPattern = arnPattern;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return AWSCloudAuthPersonaMappingAttributesResponse
+ */
+ @JsonAnySetter
+ public AWSCloudAuthPersonaMappingAttributesResponse putAdditionalProperty(
+ String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this AWSCloudAuthPersonaMappingAttributesResponse object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ AWSCloudAuthPersonaMappingAttributesResponse awsCloudAuthPersonaMappingAttributesResponse =
+ (AWSCloudAuthPersonaMappingAttributesResponse) o;
+ return Objects.equals(
+ this.accountIdentifier, awsCloudAuthPersonaMappingAttributesResponse.accountIdentifier)
+ && Objects.equals(
+ this.accountUuid, awsCloudAuthPersonaMappingAttributesResponse.accountUuid)
+ && Objects.equals(this.arnPattern, awsCloudAuthPersonaMappingAttributesResponse.arnPattern)
+ && Objects.equals(
+ this.additionalProperties,
+ awsCloudAuthPersonaMappingAttributesResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(accountIdentifier, accountUuid, arnPattern, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class AWSCloudAuthPersonaMappingAttributesResponse {\n");
+ sb.append(" accountIdentifier: ").append(toIndentedString(accountIdentifier)).append("\n");
+ sb.append(" accountUuid: ").append(toIndentedString(accountUuid)).append("\n");
+ sb.append(" arnPattern: ").append(toIndentedString(arnPattern)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingDataResponse.java b/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingDataResponse.java
new file mode 100644
index 00000000000..146ed747afb
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingDataResponse.java
@@ -0,0 +1,213 @@
+/*
+ * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
+ * Copyright 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/** Data for AWS cloud authentication persona mapping response */
+@JsonPropertyOrder({
+ AWSCloudAuthPersonaMappingDataResponse.JSON_PROPERTY_ATTRIBUTES,
+ AWSCloudAuthPersonaMappingDataResponse.JSON_PROPERTY_ID,
+ AWSCloudAuthPersonaMappingDataResponse.JSON_PROPERTY_TYPE
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class AWSCloudAuthPersonaMappingDataResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
+ private AWSCloudAuthPersonaMappingAttributesResponse attributes;
+
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
+ public static final String JSON_PROPERTY_TYPE = "type";
+ private AWSCloudAuthPersonaMappingType type;
+
+ public AWSCloudAuthPersonaMappingDataResponse() {}
+
+ @JsonCreator
+ public AWSCloudAuthPersonaMappingDataResponse(
+ @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES)
+ AWSCloudAuthPersonaMappingAttributesResponse attributes,
+ @JsonProperty(required = true, value = JSON_PROPERTY_ID) String id,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TYPE)
+ AWSCloudAuthPersonaMappingType type) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ this.id = id;
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ }
+
+ public AWSCloudAuthPersonaMappingDataResponse attributes(
+ AWSCloudAuthPersonaMappingAttributesResponse attributes) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ return this;
+ }
+
+ /**
+ * Attributes for AWS cloud authentication persona mapping response
+ *
+ * @return attributes
+ */
+ @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public AWSCloudAuthPersonaMappingAttributesResponse getAttributes() {
+ return attributes;
+ }
+
+ public void setAttributes(AWSCloudAuthPersonaMappingAttributesResponse attributes) {
+ this.attributes = attributes;
+ }
+
+ public AWSCloudAuthPersonaMappingDataResponse id(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Unique identifier for the persona mapping
+ *
+ * @return id
+ */
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public AWSCloudAuthPersonaMappingDataResponse type(AWSCloudAuthPersonaMappingType type) {
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ return this;
+ }
+
+ /**
+ * Type identifier for AWS cloud authentication persona mapping
+ *
+ * @return type
+ */
+ @JsonProperty(JSON_PROPERTY_TYPE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public AWSCloudAuthPersonaMappingType getType() {
+ return type;
+ }
+
+ public void setType(AWSCloudAuthPersonaMappingType type) {
+ if (!type.isValid()) {
+ this.unparsed = true;
+ }
+ this.type = type;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return AWSCloudAuthPersonaMappingDataResponse
+ */
+ @JsonAnySetter
+ public AWSCloudAuthPersonaMappingDataResponse putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this AWSCloudAuthPersonaMappingDataResponse object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ AWSCloudAuthPersonaMappingDataResponse awsCloudAuthPersonaMappingDataResponse =
+ (AWSCloudAuthPersonaMappingDataResponse) o;
+ return Objects.equals(this.attributes, awsCloudAuthPersonaMappingDataResponse.attributes)
+ && Objects.equals(this.id, awsCloudAuthPersonaMappingDataResponse.id)
+ && Objects.equals(this.type, awsCloudAuthPersonaMappingDataResponse.type)
+ && Objects.equals(
+ this.additionalProperties, awsCloudAuthPersonaMappingDataResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(attributes, id, type, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class AWSCloudAuthPersonaMappingDataResponse {\n");
+ sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n");
+ sb.append(" id: ").append(toIndentedString(id)).append("\n");
+ sb.append(" type: ").append(toIndentedString(type)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingType.java b/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingType.java
new file mode 100644
index 00000000000..72d5284d24f
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingType.java
@@ -0,0 +1,58 @@
+/*
+ * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
+ * Copyright 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.datadog.api.client.ModelEnum;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.Set;
+
+/** Type identifier for AWS cloud authentication persona mapping */
+@JsonSerialize(
+ using = AWSCloudAuthPersonaMappingType.AWSCloudAuthPersonaMappingTypeSerializer.class)
+public class AWSCloudAuthPersonaMappingType extends ModelEnum {
+
+ private static final Set allowedValues =
+ new HashSet(Arrays.asList("aws_cloud_auth_config"));
+
+ public static final AWSCloudAuthPersonaMappingType AWS_CLOUD_AUTH_CONFIG =
+ new AWSCloudAuthPersonaMappingType("aws_cloud_auth_config");
+
+ AWSCloudAuthPersonaMappingType(String value) {
+ super(value, allowedValues);
+ }
+
+ public static class AWSCloudAuthPersonaMappingTypeSerializer
+ extends StdSerializer {
+ public AWSCloudAuthPersonaMappingTypeSerializer(Class t) {
+ super(t);
+ }
+
+ public AWSCloudAuthPersonaMappingTypeSerializer() {
+ this(null);
+ }
+
+ @Override
+ public void serialize(
+ AWSCloudAuthPersonaMappingType value, JsonGenerator jgen, SerializerProvider provider)
+ throws IOException, JsonProcessingException {
+ jgen.writeObject(value.value);
+ }
+ }
+
+ @JsonCreator
+ public static AWSCloudAuthPersonaMappingType fromValue(String value) {
+ return new AWSCloudAuthPersonaMappingType(value);
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingsResponse.java b/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingsResponse.java
new file mode 100644
index 00000000000..8981570ff5e
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/AWSCloudAuthPersonaMappingsResponse.java
@@ -0,0 +1,159 @@
+/*
+ * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
+ * Copyright 2019-Present Datadog, Inc.
+ */
+
+package com.datadog.api.client.v2.model;
+
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/** Response containing a list of AWS cloud authentication persona mappings */
+@JsonPropertyOrder({AWSCloudAuthPersonaMappingsResponse.JSON_PROPERTY_DATA})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class AWSCloudAuthPersonaMappingsResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DATA = "data";
+ private List data = new ArrayList<>();
+
+ public AWSCloudAuthPersonaMappingsResponse() {}
+
+ @JsonCreator
+ public AWSCloudAuthPersonaMappingsResponse(
+ @JsonProperty(required = true, value = JSON_PROPERTY_DATA)
+ List data) {
+ this.data = data;
+ }
+
+ public AWSCloudAuthPersonaMappingsResponse data(
+ List data) {
+ this.data = data;
+ for (AWSCloudAuthPersonaMappingDataResponse item : data) {
+ this.unparsed |= item.unparsed;
+ }
+ return this;
+ }
+
+ public AWSCloudAuthPersonaMappingsResponse addDataItem(
+ AWSCloudAuthPersonaMappingDataResponse dataItem) {
+ this.data.add(dataItem);
+ this.unparsed |= dataItem.unparsed;
+ return this;
+ }
+
+ /**
+ * List of AWS cloud authentication persona mappings
+ *
+ * @return data
+ */
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ /**
+ * A container for additional, undeclared properties. This is a holder for any undeclared
+ * properties as specified with the 'additionalProperties' keyword in the OAS document.
+ */
+ private Map additionalProperties;
+
+ /**
+ * Set the additional (undeclared) property with the specified name and value. If the property
+ * does not already exist, create it otherwise replace it.
+ *
+ * @param key The arbitrary key to set
+ * @param value The associated value
+ * @return AWSCloudAuthPersonaMappingsResponse
+ */
+ @JsonAnySetter
+ public AWSCloudAuthPersonaMappingsResponse putAdditionalProperty(String key, Object value) {
+ if (this.additionalProperties == null) {
+ this.additionalProperties = new HashMap();
+ }
+ this.additionalProperties.put(key, value);
+ return this;
+ }
+
+ /**
+ * Return the additional (undeclared) property.
+ *
+ * @return The additional properties
+ */
+ @JsonAnyGetter
+ public Map getAdditionalProperties() {
+ return additionalProperties;
+ }
+
+ /**
+ * Return the additional (undeclared) property with the specified name.
+ *
+ * @param key The arbitrary key to get
+ * @return The specific additional property for the given key
+ */
+ public Object getAdditionalProperty(String key) {
+ if (this.additionalProperties == null) {
+ return null;
+ }
+ return this.additionalProperties.get(key);
+ }
+
+ /** Return true if this AWSCloudAuthPersonaMappingsResponse object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ AWSCloudAuthPersonaMappingsResponse awsCloudAuthPersonaMappingsResponse =
+ (AWSCloudAuthPersonaMappingsResponse) o;
+ return Objects.equals(this.data, awsCloudAuthPersonaMappingsResponse.data)
+ && Objects.equals(
+ this.additionalProperties, awsCloudAuthPersonaMappingsResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(data, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class AWSCloudAuthPersonaMappingsResponse {\n");
+ sb.append(" data: ").append(toIndentedString(data)).append("\n");
+ sb.append(" additionalProperties: ")
+ .append(toIndentedString(additionalProperties))
+ .append("\n");
+ sb.append('}');
+ return sb.toString();
+ }
+
+ /**
+ * Convert the given object to string with each line indented by 4 spaces (except the first line).
+ */
+ private String toIndentedString(Object o) {
+ if (o == null) {
+ return "null";
+ }
+ return o.toString().replace("\n", "\n ");
+ }
+}
diff --git a/src/test/resources/cassettes/features/v2/Delete_a_suppression_rule_returns_OK_response.freeze b/src/test/resources/cassettes/features/v2/Delete_a_suppression_rule_returns_OK_response.freeze
index e97b2eea30e..ec35b858851 100644
--- a/src/test/resources/cassettes/features/v2/Delete_a_suppression_rule_returns_OK_response.freeze
+++ b/src/test/resources/cassettes/features/v2/Delete_a_suppression_rule_returns_OK_response.freeze
@@ -1 +1 @@
-2026-01-21T15:35:04.231Z
\ No newline at end of file
+2026-01-14T17:29:03.168Z
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Delete_a_suppression_rule_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_a_suppression_rule_returns_OK_response.json
index e87fd58bad1..bc7ac56f941 100644
--- a/src/test/resources/cassettes/features/v2/Delete_a_suppression_rule_returns_OK_response.json
+++ b/src/test/resources/cassettes/features/v2/Delete_a_suppression_rule_returns_OK_response.json
@@ -3,7 +3,7 @@
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Delete_a_suppression_rule_returns_OK_response-1769009704\",\"enabled\":true,\"name\":\"suppression cf0b1697c5006472\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Delete_a_suppression_rule_returns_OK_response-1768411743\",\"enabled\":true,\"name\":\"suppression Test-Delete_a_suppression_rule_returns_OK_response-1768411743\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -12,7 +12,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"9e0-jx9-qxd\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009705137,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Delete_a_suppression_rule_returns_OK_response-1769009704\",\"editable\":true,\"enabled\":true,\"name\":\"suppression cf0b1697c5006472\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009705137,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"itm-ljs-0qw\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768411744411,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Delete_a_suppression_rule_returns_OK_response-1768411743\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Delete_a_suppression_rule_returns_OK_response-1768411743\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768411744411,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -27,13 +27,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "250bb9b9-30e4-8643-16f3-c5e55c439e43"
+ "id": "54e5a340-5de4-8285-a606-324efbc11f5d"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/9e0-jx9-qxd",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/itm-ljs-0qw",
"keepAlive": false,
"secure": true
},
@@ -48,18 +48,18 @@
"timeToLive": {
"unlimited": true
},
- "id": "912c9726-b290-da69-c289-b81e7fd75dfe"
+ "id": "e9742d91-8c62-9396-15fd-0a073429f463"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/9e0-jx9-qxd",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/itm-ljs-0qw",
"keepAlive": false,
"secure": true
},
"httpResponse": {
- "body": "{\"errors\":[\"not_found(Suppression with ID 9e0-jx9-qxd not found)\"]}",
+ "body": "{\"errors\":[\"not_found(Suppression with ID itm-ljs-0qw not found)\"]}",
"headers": {
"Content-Type": [
"application/json"
@@ -74,6 +74,6 @@
"timeToLive": {
"unlimited": true
},
- "id": "912c9726-b290-da69-c289-b81e7fd75dff"
+ "id": "e9742d91-8c62-9396-15fd-0a073429f464"
}
]
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_a_suppression_rule_returns_OK_response.freeze b/src/test/resources/cassettes/features/v2/Get_a_suppression_rule_returns_OK_response.freeze
index 1587aa37ce9..16f1a15eddc 100644
--- a/src/test/resources/cassettes/features/v2/Get_a_suppression_rule_returns_OK_response.freeze
+++ b/src/test/resources/cassettes/features/v2/Get_a_suppression_rule_returns_OK_response.freeze
@@ -1 +1 @@
-2026-01-21T15:35:05.393Z
\ No newline at end of file
+2026-01-14T17:29:04.856Z
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_a_suppression_rule_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_a_suppression_rule_returns_OK_response.json
index 19ad95c3154..4656d9bdb38 100644
--- a/src/test/resources/cassettes/features/v2/Get_a_suppression_rule_returns_OK_response.json
+++ b/src/test/resources/cassettes/features/v2/Get_a_suppression_rule_returns_OK_response.json
@@ -3,7 +3,7 @@
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_a_suppression_rule_returns_OK_response-1769009705\",\"enabled\":true,\"name\":\"suppression 561a22ed12317d7c\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_a_suppression_rule_returns_OK_response-1768411744\",\"enabled\":true,\"name\":\"suppression Test-Get_a_suppression_rule_returns_OK_response-1768411744\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -12,7 +12,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"k8l-r8a-pfs\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009705474,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_a_suppression_rule_returns_OK_response-1769009705\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 561a22ed12317d7c\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009705474,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"xno-kwg-8df\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768411744987,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_a_suppression_rule_returns_OK_response-1768411744\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Get_a_suppression_rule_returns_OK_response-1768411744\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768411744987,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -27,18 +27,18 @@
"timeToLive": {
"unlimited": true
},
- "id": "a378ace0-fe5c-e85f-53d5-e2585346a520"
+ "id": "0f0810a4-bb6e-d06b-4e28-254f21a399de"
},
{
"httpRequest": {
"headers": {},
"method": "GET",
- "path": "/api/v2/security_monitoring/configuration/suppressions/k8l-r8a-pfs",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/xno-kwg-8df",
"keepAlive": false,
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"k8l-r8a-pfs\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009705474,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_a_suppression_rule_returns_OK_response-1769009705\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 561a22ed12317d7c\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009705474,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"xno-kwg-8df\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768411744987,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_a_suppression_rule_returns_OK_response-1768411744\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Get_a_suppression_rule_returns_OK_response-1768411744\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768411744987,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -53,13 +53,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "c38eb7b3-ec6b-10e1-ed27-91099e234052"
+ "id": "42e4b15c-099b-b608-2f86-850e2b995bfa"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/k8l-r8a-pfs",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/xno-kwg-8df",
"keepAlive": false,
"secure": true
},
@@ -74,6 +74,6 @@
"timeToLive": {
"unlimited": true
},
- "id": "4444a4de-ef76-9469-73fb-a5493f75a4ac"
+ "id": "b106773a-5ae2-b87d-f8cb-461ca79195e7"
}
]
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_a_suppression_s_version_history_returns_OK_response.freeze b/src/test/resources/cassettes/features/v2/Get_a_suppression_s_version_history_returns_OK_response.freeze
index f398064da83..66913264132 100644
--- a/src/test/resources/cassettes/features/v2/Get_a_suppression_s_version_history_returns_OK_response.freeze
+++ b/src/test/resources/cassettes/features/v2/Get_a_suppression_s_version_history_returns_OK_response.freeze
@@ -1 +1 @@
-2026-01-21T15:35:05.712Z
\ No newline at end of file
+2026-01-14T17:29:05.317Z
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_a_suppression_s_version_history_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_a_suppression_s_version_history_returns_OK_response.json
index 419363a43f6..735862452d8 100644
--- a/src/test/resources/cassettes/features/v2/Get_a_suppression_s_version_history_returns_OK_response.json
+++ b/src/test/resources/cassettes/features/v2/Get_a_suppression_s_version_history_returns_OK_response.json
@@ -3,7 +3,7 @@
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_a_suppression_s_version_history_returns_OK_response-1769009705\",\"enabled\":true,\"name\":\"suppression ee42c68404916b9e\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_a_suppression_s_version_history_returns_OK_response-1768411745\",\"enabled\":true,\"name\":\"suppression Test-Get_a_suppression_s_version_history_returns_OK_response-1768411745\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -12,7 +12,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"joc-mpc-lbz\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009705785,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_a_suppression_s_version_history_returns_OK_response-1769009705\",\"editable\":true,\"enabled\":true,\"name\":\"suppression ee42c68404916b9e\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009705785,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"sro-unv-k08\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768411745430,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_a_suppression_s_version_history_returns_OK_response-1768411745\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Get_a_suppression_s_version_history_returns_OK_response-1768411745\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768411745430,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -27,18 +27,18 @@
"timeToLive": {
"unlimited": true
},
- "id": "77f49bb6-988d-e58f-8d45-2bade4a0169c"
+ "id": "033e1691-28bd-d988-a146-781673716fa1"
},
{
"httpRequest": {
"headers": {},
"method": "GET",
- "path": "/api/v2/security_monitoring/configuration/suppressions/joc-mpc-lbz/version_history",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/sro-unv-k08/version_history",
"keepAlive": false,
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"joc-mpc-lbz\",\"type\":\"suppression_version_history\",\"attributes\":{\"count\":1,\"data\":{\"1\":{\"suppression\":{\"id\":\"joc-mpc-lbz\",\"name\":\"suppression ee42c68404916b9e\",\"enabled\":true,\"description\":\"Test-Get_a_suppression_s_version_history_returns_OK_response-1769009705\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"data_exclusion_query\":\"\",\"version\":1,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"creation_date\":1769009705785,\"update_date\":1769009705785,\"editable\":true,\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"]},\"changes\":[]}}}}}",
+ "body": "{\"data\":{\"id\":\"sro-unv-k08\",\"type\":\"suppression_version_history\",\"attributes\":{\"count\":1,\"data\":{\"1\":{\"suppression\":{\"id\":\"sro-unv-k08\",\"name\":\"suppression Test-Get_a_suppression_s_version_history_returns_OK_response-1768411745\",\"enabled\":true,\"description\":\"Test-Get_a_suppression_s_version_history_returns_OK_response-1768411745\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"data_exclusion_query\":\"\",\"version\":1,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"creation_date\":1768411745430,\"update_date\":1768411745430,\"editable\":true,\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"]},\"changes\":[]}}}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -53,13 +53,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "9892f80b-2fa6-b67a-2f19-5237f1a41050"
+ "id": "8c3d6b9a-30ce-5406-933f-512cb644bda7"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/joc-mpc-lbz",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/sro-unv-k08",
"keepAlive": false,
"secure": true
},
@@ -74,6 +74,6 @@
"timeToLive": {
"unlimited": true
},
- "id": "d2910a1d-453b-aea2-e6f6-0ddb4fccc155"
+ "id": "86cf8291-215a-f95c-f482-37f971f42c58"
}
]
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_pagination.freeze b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_pagination.freeze
index cbc0a8127fd..23cdf460db7 100644
--- a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_pagination.freeze
+++ b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_pagination.freeze
@@ -1 +1 @@
-2026-01-21T15:35:06.001Z
\ No newline at end of file
+2026-01-14T17:12:28.523Z
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_pagination.json b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_pagination.json
index ba62972585c..f61f8f48301 100644
--- a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_pagination.json
+++ b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_pagination.json
@@ -3,7 +3,7 @@
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1769009706\",\"enabled\":true,\"name\":\"suppression 5a71acf7699e3a9e\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"enabled\":true,\"name\":\"suppression Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -12,7 +12,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"dgv-9mh-i77\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009706064,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1769009706\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 5a71acf7699e3a9e\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009706064,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"fgz-hyr-ibu\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410748883,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410748883,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -27,13 +27,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "43c7aa79-bfba-cbfc-fe73-5bde1a2a9418"
+ "id": "d8b623cb-fe4b-00c4-217f-366ceaa8cd81"
},
{
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1769009706\",\"enabled\":true,\"name\":\"suppression2 5a71acf7699e3a9e\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"enabled\":true,\"name\":\"suppression2 Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -42,7 +42,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"23j-s8c-mlt\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009706152,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1769009706\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 5a71acf7699e3a9e\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009706152,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"lgh-7no-380\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410749324,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410749324,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -57,7 +57,7 @@
"timeToLive": {
"unlimited": true
},
- "id": "37877d72-d2cf-a137-f374-489cfbfe29fa"
+ "id": "62e38132-3fde-59a9-d031-732766e8a12a"
},
{
"httpRequest": {
@@ -72,14 +72,14 @@
"0"
],
"query": [
- "id:dgv-9mh-i77 OR id:23j-s8c-mlt"
+ "id:fgz-hyr-ibu OR id:lgh-7no-380"
]
},
"keepAlive": false,
"secure": true
},
"httpResponse": {
- "body": "{\"data\":[{\"id\":\"dgv-9mh-i77\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009706064,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1769009706\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 5a71acf7699e3a9e\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009706064,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}],\"meta\":{\"page\":{\"totalCount\":2,\"pageSize\":1,\"pageNumber\":0}}}",
+ "body": "{\"data\":[{\"id\":\"fgz-hyr-ibu\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410748883,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Get_all_suppression_rules_returns_OK_response_with_pagination-1768410748\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410748883,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}}],\"meta\":{\"page\":{\"totalCount\":2,\"pageSize\":1,\"pageNumber\":0}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -94,13 +94,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "6c30afd0-58a1-0bd5-3cfc-12e926c320f8"
+ "id": "c585a7d1-9881-dc5b-d460-b1714231b0f9"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/23j-s8c-mlt",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/lgh-7no-380",
"keepAlive": false,
"secure": true
},
@@ -115,13 +115,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "02460149-3ab4-be81-2533-6ded784ff77f"
+ "id": "5329789a-6920-a318-48a1-5f1f7a75d084"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/dgv-9mh-i77",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/fgz-hyr-ibu",
"keepAlive": false,
"secure": true
},
@@ -136,6 +136,6 @@
"timeToLive": {
"unlimited": true
},
- "id": "facd3c4b-7372-d193-690b-d899954a1701"
+ "id": "c8c4295f-3029-6d08-1e17-ce33ee527dc8"
}
]
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_ascending.freeze b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_ascending.freeze
index dac8fbb4d4a..89bfc8cd8ef 100644
--- a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_ascending.freeze
+++ b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_ascending.freeze
@@ -1 +1 @@
-2026-01-21T15:35:06.453Z
\ No newline at end of file
+2026-01-14T17:12:30.925Z
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_ascending.json b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_ascending.json
index 67b0f3ae417..f7ee1372a07 100644
--- a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_ascending.json
+++ b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_ascending.json
@@ -3,7 +3,7 @@
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1769009706\",\"enabled\":true,\"name\":\"suppression 9acb44c7d1cc0bd2\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"enabled\":true,\"name\":\"suppression Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -12,7 +12,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"x91-nfr-3ws\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009706525,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1769009706\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 9acb44c7d1cc0bd2\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009706525,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"5cq-vnw-eza\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410751276,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410751276,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -27,13 +27,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "ee4e4310-a56c-24ed-4177-a0b8ea8d17b7"
+ "id": "5d559937-62cf-4bb1-23bb-52331e71796c"
},
{
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1769009706\",\"enabled\":true,\"name\":\"suppression2 9acb44c7d1cc0bd2\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"enabled\":true,\"name\":\"suppression2 Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -42,7 +42,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"4ni-qbs-lxd\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009706684,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1769009706\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 9acb44c7d1cc0bd2\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009706684,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"fuu-xxd-kjd\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410751710,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410751710,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -57,7 +57,7 @@
"timeToLive": {
"unlimited": true
},
- "id": "a85a049a-9c5b-2a18-5fdc-d89375c72f5f"
+ "id": "1794be2a-8757-c3e6-9bad-6e32a5279fb0"
},
{
"httpRequest": {
@@ -69,14 +69,14 @@
"name"
],
"query": [
- "id:x91-nfr-3ws OR id:4ni-qbs-lxd"
+ "id:5cq-vnw-eza OR id:fuu-xxd-kjd"
]
},
"keepAlive": false,
"secure": true
},
"httpResponse": {
- "body": "{\"data\":[{\"id\":\"x91-nfr-3ws\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009706525,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1769009706\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 9acb44c7d1cc0bd2\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009706525,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}},{\"id\":\"4ni-qbs-lxd\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009706684,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1769009706\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 9acb44c7d1cc0bd2\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009706684,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}],\"meta\":{\"page\":{\"totalCount\":2,\"pageSize\":2,\"pageNumber\":0}}}",
+ "body": "{\"data\":[{\"id\":\"5cq-vnw-eza\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410751276,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410751276,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}},{\"id\":\"fuu-xxd-kjd\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410751710,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 Test-Get_all_suppression_rules_returns_OK_response_with_sort_ascending-1768410750\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410751710,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}}],\"meta\":{\"page\":{\"totalCount\":2,\"pageSize\":2,\"pageNumber\":0}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -91,13 +91,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "b459755b-fcaf-a46b-d241-98872e6a3857"
+ "id": "4e579531-d85d-bac9-15a6-68f29f36e23e"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/4ni-qbs-lxd",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/fuu-xxd-kjd",
"keepAlive": false,
"secure": true
},
@@ -112,13 +112,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "4089fedc-e17a-1c06-19e0-a272a8302456"
+ "id": "457db922-e7ed-74e8-e0cf-69a4bf39c49f"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/x91-nfr-3ws",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/5cq-vnw-eza",
"keepAlive": false,
"secure": true
},
@@ -133,6 +133,6 @@
"timeToLive": {
"unlimited": true
},
- "id": "b9b390cf-6cf7-cf61-7292-b7aaa38de24c"
+ "id": "bbc4dcbf-a0a1-7255-d8b8-692d9785aa97"
}
]
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_descending.freeze b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_descending.freeze
index ef4d4a296f2..d184a46ea08 100644
--- a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_descending.freeze
+++ b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_descending.freeze
@@ -1 +1 @@
-2026-01-21T15:35:07.003Z
\ No newline at end of file
+2026-01-14T17:12:33.088Z
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_descending.json b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_descending.json
index d6c0dde3aec..43c5d8d3659 100644
--- a/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_descending.json
+++ b/src/test/resources/cassettes/features/v2/Get_all_suppression_rules_returns_OK_response_with_sort_descending.json
@@ -3,7 +3,7 @@
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1769009707\",\"enabled\":true,\"name\":\"suppression 4668d111f32d9934\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"enabled\":true,\"name\":\"suppression Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -12,7 +12,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"mru-avx-npf\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009707069,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1769009707\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 4668d111f32d9934\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009707069,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"osw-qyf-tqn\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410753455,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410753455,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -27,13 +27,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "60bfb47a-f585-762a-878c-d233bed0b9e3"
+ "id": "6804f189-09de-0950-bf78-086b20b556ca"
},
{
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1769009707\",\"enabled\":true,\"name\":\"suppression2 4668d111f32d9934\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"enabled\":true,\"name\":\"suppression2 Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -42,7 +42,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"qjl-xxu-vlo\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009707163,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1769009707\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 4668d111f32d9934\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009707163,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"pe9-gdi-ee2\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410753872,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410753872,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -57,7 +57,7 @@
"timeToLive": {
"unlimited": true
},
- "id": "bc0e866a-5b83-45b2-b9b4-f33a0a798d39"
+ "id": "f50d4629-2389-7973-c040-32367fac199a"
},
{
"httpRequest": {
@@ -69,14 +69,14 @@
"-name"
],
"query": [
- "id:mru-avx-npf OR id:qjl-xxu-vlo"
+ "id:osw-qyf-tqn OR id:pe9-gdi-ee2"
]
},
"keepAlive": false,
"secure": true
},
"httpResponse": {
- "body": "{\"data\":[{\"id\":\"qjl-xxu-vlo\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009707163,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1769009707\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 4668d111f32d9934\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009707163,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}},{\"id\":\"mru-avx-npf\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009707069,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1769009707\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 4668d111f32d9934\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009707069,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}],\"meta\":{\"page\":{\"totalCount\":2,\"pageSize\":2,\"pageNumber\":0}}}",
+ "body": "{\"data\":[{\"id\":\"pe9-gdi-ee2\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410753872,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"editable\":true,\"enabled\":true,\"name\":\"suppression2 Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410753872,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}},{\"id\":\"osw-qyf-tqn\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768410753455,\"creator\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Get_all_suppression_rules_returns_OK_response_with_sort_descending-1768410753\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768410753455,\"updater\":{\"handle\":\"frog@datadoghq.com\",\"name\":\"frog\"},\"version\":1}}],\"meta\":{\"page\":{\"totalCount\":2,\"pageSize\":2,\"pageNumber\":0}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -91,13 +91,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "c52ea552-4feb-b027-1b88-be45e114dc55"
+ "id": "5bee98ca-76eb-3a3d-746f-51d6d1f1ce66"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/qjl-xxu-vlo",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/pe9-gdi-ee2",
"keepAlive": false,
"secure": true
},
@@ -112,13 +112,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "59531c32-8ded-fd29-da8b-25d9e04bc950"
+ "id": "4d20b729-7b38-f715-f7df-aec60621d5e6"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/mru-avx-npf",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/osw-qyf-tqn",
"keepAlive": false,
"secure": true
},
@@ -133,6 +133,6 @@
"timeToLive": {
"unlimited": true
},
- "id": "177a9b01-6aa8-a4b3-2455-8e444dbd968f"
+ "id": "f1eaffca-6f0d-6fc1-5a7a-6948b4a19559"
}
]
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Update_a_suppression_rule_returns_OK_response.freeze b/src/test/resources/cassettes/features/v2/Update_a_suppression_rule_returns_OK_response.freeze
index efe791d5186..e05f55dd710 100644
--- a/src/test/resources/cassettes/features/v2/Update_a_suppression_rule_returns_OK_response.freeze
+++ b/src/test/resources/cassettes/features/v2/Update_a_suppression_rule_returns_OK_response.freeze
@@ -1 +1 @@
-2026-01-21T15:35:07.497Z
\ No newline at end of file
+2026-01-14T17:29:05.825Z
\ No newline at end of file
diff --git a/src/test/resources/cassettes/features/v2/Update_a_suppression_rule_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_a_suppression_rule_returns_OK_response.json
index dd46dc30dd0..fd9c0afb684 100644
--- a/src/test/resources/cassettes/features/v2/Update_a_suppression_rule_returns_OK_response.json
+++ b/src/test/resources/cassettes/features/v2/Update_a_suppression_rule_returns_OK_response.json
@@ -3,7 +3,7 @@
"httpRequest": {
"body": {
"type": "JSON",
- "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Update_a_suppression_rule_returns_OK_response-1769009707\",\"enabled\":true,\"name\":\"suppression 181539185fcb1be7\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
+ "json": "{\"data\":{\"attributes\":{\"description\":\"Test-Update_a_suppression_rule_returns_OK_response-1768411745\",\"enabled\":true,\"name\":\"suppression Test-Update_a_suppression_rule_returns_OK_response-1768411745\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"technique:T1110-brute-force\",\"source:cloudtrail\"]},\"type\":\"suppressions\"}}"
},
"headers": {},
"method": "POST",
@@ -12,7 +12,7 @@
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"h6t-xj1-5jw\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009707555,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Update_a_suppression_rule_returns_OK_response-1769009707\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 181539185fcb1be7\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009707555,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
+ "body": "{\"data\":{\"id\":\"ucv-bpf-4bc\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768411745950,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Update_a_suppression_rule_returns_OK_response-1768411745\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Update_a_suppression_rule_returns_OK_response-1768411745\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:test\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768411745950,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":1}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -27,7 +27,7 @@
"timeToLive": {
"unlimited": true
},
- "id": "317fbf00-8ad6-f66b-5cfc-5ffeed9b1004"
+ "id": "011620d6-2878-5fbd-5639-07e61fe5e4e2"
},
{
"httpRequest": {
@@ -37,12 +37,12 @@
},
"headers": {},
"method": "PATCH",
- "path": "/api/v2/security_monitoring/configuration/suppressions/h6t-xj1-5jw",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/ucv-bpf-4bc",
"keepAlive": false,
"secure": true
},
"httpResponse": {
- "body": "{\"data\":{\"id\":\"h6t-xj1-5jw\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1769009707555,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Update_a_suppression_rule_returns_OK_response-1769009707\",\"editable\":true,\"enabled\":true,\"name\":\"suppression 181539185fcb1be7\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:staging status:low\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1769009707651,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":2}}}",
+ "body": "{\"data\":{\"id\":\"ucv-bpf-4bc\",\"type\":\"suppressions\",\"attributes\":{\"creation_date\":1768411745950,\"creator\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"data_exclusion_query\":\"\",\"description\":\"Test-Update_a_suppression_rule_returns_OK_response-1768411745\",\"editable\":true,\"enabled\":true,\"name\":\"suppression Test-Update_a_suppression_rule_returns_OK_response-1768411745\",\"rule_query\":\"source:cloudtrail\",\"suppression_query\":\"env:staging status:low\",\"tags\":[\"source:cloudtrail\",\"technique:T1110-brute-force\"],\"update_date\":1768411746111,\"updater\":{\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"name\":\"CI Account\"},\"version\":2}}}",
"headers": {
"Content-Type": [
"application/vnd.api+json"
@@ -57,13 +57,13 @@
"timeToLive": {
"unlimited": true
},
- "id": "05ee6b5f-7591-b714-88d9-cd5077010873"
+ "id": "2195b1a9-82a2-a39e-a977-4a4bf2194053"
},
{
"httpRequest": {
"headers": {},
"method": "DELETE",
- "path": "/api/v2/security_monitoring/configuration/suppressions/h6t-xj1-5jw",
+ "path": "/api/v2/security_monitoring/configuration/suppressions/ucv-bpf-4bc",
"keepAlive": false,
"secure": true
},
@@ -78,6 +78,6 @@
"timeToLive": {
"unlimited": true
},
- "id": "65ed8abf-f958-dd3e-fbf7-af9ade0607ac"
+ "id": "52852935-bffe-e564-35b8-1f47b1b1dead"
}
]
\ No newline at end of file
diff --git a/src/test/resources/com/datadog/api/client/v2/api/cloud_authentication.feature b/src/test/resources/com/datadog/api/client/v2/api/cloud_authentication.feature
new file mode 100644
index 00000000000..fe9eb594a73
--- /dev/null
+++ b/src/test/resources/com/datadog/api/client/v2/api/cloud_authentication.feature
@@ -0,0 +1,21 @@
+@endpoint(cloud-authentication) @endpoint(cloud-authentication-v2)
+Feature: Cloud Authentication
+ Configure AWS cloud authentication mappings for persona and intake
+ authentication through the Datadog API.
+
+ Background:
+ Given a valid "apiKeyAuth" key in the system
+ And a valid "appKeyAuth" key in the system
+ And an instance of "CloudAuthentication" API
+ And operation "ListAWSCloudAuthPersonaMappings" enabled
+ And new "ListAWSCloudAuthPersonaMappings" request
+
+ @generated @skip @team:DataDog/team-aaaauthn
+ Scenario: List AWS cloud authentication persona mappings returns "Bad Request" response
+ When the request is sent
+ Then the response status is 400 Bad Request
+
+ @generated @skip @team:DataDog/team-aaaauthn
+ Scenario: List AWS cloud authentication persona mappings returns "OK" response
+ When the request is sent
+ Then the response status is 200 OK
diff --git a/src/test/resources/com/datadog/api/client/v2/api/given.json b/src/test/resources/com/datadog/api/client/v2/api/given.json
index c237924a73c..c7911aa317c 100644
--- a/src/test/resources/com/datadog/api/client/v2/api/given.json
+++ b/src/test/resources/com/datadog/api/client/v2/api/given.json
@@ -1035,7 +1035,7 @@
"parameters": [
{
"name": "body",
- "value": "{\n \"data\": {\n \"type\": \"suppressions\",\n \"attributes\": {\n \"enabled\": true,\n \"name\": \"suppression {{ unique_hash }}\",\n \"description\": \"{{ unique }}\",\n \"rule_query\": \"source:cloudtrail\",\n \"suppression_query\": \"env:test\",\n \"tags\": [\"technique:T1110-brute-force\", \"source:cloudtrail\"]\n }\n }\n}"
+ "value": "{\n \"data\": {\n \"type\": \"suppressions\",\n \"attributes\": {\n \"enabled\": true,\n \"name\": \"suppression {{ unique }}\",\n \"description\": \"{{ unique }}\",\n \"rule_query\": \"source:cloudtrail\",\n \"suppression_query\": \"env:test\",\n \"tags\": [\"technique:T1110-brute-force\", \"source:cloudtrail\"]\n }\n }\n}"
}
],
"step": "there is a valid \"suppression\" in the system",
@@ -1047,7 +1047,7 @@
"parameters": [
{
"name": "body",
- "value": "{\n \"data\": {\n \"type\": \"suppressions\",\n \"attributes\": {\n \"enabled\": true,\n \"name\": \"suppression2 {{ unique_hash }}\",\n \"description\": \"{{ unique }}\",\n \"rule_query\": \"source:cloudtrail\",\n \"suppression_query\": \"env:test\",\n \"tags\": [\"technique:T1110-brute-force\", \"source:cloudtrail\"]\n }\n }\n}"
+ "value": "{\n \"data\": {\n \"type\": \"suppressions\",\n \"attributes\": {\n \"enabled\": true,\n \"name\": \"suppression2 {{ unique }}\",\n \"description\": \"{{ unique }}\",\n \"rule_query\": \"source:cloudtrail\",\n \"suppression_query\": \"env:test\",\n \"tags\": [\"technique:T1110-brute-force\", \"source:cloudtrail\"]\n }\n }\n}"
}
],
"step": "there is a valid \"suppression2\" in the system",
diff --git a/src/test/resources/com/datadog/api/client/v2/api/security_monitoring.feature b/src/test/resources/com/datadog/api/client/v2/api/security_monitoring.feature
index 32722676fab..1ce71f3d340 100644
--- a/src/test/resources/com/datadog/api/client/v2/api/security_monitoring.feature
+++ b/src/test/resources/com/datadog/api/client/v2/api/security_monitoring.feature
@@ -1167,7 +1167,7 @@ Feature: Security Monitoring
And request contains "query" parameter with value "id:{{ suppression.data.id }} OR id:{{ suppression2.data.id }}"
When the request is sent
Then the response status is 200 OK
- And the response "data[0].attributes.name" is equal to "suppression {{ unique_hash }}"
+ And the response "data[0].attributes.name" is equal to "suppression {{ unique }}"
@team:DataDog/k9-cloud-security-platform
Scenario: Get all suppression rules returns "OK" response with sort descending
@@ -1178,7 +1178,7 @@ Feature: Security Monitoring
And request contains "query" parameter with value "id:{{ suppression.data.id }} OR id:{{ suppression2.data.id }}"
When the request is sent
Then the response status is 200 OK
- And the response "data[0].attributes.name" is equal to "suppression2 {{ unique_hash }}"
+ And the response "data[0].attributes.name" is equal to "suppression2 {{ unique }}"
@skip @team:DataDog/k9-cloud-security-platform
Scenario: Get critical assets affecting a specific rule returns "Not Found" response
diff --git a/src/test/resources/com/datadog/api/client/v2/api/undo.json b/src/test/resources/com/datadog/api/client/v2/api/undo.json
index bfcee722b4e..4b198c82ca5 100644
--- a/src/test/resources/com/datadog/api/client/v2/api/undo.json
+++ b/src/test/resources/com/datadog/api/client/v2/api/undo.json
@@ -923,6 +923,12 @@
"type": "safe"
}
},
+ "ListAWSCloudAuthPersonaMappings": {
+ "tag": "Cloud Authentication",
+ "undo": {
+ "type": "safe"
+ }
+ },
"CreateCustomFramework": {
"tag": "Security Monitoring",
"undo": {