v2_cloud_cost_management_CreateCostGCPUsageCostConfig/
v2_cloud-cost-management_CreateCostGCPUsageCostConfig.rs1use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_cloud_cost_management::CloudCostManagementAPI;
4use datadog_api_client::datadogV2::model::GCPUsageCostConfigPostData;
5use datadog_api_client::datadogV2::model::GCPUsageCostConfigPostRequest;
6use datadog_api_client::datadogV2::model::GCPUsageCostConfigPostRequestAttributes;
7use datadog_api_client::datadogV2::model::GCPUsageCostConfigPostRequestType;
8
9#[tokio::main]
10async fn main() {
11 let body = GCPUsageCostConfigPostRequest::new(
12 GCPUsageCostConfigPostData::new(
13 GCPUsageCostConfigPostRequestType::GCP_USAGE_COST_CONFIG_POST_REQUEST,
14 )
15 .attributes(
16 GCPUsageCostConfigPostRequestAttributes::new(
17 "123456_A123BC_12AB34".to_string(),
18 "dd-cost-bucket".to_string(),
19 "billing".to_string(),
20 "dd-cloud-cost-report".to_string(),
21 "dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com".to_string(),
22 )
23 .export_prefix("datadog_cloud_cost_usage_export".to_string()),
24 ),
25 );
26 let configuration = datadog::Configuration::new();
27 let api = CloudCostManagementAPI::with_config(configuration);
28 let resp = api.create_cost_gcp_usage_cost_config(body).await;
29 if let Ok(value) = resp {
30 println!("{:#?}", value);
31 } else {
32 println!("{:#?}", resp.unwrap_err());
33 }
34}