DELETE https://api.ap1.datadoghq.com/api/v2/security_monitoring/rules/bulk_delete https://api.ap2.datadoghq.com/api/v2/security_monitoring/rules/bulk_delete https://api.datadoghq.eu/api/v2/security_monitoring/rules/bulk_delete https://api.ddog-gov.com/api/v2/security_monitoring/rules/bulk_delete https://api.us2.ddog-gov.com/api/v2/security_monitoring/rules/bulk_delete https://api.datadoghq.com/api/v2/security_monitoring/rules/bulk_delete https://api.us3.datadoghq.com/api/v2/security_monitoring/rules/bulk_delete https://api.us5.datadoghq.com/api/v2/security_monitoring/rules/bulk_delete
Overview Delete multiple security monitoring rules in a single request. Default rules cannot be deleted.
This endpoint requires the security_monitoring_rules_write permission.
OAuth apps require the security_monitoring_rules_write authorization scope to access this endpoint.
Request Body Data (required)
Expand All
Data for bulk deleting security monitoring rules.
Attributes for bulk deleting security monitoring rules.
List of rule IDs to delete.
The resource type for a bulk delete request.
Allowed enum values: bulk_delete_rules
{
"data" : {
"attributes" : {
"ruleIds" : [
"abc-000-u7q" ,
"abc-000-7dd"
]
},
"type" : "bulk_delete_rules"
}
} Response OK
Response for bulk deleting security monitoring rules.
Expand All
List of successfully deleted rule IDs.
List of rule IDs that could not be deleted.
{
"deletedRules" : [],
"failedRules" : []
} Bad Request
{
"errors" : [
"Bad Request"
]
} Not Authorized
{
"errors" : [
"Bad Request"
]
} Not Found
{
"errors" : [
"Bad Request"
]
} Too many requests
{
"errors" : [
"Bad Request"
]
} Code Example Copy
## default
#
# Curl command curl -X DELETE "https://api.ap1.datadoghq.com "https://api.ap2.datadoghq.com "https://api.datadoghq.eu "https://api.ddog-gov.com "https://api.us2.ddog-gov.com "https://api.datadoghq.com "https://api.us3.datadoghq.com "https://api.us5.datadoghq.com /api/v2/security_monitoring/rules/bulk_delete " \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "DD-API-KEY: ${DD_API_KEY} " \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY} " \
-d @- << EOF
{
"data": {
"attributes": {
"ruleIds": [
"abc-000-u7q",
"abc-000-7dd"
]
},
"type": "bulk_delete_rules"
}
}
EOF
"""
Bulk delete security monitoring rules returns "OK" response
"""
from datadog_api_client import ApiClient , Configuration
from datadog_api_client.v2.api.security_monitoring_api import SecurityMonitoringApi
from datadog_api_client.v2.model.security_monitoring_rule_bulk_delete_attributes import (
SecurityMonitoringRuleBulkDeleteAttributes ,
)
from datadog_api_client.v2.model.security_monitoring_rule_bulk_delete_data import SecurityMonitoringRuleBulkDeleteData
from datadog_api_client.v2.model.security_monitoring_rule_bulk_delete_payload import (
SecurityMonitoringRuleBulkDeletePayload ,
)
from datadog_api_client.v2.model.security_monitoring_rule_bulk_delete_request_data_type import (
SecurityMonitoringRuleBulkDeleteRequestDataType ,
)
body = SecurityMonitoringRuleBulkDeletePayload (
data = SecurityMonitoringRuleBulkDeleteData (
attributes = SecurityMonitoringRuleBulkDeleteAttributes (
rule_ids = [
"abc-000-u7q" ,
"abc-000-7dd" ,
],
),
type = SecurityMonitoringRuleBulkDeleteRequestDataType . BULK_DELETE_RULES ,
),
)
configuration = Configuration ()
with ApiClient ( configuration ) as api_client :
api_instance = SecurityMonitoringApi ( api_client )
response = api_instance . bulk_delete_security_monitoring_rules ( body = body )
print ( response )
Instructions First install the library and its dependencies and then save the example to example.py and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" python3 "example.py"
# Bulk delete security monitoring rules returns "OK" response
require "datadog_api_client"
api_instance = DatadogAPIClient :: V2 :: SecurityMonitoringAPI . new
body = DatadogAPIClient :: V2 :: SecurityMonitoringRuleBulkDeletePayload . new ({
data : DatadogAPIClient :: V2 :: SecurityMonitoringRuleBulkDeleteData . new ({
attributes : DatadogAPIClient :: V2 :: SecurityMonitoringRuleBulkDeleteAttributes . new ({
rule_ids : [
"abc-000-u7q" ,
"abc-000-7dd" ,
] ,
}),
type : DatadogAPIClient :: V2 :: SecurityMonitoringRuleBulkDeleteRequestDataType :: BULK_DELETE_RULES ,
}),
})
p api_instance . bulk_delete_security_monitoring_rules ( body )
Instructions First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" rb "example.rb"
// Bulk delete security monitoring rules returns "OK" response
package main
import (
"context"
"encoding/json"
"fmt"
"os"
"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
)
func main () {
body := datadogV2 . SecurityMonitoringRuleBulkDeletePayload {
Data : datadogV2 . SecurityMonitoringRuleBulkDeleteData {
Attributes : datadogV2 . SecurityMonitoringRuleBulkDeleteAttributes {
RuleIds : [] string {
"abc-000-u7q" ,
"abc-000-7dd" ,
},
},
Type : datadogV2 . SECURITYMONITORINGRULEBULKDELETEREQUESTDATATYPE_BULK_DELETE_RULES ,
},
}
ctx := datadog . NewDefaultContext ( context . Background ())
configuration := datadog . NewConfiguration ()
apiClient := datadog . NewAPIClient ( configuration )
api := datadogV2 . NewSecurityMonitoringApi ( apiClient )
resp , r , err := api . BulkDeleteSecurityMonitoringRules ( ctx , body )
if err != nil {
fmt . Fprintf ( os . Stderr , "Error when calling `SecurityMonitoringApi.BulkDeleteSecurityMonitoringRules`: %v\n" , err )
fmt . Fprintf ( os . Stderr , "Full HTTP response: %v\n" , r )
}
responseContent , _ := json . MarshalIndent ( resp , "" , " " )
fmt . Fprintf ( os . Stdout , "Response from `SecurityMonitoringApi.BulkDeleteSecurityMonitoringRules`:\n%s\n" , responseContent )
}
Instructions First install the library and its dependencies and then save the example to main.go and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" go run "main.go"
// Bulk delete security monitoring rules returns "OK" response
import com.datadog.api.client.ApiClient ;
import com.datadog.api.client.ApiException ;
import com.datadog.api.client.v2.api.SecurityMonitoringApi ;
import com.datadog.api.client.v2.model.SecurityMonitoringRuleBulkDeleteAttributes ;
import com.datadog.api.client.v2.model.SecurityMonitoringRuleBulkDeleteData ;
import com.datadog.api.client.v2.model.SecurityMonitoringRuleBulkDeletePayload ;
import com.datadog.api.client.v2.model.SecurityMonitoringRuleBulkDeleteRequestDataType ;
import com.datadog.api.client.v2.model.SecurityMonitoringRuleBulkDeleteResponse ;
import java.util.Arrays ;
public class Example {
public static void main ( String [] args ) {
ApiClient defaultClient = ApiClient . getDefaultApiClient ();
SecurityMonitoringApi apiInstance = new SecurityMonitoringApi ( defaultClient );
SecurityMonitoringRuleBulkDeletePayload body =
new SecurityMonitoringRuleBulkDeletePayload ()
. data (
new SecurityMonitoringRuleBulkDeleteData ()
. attributes (
new SecurityMonitoringRuleBulkDeleteAttributes ()
. ruleIds ( Arrays . asList ( "abc-000-u7q" , "abc-000-7dd" )))
. type ( SecurityMonitoringRuleBulkDeleteRequestDataType . BULK_DELETE_RULES ));
try {
SecurityMonitoringRuleBulkDeleteResponse result =
apiInstance . bulkDeleteSecurityMonitoringRules ( body );
System . out . println ( result );
} catch ( ApiException e ) {
System . err . println (
"Exception when calling SecurityMonitoringApi#bulkDeleteSecurityMonitoringRules" );
System . err . println ( "Status code: " + e . getCode ());
System . err . println ( "Reason: " + e . getResponseBody ());
System . err . println ( "Response headers: " + e . getResponseHeaders ());
e . printStackTrace ();
}
}
}
Instructions First install the library and its dependencies and then save the example to Example.java and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" java "Example.java"
// Bulk delete security monitoring rules returns "OK" response
use datadog_api_client ::datadog ;
use datadog_api_client ::datadogV2 ::api_security_monitoring ::SecurityMonitoringAPI ;
use datadog_api_client ::datadogV2 ::model ::SecurityMonitoringRuleBulkDeleteAttributes ;
use datadog_api_client ::datadogV2 ::model ::SecurityMonitoringRuleBulkDeleteData ;
use datadog_api_client ::datadogV2 ::model ::SecurityMonitoringRuleBulkDeletePayload ;
use datadog_api_client ::datadogV2 ::model ::SecurityMonitoringRuleBulkDeleteRequestDataType ;
#[tokio::main]
async fn main () {
let body =
SecurityMonitoringRuleBulkDeletePayload ::new ( SecurityMonitoringRuleBulkDeleteData ::new (
SecurityMonitoringRuleBulkDeleteAttributes ::new ( vec! [
"abc-000-u7q" . to_string (),
"abc-000-7dd" . to_string (),
]),
SecurityMonitoringRuleBulkDeleteRequestDataType ::BULK_DELETE_RULES ,
));
let configuration = datadog ::Configuration ::new ();
let api = SecurityMonitoringAPI ::with_config ( configuration );
let resp = api . bulk_delete_security_monitoring_rules ( body ). await ;
if let Ok ( value ) = resp {
println! ( " {:#?} " , value );
} else {
println! ( " {:#?} " , resp . unwrap_err ());
}
}
Instructions First install the library and its dependencies and then save the example to src/main.rs and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" cargo run
/**
* Bulk delete security monitoring rules returns "OK" response
*/
import { client , v2 } from "@datadog/datadog-api-client" ;
const configuration = client . createConfiguration ();
const apiInstance = new v2 . SecurityMonitoringApi ( configuration );
const params : v2.SecurityMonitoringApiBulkDeleteSecurityMonitoringRulesRequest =
{
body : {
data : {
attributes : {
ruleIds : [ "abc-000-u7q" , "abc-000-7dd" ],
},
type : "bulk_delete_rules" ,
},
},
};
apiInstance
. bulkDeleteSecurityMonitoringRules ( params )
. then (( data : v2.SecurityMonitoringRuleBulkDeleteResponse ) => {
console . log (
"API called successfully. Returned data: " + JSON . stringify ( data )
);
})
. catch (( error : any ) => console . error ( error ));
Instructions First install the library and its dependencies and then save the example to example.ts and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" tsc "example.ts"