v2_datasets_UpdateDataset/
v2_datasets_UpdateDataset.rs

1// Edit a dataset returns "OK" response
2use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_datasets::DatasetsAPI;
4use datadog_api_client::datadogV2::model::DatasetAttributesRequest;
5use datadog_api_client::datadogV2::model::DatasetRequest;
6use datadog_api_client::datadogV2::model::DatasetType;
7use datadog_api_client::datadogV2::model::DatasetUpdateRequest;
8use datadog_api_client::datadogV2::model::FiltersPerProduct;
9
10#[tokio::main]
11async fn main() {
12    // there is a valid "dataset" in the system
13    let dataset_data_id = std::env::var("DATASET_DATA_ID").unwrap();
14    let body = DatasetUpdateRequest::new(DatasetRequest::new(
15        DatasetAttributesRequest::new(
16            "Security Audit Dataset".to_string(),
17            vec!["role:94172442-be03-11e9-a77a-3b7612558ac1".to_string()],
18            vec![FiltersPerProduct::new(
19                vec!["@application.id:1234".to_string()],
20                "metrics".to_string(),
21            )],
22        ),
23        DatasetType::DATASET,
24    ));
25    let mut configuration = datadog::Configuration::new();
26    configuration.set_unstable_operation_enabled("v2.UpdateDataset", true);
27    let api = DatasetsAPI::with_config(configuration);
28    let resp = api.update_dataset(dataset_data_id.clone(), body).await;
29    if let Ok(value) = resp {
30        println!("{:#?}", value);
31    } else {
32        println!("{:#?}", resp.unwrap_err());
33    }
34}