v2_csm_threats_UpdateCloudWorkloadSecurityAgentRule/
v2_csm-threats_UpdateCloudWorkloadSecurityAgentRule.rs1use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_csm_threats::CSMThreatsAPI;
4use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleType;
5use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleUpdateAttributes;
6use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleUpdateData;
7use datadog_api_client::datadogV2::model::CloudWorkloadSecurityAgentRuleUpdateRequest;
8
9#[tokio::main]
10async fn main() {
11 let agent_rule_data_id = std::env::var("AGENT_RULE_DATA_ID").unwrap();
13 let body = CloudWorkloadSecurityAgentRuleUpdateRequest::new(
14 CloudWorkloadSecurityAgentRuleUpdateData::new(
15 CloudWorkloadSecurityAgentRuleUpdateAttributes::new()
16 .description("Updated Agent rule".to_string())
17 .expression(r#"exec.file.name == "sh""#.to_string()),
18 CloudWorkloadSecurityAgentRuleType::AGENT_RULE,
19 )
20 .id(agent_rule_data_id.clone()),
21 );
22 let configuration = datadog::Configuration::new();
23 let api = CSMThreatsAPI::with_config(configuration);
24 let resp = api
25 .update_cloud_workload_security_agent_rule(agent_rule_data_id.clone(), body)
26 .await;
27 if let Ok(value) = resp {
28 println!("{:#?}", value);
29 } else {
30 println!("{:#?}", resp.unwrap_err());
31 }
32}