v2_incidents_UpdateIncidentTodo/
v2_incidents_UpdateIncidentTodo.rs

1// Update an incident todo returns "OK" response
2use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_incidents::IncidentsAPI;
4use datadog_api_client::datadogV2::model::IncidentTodoAssignee;
5use datadog_api_client::datadogV2::model::IncidentTodoAttributes;
6use datadog_api_client::datadogV2::model::IncidentTodoPatchData;
7use datadog_api_client::datadogV2::model::IncidentTodoPatchRequest;
8use datadog_api_client::datadogV2::model::IncidentTodoType;
9
10#[tokio::main]
11async fn main() {
12    // there is a valid "incident" in the system
13    let incident_data_id = std::env::var("INCIDENT_DATA_ID").unwrap();
14
15    // the "incident" has an "incident_todo"
16    let incident_todo_data_id = std::env::var("INCIDENT_TODO_DATA_ID").unwrap();
17    let body = IncidentTodoPatchRequest::new(IncidentTodoPatchData::new(
18        IncidentTodoAttributes::new(
19            vec![IncidentTodoAssignee::IncidentTodoAssigneeHandle(
20                "@test.user@test.com".to_string(),
21            )],
22            "Restore lost data.".to_string(),
23        )
24        .completed(Some("2023-03-06T22:00:00.000000+00:00".to_string()))
25        .due_date(Some("2023-07-10T05:00:00.000000+00:00".to_string())),
26        IncidentTodoType::INCIDENT_TODOS,
27    ));
28    let mut configuration = datadog::Configuration::new();
29    configuration.set_unstable_operation_enabled("v2.UpdateIncidentTodo", true);
30    let api = IncidentsAPI::with_config(configuration);
31    let resp = api
32        .update_incident_todo(
33            incident_data_id.clone(),
34            incident_todo_data_id.clone(),
35            body,
36        )
37        .await;
38    if let Ok(value) = resp {
39        println!("{:#?}", value);
40    } else {
41        println!("{:#?}", resp.unwrap_err());
42    }
43}