v2_case_management_CreateCase/
v2_case-management_CreateCase.rs1use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_case_management::CaseManagementAPI;
4use datadog_api_client::datadogV2::model::CaseCreate;
5use datadog_api_client::datadogV2::model::CaseCreateAttributes;
6use datadog_api_client::datadogV2::model::CaseCreateRelationships;
7use datadog_api_client::datadogV2::model::CaseCreateRequest;
8use datadog_api_client::datadogV2::model::CasePriority;
9use datadog_api_client::datadogV2::model::CaseResourceType;
10use datadog_api_client::datadogV2::model::NullableUserRelationship;
11use datadog_api_client::datadogV2::model::NullableUserRelationshipData;
12use datadog_api_client::datadogV2::model::ProjectRelationship;
13use datadog_api_client::datadogV2::model::ProjectRelationshipData;
14use datadog_api_client::datadogV2::model::ProjectResourceType;
15use datadog_api_client::datadogV2::model::UserResourceType;
16
17#[tokio::main]
18async fn main() {
19 let user_data_id = std::env::var("USER_DATA_ID").unwrap();
21 let body = CaseCreateRequest::new(
22 CaseCreate::new(
23 CaseCreateAttributes::new(
24 "Security breach investigation in 0cfbc5cbc676ee71".to_string(),
25 "00000000-0000-0000-0000-000000000001".to_string(),
26 )
27 .priority(CasePriority::NOT_DEFINED),
28 CaseResourceType::CASE,
29 )
30 .relationships(
31 CaseCreateRelationships::new(ProjectRelationship::new(ProjectRelationshipData::new(
32 "d4bbe1af-f36e-42f1-87c1-493ca35c320e".to_string(),
33 ProjectResourceType::PROJECT,
34 )))
35 .assignee(Some(NullableUserRelationship::new(Some(
36 NullableUserRelationshipData::new(user_data_id.clone(), UserResourceType::USER),
37 )))),
38 ),
39 );
40 let configuration = datadog::Configuration::new();
41 let api = CaseManagementAPI::with_config(configuration);
42 let resp = api.create_case(body).await;
43 if let Ok(value) = resp {
44 println!("{:#?}", value);
45 } else {
46 println!("{:#?}", resp.unwrap_err());
47 }
48}