v2_security_monitoring_UpdateSecurityMonitoringSuppression/
v2_security-monitoring_UpdateSecurityMonitoringSuppression.rs

1// Update a suppression rule returns "OK" response
2use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_security_monitoring::SecurityMonitoringAPI;
4use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionType;
5use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionUpdateAttributes;
6use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionUpdateData;
7use datadog_api_client::datadogV2::model::SecurityMonitoringSuppressionUpdateRequest;
8
9#[tokio::main]
10async fn main() {
11    // there is a valid "suppression" in the system
12    let suppression_data_id = std::env::var("SUPPRESSION_DATA_ID").unwrap();
13    let body = SecurityMonitoringSuppressionUpdateRequest::new(
14        SecurityMonitoringSuppressionUpdateData::new(
15            SecurityMonitoringSuppressionUpdateAttributes::new()
16                .suppression_query("env:staging status:low".to_string()),
17            SecurityMonitoringSuppressionType::SUPPRESSIONS,
18        ),
19    );
20    let configuration = datadog::Configuration::new();
21    let api = SecurityMonitoringAPI::with_config(configuration);
22    let resp = api
23        .update_security_monitoring_suppression(suppression_data_id.clone(), body)
24        .await;
25    if let Ok(value) = resp {
26        println!("{:#?}", value);
27    } else {
28        println!("{:#?}", resp.unwrap_err());
29    }
30}