v2_action_connection_CreateActionConnection/
v2_action-connection_CreateActionConnection.rs

1// Create a new Action Connection returns "Successfully created Action Connection"
2// response
3use datadog_api_client::datadog;
4use datadog_api_client::datadogV2::api_action_connection::ActionConnectionAPI;
5use datadog_api_client::datadogV2::model::AWSAssumeRole;
6use datadog_api_client::datadogV2::model::AWSAssumeRoleType;
7use datadog_api_client::datadogV2::model::AWSCredentials;
8use datadog_api_client::datadogV2::model::AWSIntegration;
9use datadog_api_client::datadogV2::model::AWSIntegrationType;
10use datadog_api_client::datadogV2::model::ActionConnectionAttributes;
11use datadog_api_client::datadogV2::model::ActionConnectionData;
12use datadog_api_client::datadogV2::model::ActionConnectionDataType;
13use datadog_api_client::datadogV2::model::ActionConnectionIntegration;
14use datadog_api_client::datadogV2::model::CreateActionConnectionRequest;
15
16#[tokio::main]
17async fn main() {
18    let body = CreateActionConnectionRequest::new(ActionConnectionData::new(
19        ActionConnectionAttributes::new(
20            ActionConnectionIntegration::AWSIntegration(Box::new(AWSIntegration::new(
21                AWSCredentials::AWSAssumeRole(Box::new(AWSAssumeRole::new(
22                    "123456789123".to_string(),
23                    "MyRoleUpdated".to_string(),
24                    AWSAssumeRoleType::AWSASSUMEROLE,
25                ))),
26                AWSIntegrationType::AWS,
27            ))),
28            "Cassette Connection exampleactionconnection".to_string(),
29        ),
30        ActionConnectionDataType::ACTION_CONNECTION,
31    ));
32    let configuration = datadog::Configuration::new();
33    let api = ActionConnectionAPI::with_config(configuration);
34    let resp = api.create_action_connection(body).await;
35    if let Ok(value) = resp {
36        println!("{:#?}", value);
37    } else {
38        println!("{:#?}", resp.unwrap_err());
39    }
40}