diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 128bce58baaa..72ecdf2a8dfd 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -49256,18 +49256,6 @@ components: meta: $ref: '#/components/schemas/ResponseMetaAttributes' type: object - SecurityMonitoringPaginatedSuppressionsResponse: - description: Response object containing the available suppression rules with - pagination metadata. - properties: - data: - description: A list of suppressions objects. - items: - $ref: '#/components/schemas/SecurityMonitoringSuppression' - type: array - meta: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsMeta' - type: object SecurityMonitoringReferenceTable: description: Reference tables used in the queries. properties: @@ -51417,31 +51405,6 @@ components: data: $ref: '#/components/schemas/SecurityMonitoringSuppression' type: object - SecurityMonitoringSuppressionSort: - description: The sort parameters used for querying suppression rules. - enum: - - name - - start_date - - expiration_date - - update_date - - enabled - - -name - - -start_date - - -expiration_date - - -update_date - - -enabled - type: string - x-enum-varnames: - - NAME - - START_DATE - - EXPIRATION_DATE - - UPDATE_DATE - - ENABLED - - NAME_DESCENDING - - START_DATE_DESCENDING - - EXPIRATION_DATE_DESCENDING - - UPDATE_DATE_DESCENDING - - ENABLED_DESCENDING SecurityMonitoringSuppressionType: default: suppressions description: The type of the resource. The value should always be `suppressions`. @@ -51537,31 +51500,6 @@ components: required: - data type: object - SecurityMonitoringSuppressionsMeta: - description: Metadata for the suppression list response. - properties: - page: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsPageMeta' - type: object - SecurityMonitoringSuppressionsPageMeta: - description: Pagination metadata. - properties: - pageNumber: - description: Current page number. - example: 0 - format: int64 - type: integer - pageSize: - description: Current page size. - example: 2 - format: int64 - type: integer - totalCount: - description: Total count of suppressions. - example: 2 - format: int64 - type: integer - type: object SecurityMonitoringSuppressionsResponse: description: Response object containing the available suppression rules. properties: @@ -85732,29 +85670,12 @@ paths: required: false schema: type: string - - description: Attribute used to sort the list of suppression rules. Prefix - with `-` to sort in descending order. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionSort' - - description: Size for a given page. Use `-1` to return all items. - in: query - name: page[size] - required: false - schema: - default: -1 - example: 10 - format: int64 - type: integer - - $ref: '#/components/parameters/PageNumber' responses: '200': content: application/json: schema: - $ref: '#/components/schemas/SecurityMonitoringPaginatedSuppressionsResponse' + $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' description: OK '403': $ref: '#/components/responses/NotAuthorizedResponse' @@ -86786,7 +86707,7 @@ paths: $ref: '#/components/schemas/SensitiveDataScannerGroupCreateRequest' required: true responses: - '200': + '201': content: application/json: schema: @@ -86928,7 +86849,7 @@ paths: $ref: '#/components/schemas/SensitiveDataScannerRuleCreateRequest' required: true responses: - '200': + '201': content: application/json: schema: diff --git a/cassettes/features/v2/security_monitoring/Delete-a-suppression-rule-returns-OK-response.frozen b/cassettes/features/v2/security_monitoring/Delete-a-suppression-rule-returns-OK-response.frozen index ec35b858851a..3f3e3c99f212 100644 --- a/cassettes/features/v2/security_monitoring/Delete-a-suppression-rule-returns-OK-response.frozen +++ b/cassettes/features/v2/security_monitoring/Delete-a-suppression-rule-returns-OK-response.frozen @@ -1 +1 @@ -2026-01-14T17:29:03.168Z \ No newline at end of file +2025-11-07T12:27:26.759Z \ No newline at end of file diff --git a/cassettes/features/v2/security_monitoring/Delete-a-suppression-rule-returns-OK-response.yml b/cassettes/features/v2/security_monitoring/Delete-a-suppression-rule-returns-OK-response.yml index 37f25710f244..e3828707dc72 100644 --- a/cassettes/features/v2/security_monitoring/Delete-a-suppression-rule-returns-OK-response.yml +++ b/cassettes/features/v2/security_monitoring/Delete-a-suppression-rule-returns-OK-response.yml @@ -1,10 +1,9 @@ http_interactions: -- recorded_at: Wed, 14 Jan 2026 17:29:03 GMT +- recorded_at: Fri, 07 Nov 2025 12:27:26 GMT request: body: encoding: UTF-8 - string: '{"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"}}' + string: '{"data":{"attributes":{"description":"Test-Delete_a_suppression_rule_returns_OK_response-1762518446","enabled":true,"name":"Test-Delete_a_suppression_rule_returns_OK_response-1762518446","rule_query":"source:cloudtrail","suppression_query":"env:test","tags":["technique:T1110-brute-force","source:cloudtrail"]},"type":"suppressions"}}' headers: Accept: - application/json @@ -15,9 +14,8 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"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 + string: '{"data":{"id":"uea-lab-big","type":"suppressions","attributes":{"creation_date":1762518447002,"creator":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI + Account"},"data_exclusion_query":"","description":"Test-Delete_a_suppression_rule_returns_OK_response-1762518446","editable":true,"enabled":true,"name":"Test-Delete_a_suppression_rule_returns_OK_response-1762518446","rule_query":"source:cloudtrail","suppression_query":"env:test","tags":["source:cloudtrail","technique:T1110-brute-force"],"update_date":1762518447002,"updater":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI Account"},"version":1}}}' headers: Content-Type: @@ -25,14 +23,14 @@ http_interactions: status: code: 200 message: OK -- recorded_at: Wed, 14 Jan 2026 17:29:03 GMT +- recorded_at: Fri, 07 Nov 2025 12:27:26 GMT request: body: null headers: Accept: - '*/*' method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/itm-ljs-0qw + uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/uea-lab-big response: body: encoding: UTF-8 @@ -41,18 +39,18 @@ http_interactions: status: code: 204 message: No Content -- recorded_at: Wed, 14 Jan 2026 17:29:03 GMT +- recorded_at: Fri, 07 Nov 2025 12:27:26 GMT request: body: null headers: Accept: - '*/*' method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/itm-ljs-0qw + uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/uea-lab-big response: body: encoding: UTF-8 - string: '{"errors":["not_found(Suppression with ID itm-ljs-0qw not found)"]}' + string: '{"errors":["not_found(Suppression with ID uea-lab-big not found)"]}' headers: Content-Type: - application/json diff --git a/cassettes/features/v2/security_monitoring/Get-a-suppression-rule-returns-OK-response.frozen b/cassettes/features/v2/security_monitoring/Get-a-suppression-rule-returns-OK-response.frozen index 16f1a15eddce..a93a4d20e755 100644 --- a/cassettes/features/v2/security_monitoring/Get-a-suppression-rule-returns-OK-response.frozen +++ b/cassettes/features/v2/security_monitoring/Get-a-suppression-rule-returns-OK-response.frozen @@ -1 +1 @@ -2026-01-14T17:29:04.856Z \ No newline at end of file +2025-11-07T12:27:27.654Z \ No newline at end of file diff --git a/cassettes/features/v2/security_monitoring/Get-a-suppression-rule-returns-OK-response.yml b/cassettes/features/v2/security_monitoring/Get-a-suppression-rule-returns-OK-response.yml index 6021eaad9675..21d50015e7c7 100644 --- a/cassettes/features/v2/security_monitoring/Get-a-suppression-rule-returns-OK-response.yml +++ b/cassettes/features/v2/security_monitoring/Get-a-suppression-rule-returns-OK-response.yml @@ -1,10 +1,9 @@ http_interactions: -- recorded_at: Wed, 14 Jan 2026 17:29:04 GMT +- recorded_at: Fri, 07 Nov 2025 12:27:27 GMT request: body: encoding: UTF-8 - string: '{"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"}}' + string: '{"data":{"attributes":{"description":"Test-Get_a_suppression_rule_returns_OK_response-1762518447","enabled":true,"name":"Test-Get_a_suppression_rule_returns_OK_response-1762518447","rule_query":"source:cloudtrail","suppression_query":"env:test","tags":["technique:T1110-brute-force","source:cloudtrail"]},"type":"suppressions"}}' headers: Accept: - application/json @@ -15,9 +14,8 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"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 + string: '{"data":{"id":"ylq-igi-icg","type":"suppressions","attributes":{"creation_date":1762518447901,"creator":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI + Account"},"data_exclusion_query":"","description":"Test-Get_a_suppression_rule_returns_OK_response-1762518447","editable":true,"enabled":true,"name":"Test-Get_a_suppression_rule_returns_OK_response-1762518447","rule_query":"source:cloudtrail","suppression_query":"env:test","tags":["source:cloudtrail","technique:T1110-brute-force"],"update_date":1762518447901,"updater":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI Account"},"version":1}}}' headers: Content-Type: @@ -25,20 +23,19 @@ http_interactions: status: code: 200 message: OK -- recorded_at: Wed, 14 Jan 2026 17:29:04 GMT +- recorded_at: Fri, 07 Nov 2025 12:27:27 GMT request: body: null headers: Accept: - application/json method: GET - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/xno-kwg-8df + uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/ylq-igi-icg response: body: encoding: UTF-8 - string: '{"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 + string: '{"data":{"id":"ylq-igi-icg","type":"suppressions","attributes":{"creation_date":1762518447901,"creator":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI + Account"},"data_exclusion_query":"","description":"Test-Get_a_suppression_rule_returns_OK_response-1762518447","editable":true,"enabled":true,"name":"Test-Get_a_suppression_rule_returns_OK_response-1762518447","rule_query":"source:cloudtrail","suppression_query":"env:test","tags":["source:cloudtrail","technique:T1110-brute-force"],"update_date":1762518447901,"updater":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI Account"},"version":1}}}' headers: Content-Type: @@ -46,14 +43,14 @@ http_interactions: status: code: 200 message: OK -- recorded_at: Wed, 14 Jan 2026 17:29:04 GMT +- recorded_at: Fri, 07 Nov 2025 12:27:27 GMT request: body: null headers: Accept: - '*/*' method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/xno-kwg-8df + uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/ylq-igi-icg response: body: encoding: UTF-8 diff --git a/cassettes/features/v2/security_monitoring/Get-a-suppression-s-version-history-returns-OK-response.frozen b/cassettes/features/v2/security_monitoring/Get-a-suppression-s-version-history-returns-OK-response.frozen index 669132641329..d0d5ccec313b 100644 --- a/cassettes/features/v2/security_monitoring/Get-a-suppression-s-version-history-returns-OK-response.frozen +++ b/cassettes/features/v2/security_monitoring/Get-a-suppression-s-version-history-returns-OK-response.frozen @@ -1 +1 @@ -2026-01-14T17:29:05.317Z \ No newline at end of file +2025-11-26T13:33:06.482Z \ No newline at end of file diff --git a/cassettes/features/v2/security_monitoring/Get-a-suppression-s-version-history-returns-OK-response.yml b/cassettes/features/v2/security_monitoring/Get-a-suppression-s-version-history-returns-OK-response.yml index 26e1a51de103..84c317daea05 100644 --- a/cassettes/features/v2/security_monitoring/Get-a-suppression-s-version-history-returns-OK-response.yml +++ b/cassettes/features/v2/security_monitoring/Get-a-suppression-s-version-history-returns-OK-response.yml @@ -1,10 +1,9 @@ http_interactions: -- recorded_at: Wed, 14 Jan 2026 17:29:05 GMT +- recorded_at: Wed, 26 Nov 2025 13:33:06 GMT request: body: encoding: UTF-8 - string: '{"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"}}' + string: '{"data":{"attributes":{"description":"Test-Get_a_suppression_s_version_history_returns_OK_response-1764163986","enabled":true,"name":"Test-Get_a_suppression_s_version_history_returns_OK_response-1764163986","rule_query":"source:cloudtrail","suppression_query":"env:test","tags":["technique:T1110-brute-force","source:cloudtrail"]},"type":"suppressions"}}' headers: Accept: - application/json @@ -15,45 +14,39 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"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}}}' + string: '{"data":{"id":"456-piv-74h","type":"suppressions","attributes":{"creation_date":1764163986851,"creator":{"handle":"frog@datadoghq.com","name":"frog"},"data_exclusion_query":"","description":"Test-Get_a_suppression_s_version_history_returns_OK_response-1764163986","editable":true,"enabled":true,"name":"Test-Get_a_suppression_s_version_history_returns_OK_response-1764163986","rule_query":"source:cloudtrail","suppression_query":"env:test","tags":["source:cloudtrail","technique:T1110-brute-force"],"update_date":1764163986851,"updater":{"handle":"frog@datadoghq.com","name":"frog"},"version":1}}}' headers: Content-Type: - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Wed, 14 Jan 2026 17:29:05 GMT +- recorded_at: Wed, 26 Nov 2025 13:33:06 GMT request: body: null headers: Accept: - application/json method: GET - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/sro-unv-k08/version_history + uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/456-piv-74h/version_history response: body: encoding: UTF-8 - string: '{"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":[]}}}}}' + string: '{"data":{"id":"456-piv-74h","type":"suppression_version_history","attributes":{"count":1,"data":{"1":{"suppression":{"id":"456-piv-74h","name":"Test-Get_a_suppression_s_version_history_returns_OK_response-1764163986","enabled":true,"description":"Test-Get_a_suppression_s_version_history_returns_OK_response-1764163986","rule_query":"source:cloudtrail","suppression_query":"env:test","data_exclusion_query":"","version":1,"creator":{"handle":"frog@datadoghq.com","name":"frog"},"updater":{"handle":"frog@datadoghq.com","name":"frog"},"creation_date":1764163986851,"update_date":1764163986851,"editable":true,"tags":["source:cloudtrail","technique:T1110-brute-force"]},"changes":[]}}}}}' headers: Content-Type: - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Wed, 14 Jan 2026 17:29:05 GMT +- recorded_at: Wed, 26 Nov 2025 13:33:06 GMT request: body: null headers: Accept: - '*/*' method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/sro-unv-k08 + uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/456-piv-74h response: body: encoding: UTF-8 diff --git a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-pagination.frozen b/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-pagination.frozen deleted file mode 100644 index 23cdf460db77..000000000000 --- a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-pagination.frozen +++ /dev/null @@ -1 +0,0 @@ -2026-01-14T17:12:28.523Z \ No newline at end of file diff --git a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-pagination.yml b/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-pagination.yml deleted file mode 100644 index 5d0f6038306e..000000000000 --- a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-pagination.yml +++ /dev/null @@ -1,101 +0,0 @@ -http_interactions: -- recorded_at: Wed, 14 Jan 2026 17:12:28 GMT - request: - body: - encoding: UTF-8 - string: '{"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: - Accept: - - application/json - Content-Type: - - application/json - method: POST - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions - response: - body: - encoding: UTF-8 - string: '{"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 - status: - code: 200 - message: OK -- recorded_at: Wed, 14 Jan 2026 17:12:28 GMT - request: - body: - encoding: UTF-8 - string: '{"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: - Accept: - - application/json - Content-Type: - - application/json - method: POST - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions - response: - body: - encoding: UTF-8 - string: '{"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 - status: - code: 200 - message: OK -- recorded_at: Wed, 14 Jan 2026 17:12:28 GMT - request: - body: null - headers: - Accept: - - application/json - method: GET - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions?page%5Bsize%5D=1&page%5Bnumber%5D=0&query=id%3Afgz-hyr-ibu%20OR%20id%3Algh-7no-380 - response: - body: - encoding: UTF-8 - string: '{"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 - status: - code: 200 - message: OK -- recorded_at: Wed, 14 Jan 2026 17:12:28 GMT - request: - body: null - headers: - Accept: - - '*/*' - method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/lgh-7no-380 - response: - body: - encoding: UTF-8 - string: '' - headers: {} - status: - code: 204 - message: No Content -- recorded_at: Wed, 14 Jan 2026 17:12:28 GMT - request: - body: null - headers: - Accept: - - '*/*' - method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/fgz-hyr-ibu - response: - body: - encoding: UTF-8 - string: '' - headers: {} - status: - code: 204 - message: No Content -recorded_with: VCR 6.0.0 diff --git a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-ascending.frozen b/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-ascending.frozen deleted file mode 100644 index 89bfc8cd8ef8..000000000000 --- a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-ascending.frozen +++ /dev/null @@ -1 +0,0 @@ -2026-01-14T17:12:30.925Z \ No newline at end of file diff --git a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-ascending.yml b/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-ascending.yml deleted file mode 100644 index 0e765861acf4..000000000000 --- a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-ascending.yml +++ /dev/null @@ -1,102 +0,0 @@ -http_interactions: -- recorded_at: Wed, 14 Jan 2026 17:12:30 GMT - request: - body: - encoding: UTF-8 - string: '{"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: - Accept: - - application/json - Content-Type: - - application/json - method: POST - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions - response: - body: - encoding: UTF-8 - string: '{"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 - status: - code: 200 - message: OK -- recorded_at: Wed, 14 Jan 2026 17:12:30 GMT - request: - body: - encoding: UTF-8 - string: '{"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: - Accept: - - application/json - Content-Type: - - application/json - method: POST - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions - response: - body: - encoding: UTF-8 - string: '{"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 - status: - code: 200 - message: OK -- recorded_at: Wed, 14 Jan 2026 17:12:30 GMT - request: - body: null - headers: - Accept: - - application/json - method: GET - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions?sort=name&query=id%3A5cq-vnw-eza%20OR%20id%3Afuu-xxd-kjd - response: - body: - encoding: UTF-8 - string: '{"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 - status: - code: 200 - message: OK -- recorded_at: Wed, 14 Jan 2026 17:12:30 GMT - request: - body: null - headers: - Accept: - - '*/*' - method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/fuu-xxd-kjd - response: - body: - encoding: UTF-8 - string: '' - headers: {} - status: - code: 204 - message: No Content -- recorded_at: Wed, 14 Jan 2026 17:12:30 GMT - request: - body: null - headers: - Accept: - - '*/*' - method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/5cq-vnw-eza - response: - body: - encoding: UTF-8 - string: '' - headers: {} - status: - code: 204 - message: No Content -recorded_with: VCR 6.0.0 diff --git a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-descending.frozen b/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-descending.frozen deleted file mode 100644 index d184a46ea082..000000000000 --- a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-descending.frozen +++ /dev/null @@ -1 +0,0 @@ -2026-01-14T17:12:33.088Z \ No newline at end of file diff --git a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-descending.yml b/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-descending.yml deleted file mode 100644 index 8b1f589c4673..000000000000 --- a/cassettes/features/v2/security_monitoring/Get-all-suppression-rules-returns-OK-response-with-sort-descending.yml +++ /dev/null @@ -1,102 +0,0 @@ -http_interactions: -- recorded_at: Wed, 14 Jan 2026 17:12:33 GMT - request: - body: - encoding: UTF-8 - string: '{"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: - Accept: - - application/json - Content-Type: - - application/json - method: POST - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions - response: - body: - encoding: UTF-8 - string: '{"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 - status: - code: 200 - message: OK -- recorded_at: Wed, 14 Jan 2026 17:12:33 GMT - request: - body: - encoding: UTF-8 - string: '{"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: - Accept: - - application/json - Content-Type: - - application/json - method: POST - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions - response: - body: - encoding: UTF-8 - string: '{"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 - status: - code: 200 - message: OK -- recorded_at: Wed, 14 Jan 2026 17:12:33 GMT - request: - body: null - headers: - Accept: - - application/json - method: GET - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions?sort=-name&query=id%3Aosw-qyf-tqn%20OR%20id%3Ape9-gdi-ee2 - response: - body: - encoding: UTF-8 - string: '{"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 - status: - code: 200 - message: OK -- recorded_at: Wed, 14 Jan 2026 17:12:33 GMT - request: - body: null - headers: - Accept: - - '*/*' - method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/pe9-gdi-ee2 - response: - body: - encoding: UTF-8 - string: '' - headers: {} - status: - code: 204 - message: No Content -- recorded_at: Wed, 14 Jan 2026 17:12:33 GMT - request: - body: null - headers: - Accept: - - '*/*' - method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/osw-qyf-tqn - response: - body: - encoding: UTF-8 - string: '' - headers: {} - status: - code: 204 - message: No Content -recorded_with: VCR 6.0.0 diff --git a/cassettes/features/v2/security_monitoring/Update-a-suppression-rule-returns-OK-response.frozen b/cassettes/features/v2/security_monitoring/Update-a-suppression-rule-returns-OK-response.frozen index e05f55dd7103..8839a50677d9 100644 --- a/cassettes/features/v2/security_monitoring/Update-a-suppression-rule-returns-OK-response.frozen +++ b/cassettes/features/v2/security_monitoring/Update-a-suppression-rule-returns-OK-response.frozen @@ -1 +1 @@ -2026-01-14T17:29:05.825Z \ No newline at end of file +2025-11-07T12:27:28.613Z \ No newline at end of file diff --git a/cassettes/features/v2/security_monitoring/Update-a-suppression-rule-returns-OK-response.yml b/cassettes/features/v2/security_monitoring/Update-a-suppression-rule-returns-OK-response.yml index 55f2cb1ff7b6..4fb6f154adef 100644 --- a/cassettes/features/v2/security_monitoring/Update-a-suppression-rule-returns-OK-response.yml +++ b/cassettes/features/v2/security_monitoring/Update-a-suppression-rule-returns-OK-response.yml @@ -1,10 +1,9 @@ http_interactions: -- recorded_at: Wed, 14 Jan 2026 17:29:05 GMT +- recorded_at: Fri, 07 Nov 2025 12:27:28 GMT request: body: encoding: UTF-8 - string: '{"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"}}' + string: '{"data":{"attributes":{"description":"Test-Update_a_suppression_rule_returns_OK_response-1762518448","enabled":true,"name":"Test-Update_a_suppression_rule_returns_OK_response-1762518448","rule_query":"source:cloudtrail","suppression_query":"env:test","tags":["technique:T1110-brute-force","source:cloudtrail"]},"type":"suppressions"}}' headers: Accept: - application/json @@ -15,9 +14,8 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"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 + string: '{"data":{"id":"uqt-hh6-qbq","type":"suppressions","attributes":{"creation_date":1762518448839,"creator":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI + Account"},"data_exclusion_query":"","description":"Test-Update_a_suppression_rule_returns_OK_response-1762518448","editable":true,"enabled":true,"name":"Test-Update_a_suppression_rule_returns_OK_response-1762518448","rule_query":"source:cloudtrail","suppression_query":"env:test","tags":["source:cloudtrail","technique:T1110-brute-force"],"update_date":1762518448839,"updater":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI Account"},"version":1}}}' headers: Content-Type: @@ -25,7 +23,7 @@ http_interactions: status: code: 200 message: OK -- recorded_at: Wed, 14 Jan 2026 17:29:05 GMT +- recorded_at: Fri, 07 Nov 2025 12:27:28 GMT request: body: encoding: UTF-8 @@ -36,14 +34,13 @@ http_interactions: Content-Type: - application/json method: PATCH - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/ucv-bpf-4bc + uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/uqt-hh6-qbq response: body: encoding: UTF-8 - string: '{"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 + string: '{"data":{"id":"uqt-hh6-qbq","type":"suppressions","attributes":{"creation_date":1762518448839,"creator":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI + Account"},"data_exclusion_query":"","description":"Test-Update_a_suppression_rule_returns_OK_response-1762518448","editable":true,"enabled":true,"name":"Test-Update_a_suppression_rule_returns_OK_response-1762518448","rule_query":"source:cloudtrail","suppression_query":"env:staging + status:low","tags":["source:cloudtrail","technique:T1110-brute-force"],"update_date":1762518449150,"updater":{"handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","name":"CI Account"},"version":2}}}' headers: Content-Type: @@ -51,14 +48,14 @@ http_interactions: status: code: 200 message: OK -- recorded_at: Wed, 14 Jan 2026 17:29:05 GMT +- recorded_at: Fri, 07 Nov 2025 12:27:28 GMT request: body: null headers: Accept: - '*/*' method: DELETE - uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/ucv-bpf-4bc + uri: https://api.datadoghq.com/api/v2/security_monitoring/configuration/suppressions/uqt-hh6-qbq response: body: encoding: UTF-8 diff --git a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Group-returns-OK-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Group-returns-OK-response.frozen index 53d5a36390d7..ea87314c8595 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Group-returns-OK-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Group-returns-OK-response.frozen @@ -1 +1 @@ -2022-12-09T09:52:45.850Z \ No newline at end of file +2026-01-19T13:11:03.221Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Group-returns-OK-response.yml b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Group-returns-OK-response.yml index b1d038f27883..55ba5c547a14 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Group-returns-OK-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Group-returns-OK-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 09 Dec 2022 09:52:45 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:03 GMT request: body: null headers: @@ -10,20 +10,18 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"meta":{"count_limit":100,"version":1189,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true},"data":{"relationships":{"groups":{"data":[]}},"attributes":{},"type":"sensitive_data_scanner_configuration","id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87"}} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":277985}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 09 Dec 2022 09:52:45 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:03 GMT request: body: encoding: UTF-8 - string: '{"data":{"attributes":{"filter":{"query":"*"},"is_enabled":false,"name":"Test-Create_Scanning_Group_returns_OK_response-1670579565","product_list":["logs"]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}},"type":"sensitive_data_scanner_group"},"meta":{}}' + string: '{"data":{"attributes":{"filter":{"query":"*"},"is_enabled":false,"name":"Test-Create_Scanning_Group_returns_OK_response-1768828263","product_list":["logs"]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}},"type":"sensitive_data_scanner_group"},"meta":{}}' headers: Accept: - application/json @@ -34,16 +32,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"meta":{"version":1190},"data":{"relationships":{"rules":{"data":[]},"configuration":{"data":{"type":"sensitive_data_scanner_configuration","id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87"}}},"attributes":{"is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"name":"Test-Create_Scanning_Group_returns_OK_response-1670579565"},"type":"sensitive_data_scanner_group","id":"RJDd4r3FQ2CpbYFQIL1KIA"}} - - ' + string: '{"data":{"id":"b9c899da-45e7-47d6-ae95-8372577923e5","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"Test-Create_Scanning_Group_returns_OK_response-1768828263","product_list":["logs"],"samplings":[]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":277986}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 09 Dec 2022 09:52:45 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:03 GMT request: body: encoding: UTF-8 @@ -54,16 +50,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/RJDd4r3FQ2CpbYFQIL1KIA + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/b9c899da-45e7-47d6-ae95-8372577923e5 response: body: encoding: UTF-8 - string: '{"meta":{"version":1191}} - - ' + string: '{"meta":{"version":277987}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-Bad-Request-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-Bad-Request-response.frozen index 933759217453..36c0a7224294 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-Bad-Request-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-Bad-Request-response.frozen @@ -1 +1 @@ -2025-05-30T17:17:05.785Z \ No newline at end of file +2026-01-19T13:11:04.324Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-Bad-Request-response.yml b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-Bad-Request-response.yml index 046af5094a2a..ad7c2e0b2c3a 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-Bad-Request-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-Bad-Request-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 30 May 2025 17:17:05 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:04 GMT request: body: null headers: @@ -10,105 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274556,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":277987}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:05 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:04 GMT request: body: encoding: UTF-8 @@ -123,20 +32,18 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"ebd98a70-4d09-45aa-99d7-5123d3a829ef","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274557}} - - ' + string: '{"data":{"id":"bd80b15d-a3e1-4e4a-af44-ae29bf8816f8","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":277988}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:05 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:04 GMT request: body: encoding: UTF-8 - string: '{"data":{"attributes":{"is_enabled":true,"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"ebd98a70-4d09-45aa-99d7-5123d3a829ef","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' + string: '{"data":{"attributes":{"is_enabled":true,"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"bd80b15d-a3e1-4e4a-af44-ae29bf8816f8","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' headers: Accept: - application/json @@ -147,17 +54,15 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"errors":["input_validation_error(Field ''data.attributes.name'' is - invalid: field ''data.attributes.name'' is required)"]} - - ' + string: '{"errors":[{"title":"Generic Error","detail":"rule name should not + be blank"}]}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 400 message: Bad Request -- recorded_at: Fri, 30 May 2025 17:17:05 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:04 GMT request: body: encoding: UTF-8 @@ -168,16 +73,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/ebd98a70-4d09-45aa-99d7-5123d3a829ef + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/bd80b15d-a3e1-4e4a-af44-ae29bf8816f8 response: body: encoding: UTF-8 - string: '{"meta":{"version":274558}} - - ' + string: '{"meta":{"version":277989}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-OK-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-OK-response.frozen index e3a1411fc4bf..54eb686bb7ce 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-OK-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-OK-response.frozen @@ -1 +1 @@ -2025-05-30T17:17:07.743Z \ No newline at end of file +2026-01-19T13:11:06.289Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-OK-response.yml b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-OK-response.yml index aca52827e5a0..71ac1b57634f 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-OK-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-returns-OK-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 30 May 2025 17:17:07 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:06 GMT request: body: null headers: @@ -10,105 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274558,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":277989}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:07 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:06 GMT request: body: encoding: UTF-8 @@ -123,21 +32,19 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"b494211c-c9a4-4eae-9411-c27299fd4dcf","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274559}} - - ' + string: '{"data":{"id":"e08a29f3-f7b2-4e32-af1f-f19ece1a12b3","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":277990}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:07 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:06 GMT request: body: encoding: UTF-8 string: '{"data":{"attributes":{"excluded_namespaces":["admin.name"],"included_keyword_configuration":{"character_count":35,"keywords":["credit - card"]},"is_enabled":true,"name":"Test-Create_Scanning_Rule_returns_OK_response-1748625427","namespaces":["admin"],"pattern":"pattern","priority":1,"tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"b494211c-c9a4-4eae-9411-c27299fd4dcf","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' + card"]},"is_enabled":true,"name":"Test-Create_Scanning_Rule_returns_OK_response-1768828266","namespaces":["admin"],"pattern":"pattern","priority":1,"tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"e08a29f3-f7b2-4e32-af1f-f19ece1a12b3","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' headers: Accept: - application/json @@ -148,17 +55,15 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"4fddb9c6-bca6-410f-a83b-57102588788b","attributes":{"name":"Test-Create_Scanning_Rule_returns_OK_response-1748625427","namespaces":["admin"],"excluded_namespaces":["admin.name"],"pattern":"pattern","text_replacement":{"type":"none"},"tags":["sensitive_data:true"],"labels":[],"is_enabled":true,"priority":1,"included_keyword_configuration":{"keywords":["credit - card"],"character_count":35}},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"b494211c-c9a4-4eae-9411-c27299fd4dcf","type":"sensitive_data_scanner_group"}}}},"meta":{"version":274560}} - - ' + string: '{"data":{"id":"b86c065a-c185-41b7-a24b-718480129c1a","type":"sensitive_data_scanner_rule","attributes":{"excluded_namespaces":["admin.name"],"included_keyword_configuration":{"keywords":["credit + card"],"character_count":35},"is_enabled":true,"labels":[],"name":"Test-Create_Scanning_Rule_returns_OK_response-1768828266","namespaces":["admin"],"pattern":"pattern","priority":1,"tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"e08a29f3-f7b2-4e32-af1f-f19ece1a12b3","type":"sensitive_data_scanner_group"}}}},"meta":{"version":277991}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:07 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:06 GMT request: body: encoding: UTF-8 @@ -169,20 +74,18 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/4fddb9c6-bca6-410f-a83b-57102588788b + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/b86c065a-c185-41b7-a24b-718480129c1a response: body: encoding: UTF-8 - string: '{"meta":{"version":274561}} - - ' + string: '{"meta":{"version":277992}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:07 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:06 GMT request: body: encoding: UTF-8 @@ -193,16 +96,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/b494211c-c9a4-4eae-9411-c27299fd4dcf + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/e08a29f3-f7b2-4e32-af1f-f19ece1a12b3 response: body: encoding: UTF-8 - string: '{"meta":{"version":274562}} - - ' + string: '{"meta":{"version":277993}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-with-should-save-match-returns-OK-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-with-should-save-match-returns-OK-response.frozen index 5834759fc6e9..27127dc5de8e 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-with-should-save-match-returns-OK-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-with-should-save-match-returns-OK-response.frozen @@ -1 +1 @@ -2025-08-26T20:31:44.042Z \ No newline at end of file +2026-01-19T13:11:08.516Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-with-should-save-match-returns-OK-response.yml b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-with-should-save-match-returns-OK-response.yml index 2edabc78acf1..8478a05d69d5 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-with-should-save-match-returns-OK-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Create-Scanning-Rule-with-should-save-match-returns-OK-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Tue, 26 Aug 2025 20:31:44 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:08 GMT request: body: null headers: @@ -10,16 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[]}}},"meta":{"version":275277,"count_limit":250,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0}} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":277993}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Tue, 26 Aug 2025 20:31:44 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:08 GMT request: body: encoding: UTF-8 @@ -34,20 +32,18 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"18cc2267-f3cc-4c15-917d-d3efb15deb03","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":275278}} - - ' + string: '{"data":{"id":"966a1ab3-056d-4af9-a205-68e570e54c85","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":277994}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Tue, 26 Aug 2025 20:31:44 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:08 GMT request: body: encoding: UTF-8 - string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Create_Scanning_Rule_with_should_save_match_returns_OK_response-1756240304","pattern":"pattern","priority":1,"tags":["sensitive_data:true"],"text_replacement":{"replacement_string":"REDACTED","should_save_match":true,"type":"replacement_string"}},"relationships":{"group":{"data":{"id":"18cc2267-f3cc-4c15-917d-d3efb15deb03","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' + string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Create_Scanning_Rule_with_should_save_match_returns_OK_response-1768828268","pattern":"pattern","priority":1,"tags":["sensitive_data:true"],"text_replacement":{"replacement_string":"REDACTED","should_save_match":true,"type":"replacement_string"}},"relationships":{"group":{"data":{"id":"966a1ab3-056d-4af9-a205-68e570e54c85","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' headers: Accept: - application/json @@ -58,16 +54,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"0e517b8a-04c1-4ae0-b57b-22b8e081190c","attributes":{"name":"Test-Create_Scanning_Rule_with_should_save_match_returns_OK_response-1756240304","namespaces":[],"excluded_namespaces":[],"pattern":"pattern","text_replacement":{"replacement_string":"REDACTED","should_save_match":true,"type":"replacement_string"},"tags":["sensitive_data:true"],"labels":[],"is_enabled":true,"priority":1},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"18cc2267-f3cc-4c15-917d-d3efb15deb03","type":"sensitive_data_scanner_group"}}}},"meta":{"version":275279}} - - ' + string: '{"data":{"id":"55dfd131-7ae1-4021-be59-4e4824eccc6f","type":"sensitive_data_scanner_rule","attributes":{"excluded_namespaces":[],"is_enabled":true,"labels":[],"name":"Test-Create_Scanning_Rule_with_should_save_match_returns_OK_response-1768828268","namespaces":[],"pattern":"pattern","priority":1,"tags":["sensitive_data:true"],"text_replacement":{"type":"replacement_string","replacement_string":"REDACTED","should_save_match":true}},"relationships":{"group":{"data":{"id":"966a1ab3-056d-4af9-a205-68e570e54c85","type":"sensitive_data_scanner_group"}}}},"meta":{"version":277995}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Tue, 26 Aug 2025 20:31:44 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:08 GMT request: body: encoding: UTF-8 @@ -78,20 +72,18 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/0e517b8a-04c1-4ae0-b57b-22b8e081190c + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/55dfd131-7ae1-4021-be59-4e4824eccc6f response: body: encoding: UTF-8 - string: '{"meta":{"version":275280}} - - ' + string: '{"meta":{"version":277996}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Tue, 26 Aug 2025 20:31:44 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:08 GMT request: body: encoding: UTF-8 @@ -102,16 +94,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/18cc2267-f3cc-4c15-917d-d3efb15deb03 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/966a1ab3-056d-4af9-a205-68e570e54c85 response: body: encoding: UTF-8 - string: '{"meta":{"version":275281}} - - ' + string: '{"meta":{"version":277997}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Group-returns-OK-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Group-returns-OK-response.frozen index 505f0d63992f..a788485a28ca 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Group-returns-OK-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Group-returns-OK-response.frozen @@ -1 +1 @@ -2025-05-30T17:17:09.412Z \ No newline at end of file +2026-01-19T13:11:10.959Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Group-returns-OK-response.yml b/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Group-returns-OK-response.yml index ee8332eada7e..603163e0b448 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Group-returns-OK-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Group-returns-OK-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 30 May 2025 17:17:09 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:10 GMT request: body: null headers: @@ -10,105 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274562,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":277997}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:09 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:10 GMT request: body: encoding: UTF-8 @@ -123,16 +32,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"e560ae10-dbbe-48cd-9e89-358707cb287c","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274563}} - - ' + string: '{"data":{"id":"80bca3a7-5ddc-4e3e-a56f-4cefe4352897","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":277998}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:09 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:10 GMT request: body: encoding: UTF-8 @@ -143,20 +50,18 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/e560ae10-dbbe-48cd-9e89-358707cb287c + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/80bca3a7-5ddc-4e3e-a56f-4cefe4352897 response: body: encoding: UTF-8 - string: '{"meta":{"version":274564}} - - ' + string: '{"meta":{"version":277999}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:09 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:10 GMT request: body: encoding: UTF-8 @@ -167,16 +72,15 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/e560ae10-dbbe-48cd-9e89-358707cb287c + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/80bca3a7-5ddc-4e3e-a56f-4cefe4352897 response: body: encoding: UTF-8 - string: '{"errors":["The requested scanning group was not found"]} - - ' + string: '{"errors":[{"status":"404","code":"Not Found","title":"Not Found","detail":"scanning + group could not be found"}]}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 404 message: Not Found diff --git a/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Rule-returns-OK-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Rule-returns-OK-response.frozen index cc12976afe50..d127bf52e6d0 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Rule-returns-OK-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Rule-returns-OK-response.frozen @@ -1 +1 @@ -2025-05-30T17:17:10.839Z \ No newline at end of file +2026-01-19T13:11:12.858Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Rule-returns-OK-response.yml b/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Rule-returns-OK-response.yml index e6a8b4bbd3f4..9148c65641b3 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Rule-returns-OK-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Delete-Scanning-Rule-returns-OK-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 30 May 2025 17:17:10 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:12 GMT request: body: null headers: @@ -10,105 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274564,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":277999}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:10 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:12 GMT request: body: encoding: UTF-8 @@ -123,20 +32,18 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"6543c741-cc7b-44ff-860c-dace29aa5013","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274565}} - - ' + string: '{"data":{"id":"3a1a28eb-b310-4160-a442-3641c9dbc6cd","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":278000}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:10 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:12 GMT request: body: encoding: UTF-8 - string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Delete_Scanning_Rule_returns_OK_response-1748625430","namespaces":["admin.email"],"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"6543c741-cc7b-44ff-860c-dace29aa5013","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' + string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Delete_Scanning_Rule_returns_OK_response-1768828272","namespaces":["admin.email"],"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"3a1a28eb-b310-4160-a442-3641c9dbc6cd","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' headers: Accept: - application/json @@ -147,16 +54,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"219cea0c-9825-4b1f-b0d1-e838ea904b7d","attributes":{"name":"Test-Delete_Scanning_Rule_returns_OK_response-1748625430","namespaces":["admin.email"],"excluded_namespaces":[],"pattern":"pattern","text_replacement":{"type":"none"},"tags":["sensitive_data:true"],"labels":[],"is_enabled":true},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"6543c741-cc7b-44ff-860c-dace29aa5013","type":"sensitive_data_scanner_group"}}}},"meta":{"version":274566}} - - ' + string: '{"data":{"id":"6aed2005-0134-49ec-93f2-5c5e8eeb92d0","type":"sensitive_data_scanner_rule","attributes":{"excluded_namespaces":[],"is_enabled":true,"labels":[],"name":"Test-Delete_Scanning_Rule_returns_OK_response-1768828272","namespaces":["admin.email"],"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"3a1a28eb-b310-4160-a442-3641c9dbc6cd","type":"sensitive_data_scanner_group"}}}},"meta":{"version":278001}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:10 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:12 GMT request: body: encoding: UTF-8 @@ -167,20 +72,18 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/219cea0c-9825-4b1f-b0d1-e838ea904b7d + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/6aed2005-0134-49ec-93f2-5c5e8eeb92d0 response: body: encoding: UTF-8 - string: '{"meta":{"version":274567}} - - ' + string: '{"meta":{"version":278002}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:10 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:12 GMT request: body: encoding: UTF-8 @@ -191,20 +94,19 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/219cea0c-9825-4b1f-b0d1-e838ea904b7d + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/6aed2005-0134-49ec-93f2-5c5e8eeb92d0 response: body: encoding: UTF-8 - string: '{"errors":["The requested scanning rule was not found"]} - - ' + string: '{"errors":[{"status":"404","code":"Not Found","title":"Not Found","detail":"scanning + rule could not be found"}]}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 404 message: Not Found -- recorded_at: Fri, 30 May 2025 17:17:10 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:12 GMT request: body: encoding: UTF-8 @@ -215,16 +117,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/6543c741-cc7b-44ff-860c-dace29aa5013 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/3a1a28eb-b310-4160-a442-3641c9dbc6cd response: body: encoding: UTF-8 - string: '{"meta":{"version":274568}} - - ' + string: '{"meta":{"version":278003}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/List-Scanning-Groups-returns-OK-response.frozen b/cassettes/features/v2/sensitive_data_scanner/List-Scanning-Groups-returns-OK-response.frozen index 579206d5ad9a..29c952c646e7 100644 --- a/cassettes/features/v2/sensitive_data_scanner/List-Scanning-Groups-returns-OK-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/List-Scanning-Groups-returns-OK-response.frozen @@ -1 +1 @@ -2025-05-30T17:17:12.782Z \ No newline at end of file +2026-01-19T13:11:15.597Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/List-Scanning-Groups-returns-OK-response.yml b/cassettes/features/v2/sensitive_data_scanner/List-Scanning-Groups-returns-OK-response.yml index a36824e48f6f..a5b0766b14ce 100644 --- a/cassettes/features/v2/sensitive_data_scanner/List-Scanning-Groups-returns-OK-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/List-Scanning-Groups-returns-OK-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 30 May 2025 17:17:12 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:15 GMT request: body: null headers: @@ -10,105 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274568,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":278003}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:12 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:15 GMT request: body: encoding: UTF-8 @@ -123,16 +32,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"28119817-f6fe-428d-b308-74518e8b9de2","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274569}} - - ' + string: '{"data":{"id":"c0df76e1-ba56-4c93-a655-d97fbca1c35b","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":278004}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:12 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:15 GMT request: body: null headers: @@ -143,105 +50,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"},{"id":"28119817-f6fe-428d-b308-74518e8b9de2","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274569,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},{"id":"28119817-f6fe-428d-b308-74518e8b9de2","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[{"id":"c0df76e1-ba56-4c93-a655-d97fbca1c35b","type":"sensitive_data_scanner_group"}]}},"type":"sensitive_data_scanner_configuration"},"included":[{"attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"id":"c0df76e1-ba56-4c93-a655-d97fbca1c35b","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}},"type":"sensitive_data_scanner_group"}],"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":278004}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:12 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:15 GMT request: body: encoding: UTF-8 @@ -252,16 +68,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/28119817-f6fe-428d-b308-74518e8b9de2 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/c0df76e1-ba56-4c93-a655-d97fbca1c35b response: body: encoding: UTF-8 - string: '{"meta":{"version":274570}} - - ' + string: '{"meta":{"version":278005}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-Bad-Request-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-Bad-Request-response.frozen index 6969cf9e6834..840c910bafa4 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-Bad-Request-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-Bad-Request-response.frozen @@ -1 +1 @@ -2025-05-30T17:17:14.127Z \ No newline at end of file +2026-01-19T13:11:17.545Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-Bad-Request-response.yml b/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-Bad-Request-response.yml index 5de064e3f3c2..8ae370203e0b 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-Bad-Request-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-Bad-Request-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 30 May 2025 17:17:14 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:17 GMT request: body: null headers: @@ -10,105 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274570,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":278005}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:14 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:17 GMT request: body: encoding: UTF-8 @@ -123,20 +32,18 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"4eeaf9f0-4e3c-4850-9a5b-5a596ee634f7","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274571}} - - ' + string: '{"data":{"id":"0558174c-d6af-4846-8954-35785f06837e","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":278006}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:14 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:17 GMT request: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[{"id":"Test-Reorder_Groups_returns_Bad_Request_response-1748625434","type":"sensitive_data_scanner_group"}]}},"type":"sensitive_data_scanner_configuration"},"meta":{}}' + string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[{"id":"Test-Reorder_Groups_returns_Bad_Request_response-1768828277","type":"sensitive_data_scanner_group"}]}},"type":"sensitive_data_scanner_configuration"},"meta":{}}' headers: Accept: - application/json @@ -147,17 +54,15 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"errors":["invalid_argument(Pipelines to reorder do not match current - pipelines)"]} - - ' + string: '{"errors":[{"status":"400","title":"Bad Request","detail":"invalid_argument(Scanning + group IDs to reorder do not match current group IDs)"}]}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 400 message: Bad Request -- recorded_at: Fri, 30 May 2025 17:17:14 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:17 GMT request: body: encoding: UTF-8 @@ -168,16 +73,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/4eeaf9f0-4e3c-4850-9a5b-5a596ee634f7 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/0558174c-d6af-4846-8954-35785f06837e response: body: encoding: UTF-8 - string: '{"meta":{"version":274572}} - - ' + string: '{"meta":{"version":278007}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-OK-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-OK-response.frozen index da1e86a21a17..7740f686d716 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-OK-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-OK-response.frozen @@ -1 +1 @@ -2025-06-02T15:33:38.909Z \ No newline at end of file +2026-01-19T13:11:19.414Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-OK-response.yml b/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-OK-response.yml index 05b137b8d0be..4c4023d5e007 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-OK-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Reorder-Groups-returns-OK-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Mon, 02 Jun 2025 15:33:38 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:19 GMT request: body: null headers: @@ -10,16 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[]}}},"meta":{"version":274826,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0}} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":278007}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Mon, 02 Jun 2025 15:33:38 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:19 GMT request: body: encoding: UTF-8 @@ -34,20 +32,36 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"24716cf9-9589-41fe-bc85-7df26a9483a9","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274827}} - - ' + string: '{"data":{"id":"a796feff-a0cc-4a9f-8c61-16c4d5e44964","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":278008}}' headers: Content-Type: + - application/vnd.api+json + status: + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:19 GMT + request: + body: null + headers: + Accept: - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config + response: + body: + encoding: UTF-8 + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[{"id":"a796feff-a0cc-4a9f-8c61-16c4d5e44964","type":"sensitive_data_scanner_group"}]}},"type":"sensitive_data_scanner_configuration"},"included":[{"attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"id":"a796feff-a0cc-4a9f-8c61-16c4d5e44964","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}},"type":"sensitive_data_scanner_group"}],"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":278008}}' + headers: + Content-Type: + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Mon, 02 Jun 2025 15:33:38 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:19 GMT request: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[{"id":"24716cf9-9589-41fe-bc85-7df26a9483a9","type":"sensitive_data_scanner_group"}]}},"type":"sensitive_data_scanner_configuration"},"meta":{}}' + string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[{"id":"a796feff-a0cc-4a9f-8c61-16c4d5e44964","type":"sensitive_data_scanner_group"}]}},"type":"sensitive_data_scanner_configuration"},"meta":{}}' headers: Accept: - application/json @@ -58,16 +72,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"meta":{"version":274828,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":false,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":0.0}} - - ' + string: '{"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":0,"rule_count_limit":0,"version":278009}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Mon, 02 Jun 2025 15:33:38 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:19 GMT request: body: encoding: UTF-8 @@ -78,16 +90,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/24716cf9-9589-41fe-bc85-7df26a9483a9 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/a796feff-a0cc-4a9f-8c61-16c4d5e44964 response: body: encoding: UTF-8 - string: '{"meta":{"version":274829}} - - ' + string: '{"meta":{"version":278010}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Group-returns-OK-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Group-returns-OK-response.frozen index ae3e7c4c6356..acb225bd527a 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Group-returns-OK-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Group-returns-OK-response.frozen @@ -1 +1 @@ -2025-05-30T17:17:15.446Z \ No newline at end of file +2026-01-19T13:11:21.712Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Group-returns-OK-response.yml b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Group-returns-OK-response.yml index 34dc203364e1..ac3894f8b7b3 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Group-returns-OK-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Group-returns-OK-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 30 May 2025 17:17:15 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:21 GMT request: body: null headers: @@ -10,105 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274572,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":278010}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:15 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:21 GMT request: body: encoding: UTF-8 @@ -123,40 +32,36 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"6274c155-446e-4cae-aae3-dd700ee02952","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274573}} - - ' + string: '{"data":{"id":"1fd9bd81-fd37-4aeb-b194-fd8ba909850b","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":278011}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:15 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:21 GMT request: body: encoding: UTF-8 - string: '{"data":{"attributes":{"filter":{"query":"*"},"is_enabled":false,"name":"Test-Update_Scanning_Group_returns_OK_response-1748625435","product_list":["logs"]},"id":"6274c155-446e-4cae-aae3-dd700ee02952","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}},"type":"sensitive_data_scanner_group"},"meta":{}}' + string: '{"data":{"attributes":{"filter":{"query":"*"},"is_enabled":false,"name":"Test-Update_Scanning_Group_returns_OK_response-1768828281","product_list":["logs"]},"id":"1fd9bd81-fd37-4aeb-b194-fd8ba909850b","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}},"type":"sensitive_data_scanner_group"},"meta":{}}' headers: Accept: - application/json Content-Type: - application/json method: PATCH - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/6274c155-446e-4cae-aae3-dd700ee02952 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/1fd9bd81-fd37-4aeb-b194-fd8ba909850b response: body: encoding: UTF-8 - string: '{"meta":{"version":274574}} - - ' + string: '{"meta":{"version":278012}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:15 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:21 GMT request: body: encoding: UTF-8 @@ -167,16 +72,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/6274c155-446e-4cae-aae3-dd700ee02952 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/1fd9bd81-fd37-4aeb-b194-fd8ba909850b response: body: encoding: UTF-8 - string: '{"meta":{"version":274575}} - - ' + string: '{"meta":{"version":278013}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-Bad-Request-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-Bad-Request-response.frozen index 0a240b3a215a..1d88391dc54e 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-Bad-Request-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-Bad-Request-response.frozen @@ -1 +1 @@ -2025-05-30T17:17:16.805Z \ No newline at end of file +2026-01-19T13:11:23.526Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-Bad-Request-response.yml b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-Bad-Request-response.yml index ca5e74399d0f..ccaa9879bacc 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-Bad-Request-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-Bad-Request-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 30 May 2025 17:17:16 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:23 GMT request: body: null headers: @@ -10,105 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274575,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":278013}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:16 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:23 GMT request: body: encoding: UTF-8 @@ -123,20 +32,18 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"b2dd122b-89cf-489d-af76-f896a34ba958","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274576}} - - ' + string: '{"data":{"id":"87305833-8ff5-46ee-a5ff-53706a123088","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":278014}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:16 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:23 GMT request: body: encoding: UTF-8 - string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Update_Scanning_Rule_returns_Bad_Request_response-1748625436","namespaces":["admin.email"],"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"b2dd122b-89cf-489d-af76-f896a34ba958","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' + string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Update_Scanning_Rule_returns_Bad_Request_response-1768828283","namespaces":["admin.email"],"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"87305833-8ff5-46ee-a5ff-53706a123088","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' headers: Accept: - application/json @@ -147,41 +54,37 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"a2e1ebb2-65a9-4c80-83dd-729e0112de33","attributes":{"name":"Test-Update_Scanning_Rule_returns_Bad_Request_response-1748625436","namespaces":["admin.email"],"excluded_namespaces":[],"pattern":"pattern","text_replacement":{"type":"none"},"tags":["sensitive_data:true"],"labels":[],"is_enabled":true},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"b2dd122b-89cf-489d-af76-f896a34ba958","type":"sensitive_data_scanner_group"}}}},"meta":{"version":274577}} - - ' + string: '{"data":{"id":"d66bec9f-9df8-4142-b437-86d372e52bab","type":"sensitive_data_scanner_rule","attributes":{"excluded_namespaces":[],"is_enabled":true,"labels":[],"name":"Test-Update_Scanning_Rule_returns_Bad_Request_response-1768828283","namespaces":["admin.email"],"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"87305833-8ff5-46ee-a5ff-53706a123088","type":"sensitive_data_scanner_group"}}}},"meta":{"version":278015}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:16 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:23 GMT request: body: encoding: UTF-8 - string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Update_Scanning_Rule_returns_Bad_Request_response-1748625436","pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"b2dd122b-89cf-489d-af76-f896a34ba958","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' + string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Update_Scanning_Rule_returns_Bad_Request_response-1768828283","pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"87305833-8ff5-46ee-a5ff-53706a123088","type":"sensitive_data_scanner_group"}}}},"meta":{}}' headers: Accept: - application/json Content-Type: - application/json method: PATCH - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/a2e1ebb2-65a9-4c80-83dd-729e0112de33 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/d66bec9f-9df8-4142-b437-86d372e52bab response: body: encoding: UTF-8 - string: '{"errors":["input_validation_error(Field ''data.id'' is invalid: field - ''data.id'' is required)"]} - - ' + string: '{"errors":[{"status":"400","title":"Bad Request","detail":"got type + \"\" expected one of \"sensitive_data_scanner_rule\""}]}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 400 message: Bad Request -- recorded_at: Fri, 30 May 2025 17:17:16 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:23 GMT request: body: encoding: UTF-8 @@ -192,20 +95,18 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/a2e1ebb2-65a9-4c80-83dd-729e0112de33 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/d66bec9f-9df8-4142-b437-86d372e52bab response: body: encoding: UTF-8 - string: '{"meta":{"version":274578}} - - ' + string: '{"meta":{"version":278016}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:16 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:23 GMT request: body: encoding: UTF-8 @@ -216,16 +117,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/b2dd122b-89cf-489d-af76-f896a34ba958 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/87305833-8ff5-46ee-a5ff-53706a123088 response: body: encoding: UTF-8 - string: '{"meta":{"version":274579}} - - ' + string: '{"meta":{"version":278017}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-OK-response.frozen b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-OK-response.frozen index 330ab22eeb18..8842dc3c7f3e 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-OK-response.frozen +++ b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-OK-response.frozen @@ -1 +1 @@ -2025-05-30T17:17:18.819Z \ No newline at end of file +2026-01-19T13:11:26.353Z \ No newline at end of file diff --git a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-OK-response.yml b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-OK-response.yml index 45ffa9695c66..1f3d41d9c634 100644 --- a/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-OK-response.yml +++ b/cassettes/features/v2/sensitive_data_scanner/Update-Scanning-Rule-returns-OK-response.yml @@ -1,5 +1,5 @@ http_interactions: -- recorded_at: Fri, 30 May 2025 17:17:18 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:26 GMT request: body: null headers: @@ -10,105 +10,14 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","attributes":{},"type":"sensitive_data_scanner_configuration","relationships":{"groups":{"data":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"},{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","type":"sensitive_data_scanner_group"}]}}},"meta":{"version":274579,"count_limit":100,"group_count_limit":20,"is_pci_compliant":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"has_cascading_enabled":false,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"min_sampling_rate":10.0},"included":[{"id":"xdfyyx1FSzqEaNwOpqhsFw","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"5991e227-d611-4b56-afef-4992b5104755","type":"sensitive_data_scanner_rule"},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","type":"sensitive_data_scanner_rule"},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","type":"sensitive_data_scanner_rule"},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","type":"sensitive_data_scanner_rule"},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","type":"sensitive_data_scanner_rule"},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","type":"sensitive_data_scanner_rule"},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","type":"sensitive_data_scanner_rule"},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","type":"sensitive_data_scanner_rule"},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","type":"sensitive_data_scanner_rule"},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","type":"sensitive_data_scanner_rule"},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","type":"sensitive_data_scanner_rule"},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","type":"sensitive_data_scanner_rule"},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","type":"sensitive_data_scanner_rule"},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","type":"sensitive_data_scanner_rule"},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","type":"sensitive_data_scanner_rule"},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","type":"sensitive_data_scanner_rule"},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","type":"sensitive_data_scanner_rule"}]}}},{"id":"5991e227-d611-4b56-afef-4992b5104755","attributes":{"name":"HTTP - Basic Authentication Header Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:basic_auth"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Authorization header of an HTTP request that uses the Basic authentication - scheme. It specifically looks for the Authorization keyword, followed by the - Basic keyword and a base64-encoded string.\n\nExamples of matching formats:\n- - `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`\n- `Authorization: Basic - Yml0c0FJOmhlbHAgbWU=`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"9d7756e343cefa22a5c098e1092590f806eb5446","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"e28f1169-ba43-46ea-aa9e-a0f97a2fc830","attributes":{"name":"HTTP - Cookie Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:network_and_device_info","sensitive_data:cookie"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - the Set-Cookie header of an HTTP response. It captures the cookie name-value - pairs and any optional attributes that are separated by semicolons.\n\nExamples - of matching formats:\n- `Set-Cookie: sessionid=123456; HttpOnly; Secure`\n- - `Set-Cookie: username=JohnDoe`\n","priority":4,"included_keyword_configuration":{"keywords":["cookie"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"34574e54c3e67a8a26d7070f331d83ae933d2730","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"55318894-77ad-4b18-bc2d-562e388effe8","attributes":{"name":"HTTP(S) - URL Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:url","sensitive_data:http_url"],"labels":["domain:network","compliance:pci","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a HTTP(S) URL.\n\nExamples of matching - formats:\n- `https://www.example.com/questions/3456/my-document?key1=value1&key2=value2`\n- - `http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html`\n- `http://xn--fsqu00a.xn--3lr804guic/`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aLQt_DX_T8S1MaWS82eoNQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"7511ac78-b433-42e0-b291-eac394e1ae06","attributes":{"name":"Canadian - Social Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:canadian_sin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a Canadian Social Insurance Number (SIN), - which is composed of three digits separated by hyphens.\n\nExamples of matching - formats:\n- `123-456-789`\n- `456-789-123`\n","priority":4,"included_keyword_configuration":{"keywords":["canadian","canadian - insurance number","canadian social insurance","insurance number","number","sin","social","social - insurance"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"450239afc250a19799b6c03dc0e16fd6a4b2a1af","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"47edb1c1-c841-48b0-bb84-9909485e1737","attributes":{"name":"Chinese - Identity Card Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_id"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese Identity Card Number format, - which consists of a single non-zero digit, followed by exactly 5 additional - digits, followed by a sequence of 7 to 18 digits. Matches are validated via - a checksum.\n\nExamples of matching formats:\n- `Chinese identity card number: - 320321197408094019`\n- `national id: 320321197408094019`\n","priority":4,"included_keyword_configuration":{"keywords":["national - id","resident identity","identity number","identification number","identity - card number","national identification number"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"4kEyzAP6fUEF83rWsEIZEx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"1b4415eb-6e91-441a-b1bf-2a3cb7b9724b","attributes":{"name":"Chinese - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_passport"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese passport number in a 9-character - format with 1 or 2 letters that can be D,DE,S,SE,G or E, and 7 or 8 digits.\n\nExamples - of matching formats:\n- `E01234567`\n- `G01234567`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","travel - document"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"8Wld3kT1UyCfVGmO3Ok69R","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"442c7cc0-2843-46f3-aedf-a027bcf8a22b","attributes":{"name":"Chinese - Phone Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:chinese_phone_number"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a Chinese phone number in a 11-character - format with the first digit being 1, the second digit being 3, 5, or 8, and - then exactly 9 additional digits.\n\nExamples of matching formats:\n- `18652313817`\n- - `+86 18552313817`\n","priority":4,"included_keyword_configuration":{"keywords":["mobile","phone","cell"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"V7sb5Px24c0n9yPwV72glH","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"dd7b34e8-c1d6-4ab0-bf4f-bb38809a1f43","attributes":{"name":"France - Social Security Number Scanner (INSEE/NIR)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:france_nir"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a France social security number (INSEE/NIR) - in a 9-digit format with optional delimiters after the 3rd and 5th digit. - Matches are validated via a checksum.\n\nExamples of matching formats:\n- - `1-51-02-46102-043-25`\n- `151024610204325`\n","priority":4,"included_keyword_configuration":{"keywords":["social - security","insee","nir"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"QiVm1XhY7GjzrSNrJ5IICB","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"145bbddb-c4ca-49d0-92dd-a7774ceb1eb4","attributes":{"name":"IPv4 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv4_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv4 Address.\n\nExamples of matching - formats:\n- `127.0.0.1`\n- `172.16.254.1`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"aDA3jUjSSLOezHV2y-Rn_w","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"2b2a4801-4f97-49c0-b6a3-e06d2f808c13","attributes":{"name":"IPv6 - Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:ip_address","sensitive_data:ipv6_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing an IPv6 Address.\n\nExamples of matching - formats:\n- `2001:0db8:0000:0000:0000:ff00:0042:8329`\n- `0000:0000:0000:0000:0000:0000:0000:0001`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"s3sEZP5fSTGSPLPS853VeQ","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"175b62d2-fc94-4919-aa35-3d501849885c","attributes":{"name":"Standard - Email Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:email_address","sensitive_data_category:email_address"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing standard email address using an official - top-level domain.\n\nExamples of matching formats:\n- `simple@example.com`\n- - `simple%40example.com`\n- `very.common@example.com`\n- `x@example.com`\n- - `long.email-address-with-hyphens@and.subdomains.example.com`\n- `user.name+tag+sorting@example.com`\n- - `name/surname@example.com`\n- `mailhost!username@example.org`\n- `user%example.com@example.org`\n- - `user-@example.org`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PuXiVTCkTHOtj0Yad1ppsw","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"d75637b3-ef47-46a7-8f8f-1ce99134d827","attributes":{"name":"Standard - MAC Address Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data:mac_address","sensitive_data_category:mac_address"],"labels":["domain:network","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - a sequence of characters representing a MAC address.\n\nExamples of matching - formats:\n- `FF:FF:FF:FF:FF:FF`\n- `FF-FF-FF-FF-FF-FF`\n","priority":4,"included_keyword_configuration":{"keywords":[],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"uRLVpXXTRxmCg4M93hfLiA","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6678e2b9-7b6d-4020-a6a1-e392d5d4e838","attributes":{"name":"UK - National Health Service Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nhs"],"labels":["compliance:gdpr","domain:pii"],"is_enabled":true,"description":"Matches - a sequence of characters representing a UK national health service number - (NHS) in a 10-digit format with optional space delimiters. Matches are validated - via a checksum.\n\nExamples of matching formats:\n- `National Health Number: - 907 784 4449`\n- `NHS: 1234567881`\n","priority":4,"included_keyword_configuration":{"keywords":["national - health number","nhs"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"rJ9DeXT0G7oESwbGWGMW82","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"6837bea8-0c0e-4ee7-bd6c-6371cbca52bb","attributes":{"name":"UK - National Insurance Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:uk_nin"],"labels":["domain:pii","compliance:gdpr"],"is_enabled":true,"description":"Matches - sequence of characters representing a UK National Insurance Number (NIN), - which is composed of two uppercase letters, six digits, and an optional uppercase - letter.\n\nExamples of matching formats:\n- `AB123456C`\n- `XY654321A`\n- - `GH987654`\n","priority":4,"included_keyword_configuration":{"keywords":["insurance","national","ni","nin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"de0899e0cbaaa812bb624cf04c912071012f616d","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"f4fec54d-63c3-4151-8cc0-d925743124ff","attributes":{"name":"US - Individual Taxpayer Identification Number Scanner (ITIN)","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_itin"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US ITIN number in a 9-digit format - with optional delimiters after the 3rd and 5th digit.\n\nExamples of matching - formats:\n- `927 70 5828`\n- `993-77 0690`\n","priority":4,"included_keyword_configuration":{"keywords":["i.t.i.n.","individual - taxpayer","itin"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"eC0YxRYEz27UOrfQ7sM3Bx","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"4724117a-668a-4a97-84e8-9f7d7cac0ab2","attributes":{"name":"US - Passport Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:passport_number"],"labels":["domain:pii","compliance:gdpr","compliance:hipaa"],"is_enabled":true,"description":"Matches - sequence of characters representing a US passport number, which is composed - 9 alphanumeric characters.\n\nExamples of matching formats:\n- `E00007734`\n- - `C03004786`\n","priority":4,"included_keyword_configuration":{"keywords":["passport","passport_"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"d962f7ddb3f55041e39195a60ff79d4814a7c331","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"70fbcc56-415b-42a2-96b0-53958f6024ba","attributes":{"name":"US - Social Security Number Scanner","namespaces":[],"excluded_namespaces":[],"text_replacement":{"type":"none"},"tags":["sensitive_data_category:pii","sensitive_data:us_ssn"],"labels":["domain:pii","compliance:hipaa","compliance:gdpr"],"is_enabled":true,"description":"Matches - a sequence of characters representing a US Social Security number in a 9-digit - format.\n\nExamples of matching formats:\n- `555-12-3456`\n- `456789012`\n","priority":4,"included_keyword_configuration":{"keywords":["ssn","social - security"],"use_recommended_keywords":true,"character_count":30}},"type":"sensitive_data_scanner_rule","relationships":{"standard_pattern":{"data":{"id":"PIIXqwUljp4BaqIHDBBLNn","type":"sensitive_data_scanner_standard_pattern"}},"group":{"data":{"id":"xdfyyx1FSzqEaNwOpqhsFw","type":"sensitive_data_scanner_group"}}}},{"id":"0QvFjxASTxK2VgAIXOgGnQ","attributes":{"name":"my - group","is_enabled":true,"filter":{"query":"*"},"product_list":["logs"],"description":"","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[{"id":"M4PLjvGWR7CMz6XlCjAadA","type":"sensitive_data_scanner_rule"}]}}},{"id":"M4PLjvGWR7CMz6XlCjAadA","attributes":{"name":"tf-TestAccDatadogSensitiveDataScannerRule_DefaultTags-local-1721743568","namespaces":[],"excluded_namespaces":["username"],"pattern":"regex","text_replacement":{"type":"none"},"tags":["sensitive_data:true","default_key:default_value"],"labels":[],"is_enabled":true,"description":"a - description"},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"0QvFjxASTxK2VgAIXOgGnQ","type":"sensitive_data_scanner_group"}}}},{"id":"5a142739-d4a5-4d9e-bc20-a4fd77bb8db0","attributes":{"name":"Thibault - Terraform test","is_enabled":false,"filter":{"query":"service:my-service"},"product_list":["apm"],"description":"A - relevant description","samplings":[]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}}]} - - ' + string: '{"data":{"attributes":{},"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","relationships":{"groups":{"data":[]}},"type":"sensitive_data_scanner_configuration"},"meta":{"count_limit":500,"group_count_limit":20,"has_cascading_enabled":false,"has_highlight_enabled":true,"has_multi_pass_enabled":true,"is_configuration_superseded":false,"is_float_sampling_rate_enabled":false,"is_pci_compliant":false,"min_sampling_rate":10,"rule_count_limit":500,"version":278017}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:18 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:26 GMT request: body: encoding: UTF-8 @@ -123,20 +32,18 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"db67c3ee-db9b-417c-8d62-f2c6fc0f1c4b","attributes":{"name":"my-test-group","is_enabled":false,"filter":{"query":"*"},"product_list":["logs"],"samplings":[{"product":"logs","rate":100.0}]},"type":"sensitive_data_scanner_group","relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":274580}} - - ' + string: '{"data":{"id":"3ad08396-bb28-49b6-bb0b-3743eec0b822","type":"sensitive_data_scanner_group","attributes":{"description":"","filter":{"query":"*"},"is_enabled":false,"name":"my-test-group","product_list":["logs"],"samplings":[{"product":"logs","rate":100}]},"relationships":{"configuration":{"data":{"id":"7957915c634d4dcb581fa154157f5ad9c2947f50be632fb5599862069f4d2d87","type":"sensitive_data_scanner_configuration"}},"rules":{"data":[]}}},"meta":{"version":278018}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:18 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:26 GMT request: body: encoding: UTF-8 - string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Update_Scanning_Rule_returns_OK_response-1748625438","namespaces":["admin.email"],"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"db67c3ee-db9b-417c-8d62-f2c6fc0f1c4b","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' + string: '{"data":{"attributes":{"is_enabled":true,"name":"Test-Update_Scanning_Rule_returns_OK_response-1768828286","namespaces":["admin.email"],"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"3ad08396-bb28-49b6-bb0b-3743eec0b822","type":"sensitive_data_scanner_group"}}},"type":"sensitive_data_scanner_rule"},"meta":{}}' headers: Accept: - application/json @@ -147,41 +54,37 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"data":{"id":"16dbce89-9c13-4924-a4ff-b5d6e1b3ce20","attributes":{"name":"Test-Update_Scanning_Rule_returns_OK_response-1748625438","namespaces":["admin.email"],"excluded_namespaces":[],"pattern":"pattern","text_replacement":{"type":"none"},"tags":["sensitive_data:true"],"labels":[],"is_enabled":true},"type":"sensitive_data_scanner_rule","relationships":{"group":{"data":{"id":"db67c3ee-db9b-417c-8d62-f2c6fc0f1c4b","type":"sensitive_data_scanner_group"}}}},"meta":{"version":274581}} - - ' + string: '{"data":{"id":"ab1051c8-0c7a-4974-b994-4f850b8f0306","type":"sensitive_data_scanner_rule","attributes":{"excluded_namespaces":[],"is_enabled":true,"labels":[],"name":"Test-Update_Scanning_Rule_returns_OK_response-1768828286","namespaces":["admin.email"],"pattern":"pattern","tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"relationships":{"group":{"data":{"id":"3ad08396-bb28-49b6-bb0b-3743eec0b822","type":"sensitive_data_scanner_group"}}}},"meta":{"version":278019}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: - code: 200 - message: OK -- recorded_at: Fri, 30 May 2025 17:17:18 GMT + code: 201 + message: Created +- recorded_at: Mon, 19 Jan 2026 13:11:26 GMT request: body: encoding: UTF-8 string: '{"data":{"attributes":{"included_keyword_configuration":{"character_count":35,"keywords":["credit - card","cc"]},"is_enabled":true,"name":"Test-Update_Scanning_Rule_returns_OK_response-1748625438","pattern":"pattern","priority":5,"tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"id":"16dbce89-9c13-4924-a4ff-b5d6e1b3ce20","type":"sensitive_data_scanner_rule"},"meta":{}}' + card","cc"]},"is_enabled":true,"name":"Test-Update_Scanning_Rule_returns_OK_response-1768828286","pattern":"pattern","priority":5,"tags":["sensitive_data:true"],"text_replacement":{"type":"none"}},"id":"ab1051c8-0c7a-4974-b994-4f850b8f0306","type":"sensitive_data_scanner_rule"},"meta":{}}' headers: Accept: - application/json Content-Type: - application/json method: PATCH - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/16dbce89-9c13-4924-a4ff-b5d6e1b3ce20 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/ab1051c8-0c7a-4974-b994-4f850b8f0306 response: body: encoding: UTF-8 - string: '{"meta":{"version":274582}} - - ' + string: '{"meta":{"version":278020}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:18 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:26 GMT request: body: encoding: UTF-8 @@ -192,20 +95,18 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/16dbce89-9c13-4924-a4ff-b5d6e1b3ce20 + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/rules/ab1051c8-0c7a-4974-b994-4f850b8f0306 response: body: encoding: UTF-8 - string: '{"meta":{"version":274583}} - - ' + string: '{"meta":{"version":278021}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK -- recorded_at: Fri, 30 May 2025 17:17:18 GMT +- recorded_at: Mon, 19 Jan 2026 13:11:26 GMT request: body: encoding: UTF-8 @@ -216,16 +117,14 @@ http_interactions: Content-Type: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/db67c3ee-db9b-417c-8d62-f2c6fc0f1c4b + uri: https://api.datadoghq.com/api/v2/sensitive-data-scanner/config/groups/3ad08396-bb28-49b6-bb0b-3743eec0b822 response: body: encoding: UTF-8 - string: '{"meta":{"version":274584}} - - ' + string: '{"meta":{"version":278022}}' headers: Content-Type: - - application/json + - application/vnd.api+json status: code: 200 message: OK diff --git a/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions_1315707136.rb b/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions_1315707136.rb deleted file mode 100644 index e4d8b50b439c..000000000000 --- a/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions_1315707136.rb +++ /dev/null @@ -1,15 +0,0 @@ -# Get all suppression rules returns "OK" response with sort ascending - -require "datadog_api_client" -api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new - -# there is a valid "suppression" in the system -SUPPRESSION_DATA_ID = ENV["SUPPRESSION_DATA_ID"] - -# there is a valid "suppression2" in the system -SUPPRESSION2_DATA_ID = ENV["SUPPRESSION2_DATA_ID"] -opts = { - sort: SecurityMonitoringSuppressionSort::NAME, - query: "id:3dd-0uc-h1s OR id:886e6c3e-e543-049c-ee1b-56a1110295c0", -} -p api_instance.list_security_monitoring_suppressions(opts) diff --git a/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions_1741429096.rb b/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions_1741429096.rb deleted file mode 100644 index ea5cdb65b906..000000000000 --- a/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions_1741429096.rb +++ /dev/null @@ -1,15 +0,0 @@ -# Get all suppression rules returns "OK" response with sort descending - -require "datadog_api_client" -api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new - -# there is a valid "suppression" in the system -SUPPRESSION_DATA_ID = ENV["SUPPRESSION_DATA_ID"] - -# there is a valid "suppression2" in the system -SUPPRESSION2_DATA_ID = ENV["SUPPRESSION2_DATA_ID"] -opts = { - sort: SecurityMonitoringSuppressionSort::NAME_DESCENDING, - query: "id:3dd-0uc-h1s OR id:886e6c3e-e543-049c-ee1b-56a1110295c0", -} -p api_instance.list_security_monitoring_suppressions(opts) diff --git a/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions_3985905558.rb b/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions_3985905558.rb deleted file mode 100644 index 5e38d9bb5715..000000000000 --- a/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions_3985905558.rb +++ /dev/null @@ -1,16 +0,0 @@ -# Get all suppression rules returns "OK" response with pagination - -require "datadog_api_client" -api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new - -# there is a valid "suppression" in the system -SUPPRESSION_DATA_ID = ENV["SUPPRESSION_DATA_ID"] - -# there is a valid "suppression2" in the system -SUPPRESSION2_DATA_ID = ENV["SUPPRESSION2_DATA_ID"] -opts = { - page_size: 1, - page_number: 0, - query: "id:3dd-0uc-h1s OR id:886e6c3e-e543-049c-ee1b-56a1110295c0", -} -p api_instance.list_security_monitoring_suppressions(opts) diff --git a/features/scenarios_model_mapping.rb b/features/scenarios_model_mapping.rb index bb421b0260f2..a0f480622dbc 100644 --- a/features/scenarios_model_mapping.rb +++ b/features/scenarios_model_mapping.rb @@ -1559,9 +1559,6 @@ }, "v2.ListSecurityMonitoringSuppressions" => { "query" => "String", - "sort" => "SecurityMonitoringSuppressionSort", - "page_size" => "Integer", - "page_number" => "Integer", }, "v2.CreateSecurityMonitoringSuppression" => { "body" => "SecurityMonitoringSuppressionCreateRequest", diff --git a/features/v2/given.json b/features/v2/given.json index 9d69fd33f222..c717223ca711 100644 --- a/features/v2/given.json +++ b/features/v2/given.json @@ -1035,7 +1035,7 @@ "parameters": [ { "name": "body", - "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}" + "value": "{\n \"data\": {\n \"type\": \"suppressions\",\n \"attributes\": {\n \"enabled\": true,\n \"name\": \"{{ 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", @@ -1043,18 +1043,6 @@ "tag": "Security Monitoring", "operationId": "CreateSecurityMonitoringSuppression" }, - { - "parameters": [ - { - "name": "body", - "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", - "key": "suppression2", - "tag": "Security Monitoring", - "operationId": "CreateSecurityMonitoringSuppression" - }, { "parameters": [ { diff --git a/features/v2/security_monitoring.feature b/features/v2/security_monitoring.feature index 60e9df68bb9c..2a6c599c3060 100644 --- a/features/v2/security_monitoring.feature +++ b/features/v2/security_monitoring.feature @@ -1124,40 +1124,6 @@ Feature: Security Monitoring When the request is sent Then the response status is 200 OK - @team:DataDog/k9-cloud-security-platform - Scenario: Get all suppression rules returns "OK" response with pagination - Given new "ListSecurityMonitoringSuppressions" request - And there is a valid "suppression" in the system - And there is a valid "suppression2" in the system - And request contains "page[size]" parameter with value 1 - And request contains "page[number]" parameter with value 0 - 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" has length 1 - - @team:DataDog/k9-cloud-security-platform - Scenario: Get all suppression rules returns "OK" response with sort ascending - Given new "ListSecurityMonitoringSuppressions" request - And there is a valid "suppression" in the system - And there is a valid "suppression2" in the system - And request contains "sort" parameter with value "name" - 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 }}" - - @team:DataDog/k9-cloud-security-platform - Scenario: Get all suppression rules returns "OK" response with sort descending - Given new "ListSecurityMonitoringSuppressions" request - And there is a valid "suppression" in the system - And there is a valid "suppression2" in the system - And request contains "sort" parameter with value "-name" - 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 }}" - @skip @team:DataDog/k9-cloud-security-platform Scenario: Get critical assets affecting a specific rule returns "Not Found" response Given new "GetCriticalAssetsAffectingRule" request diff --git a/features/v2/sensitive_data_scanner.feature b/features/v2/sensitive_data_scanner.feature index 4516e161032d..d4b0d41f8279 100644 --- a/features/v2/sensitive_data_scanner.feature +++ b/features/v2/sensitive_data_scanner.feature @@ -23,7 +23,7 @@ Feature: Sensitive Data Scanner And new "CreateScanningGroup" request And body with value {"meta":{},"data":{"type":"sensitive_data_scanner_group","attributes":{"name":"{{ unique }}","is_enabled":false,"product_list":["logs"],"filter":{"query":"*"}},"relationships":{"configuration":{"data":{"type":"sensitive_data_scanner_configuration","id":"{{ configuration.data.id }}"}},"rules":{"data":[]}}}} When the request is sent - Then the response status is 200 OK + Then the response status is 201 OK And the response "data.type" is equal to "sensitive_data_scanner_group" And the response "data.attributes.name" is equal to "{{ unique }}" @@ -43,7 +43,7 @@ Feature: Sensitive Data Scanner And new "CreateScanningRule" request And body with value {"meta":{},"data":{"type":"sensitive_data_scanner_rule","attributes":{"name":"{{ unique }}","pattern":"pattern", "namespaces": ["admin"], "excluded_namespaces": ["admin.name"], "text_replacement":{"type":"none"},"tags":["sensitive_data:true"],"is_enabled":true,"priority":1,"included_keyword_configuration":{"keywords":["credit card"],"character_count":35}},"relationships":{"group":{"data":{"type":"{{ group.data.type }}","id":"{{ group.data.id }}"}}}}} When the request is sent - Then the response status is 200 OK + Then the response status is 201 OK And the response "data.type" is equal to "sensitive_data_scanner_rule" And the response "data.attributes.name" is equal to "{{ unique }}" And the response "data.attributes.pattern" is equal to "pattern" @@ -57,7 +57,7 @@ Feature: Sensitive Data Scanner And new "CreateScanningRule" request And body with value {"meta":{},"data":{"type":"sensitive_data_scanner_rule","attributes":{"name":"{{ unique }}","pattern":"pattern","text_replacement":{"type":"replacement_string","replacement_string":"REDACTED","should_save_match":true},"tags":["sensitive_data:true"],"is_enabled":true,"priority":1},"relationships":{"group":{"data":{"type":"{{ group.data.type }}","id":"{{ group.data.id }}"}}}}} When the request is sent - Then the response status is 200 OK + Then the response status is 201 OK And the response "data.type" is equal to "sensitive_data_scanner_rule" And the response "data.attributes.name" is equal to "{{ unique }}" @@ -154,6 +154,7 @@ Feature: Sensitive Data Scanner Scenario: Reorder Groups returns "OK" response Given a valid "configuration" in the system And there is a valid "scanning_group" in the system + And a valid "configuration" in the system And new "ReorderScanningGroups" request And body with value {"data": {"relationships": {"groups": {"data": [{"type": "sensitive_data_scanner_group", "id": "{{ group.data.id }}"}]}}, "type": "sensitive_data_scanner_configuration", "id": "{{ configuration.data.id }}"}, "meta": {}} When the request is sent @@ -192,7 +193,7 @@ Feature: Sensitive Data Scanner And the "scanning_group" has a "scanning_rule" And new "UpdateScanningRule" request And request contains "rule_id" parameter from "rule.data.id" - And body with value {"meta":{},"data":{"type":"sensitive_data_scanner_rule","attributes":{"name":"{{ unique }}","pattern":"pattern","text_replacement":{"type":"none"},"tags":["sensitive_data:true"],"is_enabled":true},"relationships":{"group":{"data":{"type":"{{ group.data.type }}","id":"{{ group.data.id }}"}}}}} + And body with value {"meta":{},"data":{"attributes":{"name":"{{ unique }}","pattern":"pattern","text_replacement":{"type":"none"},"tags":["sensitive_data:true"],"is_enabled":true},"relationships":{"group":{"data":{"type":"{{ group.data.type }}","id":"{{ group.data.id }}"}}}}} When the request is sent Then the response status is 400 Bad Request diff --git a/lib/datadog_api_client/inflector.rb b/lib/datadog_api_client/inflector.rb index eab18ec23f59..76c337d245ca 100644 --- a/lib/datadog_api_client/inflector.rb +++ b/lib/datadog_api_client/inflector.rb @@ -4066,7 +4066,6 @@ def overrides "v2.security_monitoring_filter" => "SecurityMonitoringFilter", "v2.security_monitoring_filter_action" => "SecurityMonitoringFilterAction", "v2.security_monitoring_list_rules_response" => "SecurityMonitoringListRulesResponse", - "v2.security_monitoring_paginated_suppressions_response" => "SecurityMonitoringPaginatedSuppressionsResponse", "v2.security_monitoring_reference_table" => "SecurityMonitoringReferenceTable", "v2.security_monitoring_rule_anomaly_detection_options" => "SecurityMonitoringRuleAnomalyDetectionOptions", "v2.security_monitoring_rule_anomaly_detection_options_bucket_duration" => "SecurityMonitoringRuleAnomalyDetectionOptionsBucketDuration", @@ -4157,9 +4156,6 @@ def overrides "v2.security_monitoring_suppression_create_data" => "SecurityMonitoringSuppressionCreateData", "v2.security_monitoring_suppression_create_request" => "SecurityMonitoringSuppressionCreateRequest", "v2.security_monitoring_suppression_response" => "SecurityMonitoringSuppressionResponse", - "v2.security_monitoring_suppressions_meta" => "SecurityMonitoringSuppressionsMeta", - "v2.security_monitoring_suppression_sort" => "SecurityMonitoringSuppressionSort", - "v2.security_monitoring_suppressions_page_meta" => "SecurityMonitoringSuppressionsPageMeta", "v2.security_monitoring_suppressions_response" => "SecurityMonitoringSuppressionsResponse", "v2.security_monitoring_suppression_type" => "SecurityMonitoringSuppressionType", "v2.security_monitoring_suppression_update_attributes" => "SecurityMonitoringSuppressionUpdateAttributes", diff --git a/lib/datadog_api_client/v2/api/security_monitoring_api.rb b/lib/datadog_api_client/v2/api/security_monitoring_api.rb index a62476064c5c..f8bc15c5bccf 100644 --- a/lib/datadog_api_client/v2/api/security_monitoring_api.rb +++ b/lib/datadog_api_client/v2/api/security_monitoring_api.rb @@ -4384,28 +4384,18 @@ def list_security_monitoring_suppressions(opts = {}) # # @param opts [Hash] the optional parameters # @option opts [String] :query Query string. - # @option opts [SecurityMonitoringSuppressionSort] :sort Attribute used to sort the list of suppression rules. Prefix with `-` to sort in descending order. - # @option opts [Integer] :page_size Size for a given page. Use `-1` to return all items. - # @option opts [Integer] :page_number Specific page number to return. - # @return [Array<(SecurityMonitoringPaginatedSuppressionsResponse, Integer, Hash)>] SecurityMonitoringPaginatedSuppressionsResponse data, response status code and response headers + # @return [Array<(SecurityMonitoringSuppressionsResponse, Integer, Hash)>] SecurityMonitoringSuppressionsResponse data, response status code and response headers def list_security_monitoring_suppressions_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.list_security_monitoring_suppressions ...' end - allowable_values = ['name', 'start_date', 'expiration_date', 'update_date', 'enabled', '-name', '-start_date', '-expiration_date', '-update_date', '-enabled'] - if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort']) - fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}" - end # resource path local_var_path = '/api/v2/security_monitoring/configuration/suppressions' # query parameters query_params = opts[:query_params] || {} query_params[:'query'] = opts[:'query'] if !opts[:'query'].nil? - query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? - query_params[:'page[size]'] = opts[:'page_size'] if !opts[:'page_size'].nil? - query_params[:'page[number]'] = opts[:'page_number'] if !opts[:'page_number'].nil? # header parameters header_params = opts[:header_params] || {} @@ -4419,7 +4409,7 @@ def list_security_monitoring_suppressions_with_http_info(opts = {}) post_body = opts[:debug_body] # return_type - return_type = opts[:debug_return_type] || 'SecurityMonitoringPaginatedSuppressionsResponse' + return_type = opts[:debug_return_type] || 'SecurityMonitoringSuppressionsResponse' # auth_names auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ] diff --git a/lib/datadog_api_client/v2/models/security_monitoring_paginated_suppressions_response.rb b/lib/datadog_api_client/v2/models/security_monitoring_paginated_suppressions_response.rb deleted file mode 100644 index 15545aed3c6e..000000000000 --- a/lib/datadog_api_client/v2/models/security_monitoring_paginated_suppressions_response.rb +++ /dev/null @@ -1,117 +0,0 @@ -=begin -#Datadog API V2 Collection - -#Collection of all Datadog Public endpoints. - -The version of the OpenAPI document: 1.0 -Contact: support@datadoghq.com -Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator - - 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 2020-Present Datadog, Inc. - -=end - -require 'date' -require 'time' - -module DatadogAPIClient::V2 - # Response object containing the available suppression rules with pagination metadata. - class SecurityMonitoringPaginatedSuppressionsResponse - include BaseGenericModel - - # A list of suppressions objects. - attr_accessor :data - - # Metadata for the suppression list response. - attr_accessor :meta - - attr_accessor :additional_properties - - # Attribute mapping from ruby-style variable name to JSON key. - # @!visibility private - def self.attribute_map - { - :'data' => :'data', - :'meta' => :'meta' - } - end - - # Attribute type mapping. - # @!visibility private - def self.openapi_types - { - :'data' => :'Array', - :'meta' => :'SecurityMonitoringSuppressionsMeta' - } - end - - # Initializes the object - # @param attributes [Hash] Model attributes in the form of hash - # @!visibility private - def initialize(attributes = {}) - if (!attributes.is_a?(Hash)) - fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SecurityMonitoringPaginatedSuppressionsResponse` initialize method" - end - - self.additional_properties = {} - # check to see if the attribute exists and convert string to symbol for hash key - attributes = attributes.each_with_object({}) { |(k, v), h| - if (!self.class.attribute_map.key?(k.to_sym)) - self.additional_properties[k.to_sym] = v - else - h[k.to_sym] = v - end - } - - if attributes.key?(:'data') - if (value = attributes[:'data']).is_a?(Array) - self.data = value - end - end - - if attributes.key?(:'meta') - self.meta = attributes[:'meta'] - end - end - - # Returns the object in the form of hash, with additionalProperties support. - # @return [Hash] Returns the object in the form of hash - # @!visibility private - def to_hash - hash = {} - self.class.attribute_map.each_pair do |attr, param| - value = self.send(attr) - if value.nil? - is_nullable = self.class.openapi_nullable.include?(attr) - next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) - end - - hash[param] = _to_hash(value) - end - self.additional_properties.each_pair do |attr, value| - hash[attr] = value - end - hash - end - - # Checks equality by comparing each attribute. - # @param o [Object] Object to be compared - # @!visibility private - def ==(o) - return true if self.equal?(o) - self.class == o.class && - data == o.data && - meta == o.meta && - additional_properties == o.additional_properties - end - - # Calculates hash code according to all attributes. - # @return [Integer] Hash code - # @!visibility private - def hash - [data, meta, additional_properties].hash - end - end -end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_suppression_sort.rb b/lib/datadog_api_client/v2/models/security_monitoring_suppression_sort.rb deleted file mode 100644 index ebcf5ce84f5e..000000000000 --- a/lib/datadog_api_client/v2/models/security_monitoring_suppression_sort.rb +++ /dev/null @@ -1,35 +0,0 @@ -=begin -#Datadog API V2 Collection - -#Collection of all Datadog Public endpoints. - -The version of the OpenAPI document: 1.0 -Contact: support@datadoghq.com -Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator - - 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 2020-Present Datadog, Inc. - -=end - -require 'date' -require 'time' - -module DatadogAPIClient::V2 - # The sort parameters used for querying suppression rules. - class SecurityMonitoringSuppressionSort - include BaseEnumModel - - NAME = "name".freeze - START_DATE = "start_date".freeze - EXPIRATION_DATE = "expiration_date".freeze - UPDATE_DATE = "update_date".freeze - ENABLED = "enabled".freeze - NAME_DESCENDING = "-name".freeze - START_DATE_DESCENDING = "-start_date".freeze - EXPIRATION_DATE_DESCENDING = "-expiration_date".freeze - UPDATE_DATE_DESCENDING = "-update_date".freeze - ENABLED_DESCENDING = "-enabled".freeze - end -end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_suppressions_meta.rb b/lib/datadog_api_client/v2/models/security_monitoring_suppressions_meta.rb deleted file mode 100644 index 170b6a914c8a..000000000000 --- a/lib/datadog_api_client/v2/models/security_monitoring_suppressions_meta.rb +++ /dev/null @@ -1,105 +0,0 @@ -=begin -#Datadog API V2 Collection - -#Collection of all Datadog Public endpoints. - -The version of the OpenAPI document: 1.0 -Contact: support@datadoghq.com -Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator - - 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 2020-Present Datadog, Inc. - -=end - -require 'date' -require 'time' - -module DatadogAPIClient::V2 - # Metadata for the suppression list response. - class SecurityMonitoringSuppressionsMeta - include BaseGenericModel - - # Pagination metadata. - attr_accessor :page - - attr_accessor :additional_properties - - # Attribute mapping from ruby-style variable name to JSON key. - # @!visibility private - def self.attribute_map - { - :'page' => :'page' - } - end - - # Attribute type mapping. - # @!visibility private - def self.openapi_types - { - :'page' => :'SecurityMonitoringSuppressionsPageMeta' - } - end - - # Initializes the object - # @param attributes [Hash] Model attributes in the form of hash - # @!visibility private - def initialize(attributes = {}) - if (!attributes.is_a?(Hash)) - fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SecurityMonitoringSuppressionsMeta` initialize method" - end - - self.additional_properties = {} - # check to see if the attribute exists and convert string to symbol for hash key - attributes = attributes.each_with_object({}) { |(k, v), h| - if (!self.class.attribute_map.key?(k.to_sym)) - self.additional_properties[k.to_sym] = v - else - h[k.to_sym] = v - end - } - - if attributes.key?(:'page') - self.page = attributes[:'page'] - end - end - - # Returns the object in the form of hash, with additionalProperties support. - # @return [Hash] Returns the object in the form of hash - # @!visibility private - def to_hash - hash = {} - self.class.attribute_map.each_pair do |attr, param| - value = self.send(attr) - if value.nil? - is_nullable = self.class.openapi_nullable.include?(attr) - next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) - end - - hash[param] = _to_hash(value) - end - self.additional_properties.each_pair do |attr, value| - hash[attr] = value - end - hash - end - - # Checks equality by comparing each attribute. - # @param o [Object] Object to be compared - # @!visibility private - def ==(o) - return true if self.equal?(o) - self.class == o.class && - page == o.page && - additional_properties == o.additional_properties - end - - # Calculates hash code according to all attributes. - # @return [Integer] Hash code - # @!visibility private - def hash - [page, additional_properties].hash - end - end -end diff --git a/lib/datadog_api_client/v2/models/security_monitoring_suppressions_page_meta.rb b/lib/datadog_api_client/v2/models/security_monitoring_suppressions_page_meta.rb deleted file mode 100644 index 35152ade3c36..000000000000 --- a/lib/datadog_api_client/v2/models/security_monitoring_suppressions_page_meta.rb +++ /dev/null @@ -1,125 +0,0 @@ -=begin -#Datadog API V2 Collection - -#Collection of all Datadog Public endpoints. - -The version of the OpenAPI document: 1.0 -Contact: support@datadoghq.com -Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator - - 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 2020-Present Datadog, Inc. - -=end - -require 'date' -require 'time' - -module DatadogAPIClient::V2 - # Pagination metadata. - class SecurityMonitoringSuppressionsPageMeta - include BaseGenericModel - - # Current page number. - attr_accessor :page_number - - # Current page size. - attr_accessor :page_size - - # Total count of suppressions. - attr_accessor :total_count - - attr_accessor :additional_properties - - # Attribute mapping from ruby-style variable name to JSON key. - # @!visibility private - def self.attribute_map - { - :'page_number' => :'pageNumber', - :'page_size' => :'pageSize', - :'total_count' => :'totalCount' - } - end - - # Attribute type mapping. - # @!visibility private - def self.openapi_types - { - :'page_number' => :'Integer', - :'page_size' => :'Integer', - :'total_count' => :'Integer' - } - end - - # Initializes the object - # @param attributes [Hash] Model attributes in the form of hash - # @!visibility private - def initialize(attributes = {}) - if (!attributes.is_a?(Hash)) - fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SecurityMonitoringSuppressionsPageMeta` initialize method" - end - - self.additional_properties = {} - # check to see if the attribute exists and convert string to symbol for hash key - attributes = attributes.each_with_object({}) { |(k, v), h| - if (!self.class.attribute_map.key?(k.to_sym)) - self.additional_properties[k.to_sym] = v - else - h[k.to_sym] = v - end - } - - if attributes.key?(:'page_number') - self.page_number = attributes[:'page_number'] - end - - if attributes.key?(:'page_size') - self.page_size = attributes[:'page_size'] - end - - if attributes.key?(:'total_count') - self.total_count = attributes[:'total_count'] - end - end - - # Returns the object in the form of hash, with additionalProperties support. - # @return [Hash] Returns the object in the form of hash - # @!visibility private - def to_hash - hash = {} - self.class.attribute_map.each_pair do |attr, param| - value = self.send(attr) - if value.nil? - is_nullable = self.class.openapi_nullable.include?(attr) - next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) - end - - hash[param] = _to_hash(value) - end - self.additional_properties.each_pair do |attr, value| - hash[attr] = value - end - hash - end - - # Checks equality by comparing each attribute. - # @param o [Object] Object to be compared - # @!visibility private - def ==(o) - return true if self.equal?(o) - self.class == o.class && - page_number == o.page_number && - page_size == o.page_size && - total_count == o.total_count && - additional_properties == o.additional_properties - end - - # Calculates hash code according to all attributes. - # @return [Integer] Hash code - # @!visibility private - def hash - [page_number, page_size, total_count, additional_properties].hash - end - end -end