v2_security_monitoring_MuteFindings/
v2_security-monitoring_MuteFindings.rs

1// Mute or unmute a batch of findings returns "OK" response
2use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_security_monitoring::SecurityMonitoringAPI;
4use datadog_api_client::datadogV2::model::BulkMuteFindingsRequest;
5use datadog_api_client::datadogV2::model::BulkMuteFindingsRequestAttributes;
6use datadog_api_client::datadogV2::model::BulkMuteFindingsRequestData;
7use datadog_api_client::datadogV2::model::BulkMuteFindingsRequestMeta;
8use datadog_api_client::datadogV2::model::BulkMuteFindingsRequestMetaFindings;
9use datadog_api_client::datadogV2::model::BulkMuteFindingsRequestProperties;
10use datadog_api_client::datadogV2::model::FindingMuteReason;
11use datadog_api_client::datadogV2::model::FindingType;
12
13#[tokio::main]
14async fn main() {
15    let body = BulkMuteFindingsRequest::new(BulkMuteFindingsRequestData::new(
16        BulkMuteFindingsRequestAttributes::new(
17            BulkMuteFindingsRequestProperties::new(true, FindingMuteReason::ACCEPTED_RISK)
18                .expiration_date(1778721573794),
19        ),
20        "dbe5f567-192b-4404-b908-29b70e1c9f76".to_string(),
21        BulkMuteFindingsRequestMeta::new()
22            .findings(vec![BulkMuteFindingsRequestMetaFindings::new().finding_id(
23                "ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==".to_string(),
24            )]),
25        FindingType::FINDING,
26    ));
27    let mut configuration = datadog::Configuration::new();
28    configuration.set_unstable_operation_enabled("v2.MuteFindings", true);
29    let api = SecurityMonitoringAPI::with_config(configuration);
30    let resp = api.mute_findings(body).await;
31    if let Ok(value) = resp {
32        println!("{:#?}", value);
33    } else {
34        println!("{:#?}", resp.unwrap_err());
35    }
36}