Struct GCPIntegrationAPI

Source
pub struct GCPIntegrationAPI { /* private fields */ }
Expand description

Configure your Datadog-Google Cloud Platform (GCP) integration directly through the Datadog API. Read more about the Datadog-Google Cloud Platform integration.

Implementations§

Source§

impl GCPIntegrationAPI

Source

pub fn new() -> Self

Source

pub fn with_config(config: Configuration) -> Self

Examples found in repository?
examples/v2_gcp-integration_GetGCPSTSDelegate.rs (line 8)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = GCPIntegrationAPI::with_config(configuration);
9    let resp = api.get_gcpsts_delegate().await;
10    if let Ok(value) = resp {
11        println!("{:#?}", value);
12    } else {
13        println!("{:#?}", resp.unwrap_err());
14    }
15}
More examples
Hide additional examples
examples/v2_gcp-integration_ListGCPSTSAccounts.rs (line 8)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = GCPIntegrationAPI::with_config(configuration);
9    let resp = api.list_gcpsts_accounts().await;
10    if let Ok(value) = resp {
11        println!("{:#?}", value);
12    } else {
13        println!("{:#?}", resp.unwrap_err());
14    }
15}
examples/v2_gcp-integration_DeleteGCPSTSAccount.rs (line 8)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = GCPIntegrationAPI::with_config(configuration);
9    let resp = api.delete_gcpsts_account("account_id".to_string()).await;
10    if let Ok(value) = resp {
11        println!("{:#?}", value);
12    } else {
13        println!("{:#?}", resp.unwrap_err());
14    }
15}
examples/v2_gcp-integration_MakeGCPSTSDelegate.rs (line 9)
7async fn main() {
8    let configuration = datadog::Configuration::new();
9    let api = GCPIntegrationAPI::with_config(configuration);
10    let resp = api
11        .make_gcpsts_delegate(MakeGCPSTSDelegateOptionalParams::default())
12        .await;
13    if let Ok(value) = resp {
14        println!("{:#?}", value);
15    } else {
16        println!("{:#?}", resp.unwrap_err());
17    }
18}
examples/v2_gcp-integration_MakeGCPSTSDelegate_962598975.rs (line 11)
8async fn main() {
9    let body = BTreeMap::new();
10    let configuration = datadog::Configuration::new();
11    let api = GCPIntegrationAPI::with_config(configuration);
12    let resp = api
13        .make_gcpsts_delegate(MakeGCPSTSDelegateOptionalParams::default().body(body))
14        .await;
15    if let Ok(value) = resp {
16        println!("{:#?}", value);
17    } else {
18        println!("{:#?}", resp.unwrap_err());
19    }
20}
examples/v2_gcp-integration_CreateGCPSTSAccount.rs (line 23)
10async fn main() {
11    let body = GCPSTSServiceAccountCreateRequest::new().data(
12        GCPSTSServiceAccountData::new()
13            .attributes(
14                GCPSTSServiceAccountAttributes::new()
15                    .client_email(
16                        "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
17                    )
18                    .host_filters(vec![]),
19            )
20            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
21    );
22    let configuration = datadog::Configuration::new();
23    let api = GCPIntegrationAPI::with_config(configuration);
24    let resp = api.create_gcpsts_account(body).await;
25    if let Ok(value) = resp {
26        println!("{:#?}", value);
27    } else {
28        println!("{:#?}", resp.unwrap_err());
29    }
30}
Source

pub fn with_client_and_config( config: Configuration, client: ClientWithMiddleware, ) -> Self

Source

pub async fn create_gcpsts_account( &self, body: GCPSTSServiceAccountCreateRequest, ) -> Result<GCPSTSServiceAccountResponse, Error<CreateGCPSTSAccountError>>

Create a new entry within Datadog for your STS enabled service account.

Examples found in repository?
examples/v2_gcp-integration_CreateGCPSTSAccount.rs (line 24)
10async fn main() {
11    let body = GCPSTSServiceAccountCreateRequest::new().data(
12        GCPSTSServiceAccountData::new()
13            .attributes(
14                GCPSTSServiceAccountAttributes::new()
15                    .client_email(
16                        "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
17                    )
18                    .host_filters(vec![]),
19            )
20            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
21    );
22    let configuration = datadog::Configuration::new();
23    let api = GCPIntegrationAPI::with_config(configuration);
24    let resp = api.create_gcpsts_account(body).await;
25    if let Ok(value) = resp {
26        println!("{:#?}", value);
27    } else {
28        println!("{:#?}", resp.unwrap_err());
29    }
30}
More examples
Hide additional examples
examples/v2_gcp-integration_CreateGCPSTSAccount_130557025.rs (line 26)
11async fn main() {
12    let body = GCPSTSServiceAccountCreateRequest::new().data(
13        GCPSTSServiceAccountData::new()
14            .attributes(
15                GCPSTSServiceAccountAttributes::new()
16                    .client_email(
17                        "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
18                    )
19                    .host_filters(vec![])
20                    .resource_collection_enabled(true),
21            )
22            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
23    );
24    let configuration = datadog::Configuration::new();
25    let api = GCPIntegrationAPI::with_config(configuration);
26    let resp = api.create_gcpsts_account(body).await;
27    if let Ok(value) = resp {
28        println!("{:#?}", value);
29    } else {
30        println!("{:#?}", resp.unwrap_err());
31    }
32}
examples/v2_gcp-integration_CreateGCPSTSAccount_194782945.rs (line 26)
11async fn main() {
12    let body = GCPSTSServiceAccountCreateRequest::new().data(
13        GCPSTSServiceAccountData::new()
14            .attributes(
15                GCPSTSServiceAccountAttributes::new()
16                    .client_email(
17                        "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
18                    )
19                    .cloud_run_revision_filters(vec!["meh:bleh".to_string()])
20                    .host_filters(vec![]),
21            )
22            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
23    );
24    let configuration = datadog::Configuration::new();
25    let api = GCPIntegrationAPI::with_config(configuration);
26    let resp = api.create_gcpsts_account(body).await;
27    if let Ok(value) = resp {
28        println!("{:#?}", value);
29    } else {
30        println!("{:#?}", resp.unwrap_err());
31    }
32}
examples/v2_gcp-integration_CreateGCPSTSAccount_109518525.rs (line 26)
11async fn main() {
12    let body = GCPSTSServiceAccountCreateRequest::new().data(
13        GCPSTSServiceAccountData::new()
14            .attributes(
15                GCPSTSServiceAccountAttributes::new()
16                    .account_tags(vec!["lorem".to_string(), "ipsum".to_string()])
17                    .client_email(
18                        "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
19                    )
20                    .host_filters(vec![]),
21            )
22            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
23    );
24    let configuration = datadog::Configuration::new();
25    let api = GCPIntegrationAPI::with_config(configuration);
26    let resp = api.create_gcpsts_account(body).await;
27    if let Ok(value) = resp {
28        println!("{:#?}", value);
29    } else {
30        println!("{:#?}", resp.unwrap_err());
31    }
32}
examples/v2_gcp-integration_CreateGCPSTSAccount_4235664992.rs (line 27)
11async fn main() {
12    let body = GCPSTSServiceAccountCreateRequest::new().data(
13        GCPSTSServiceAccountData::new()
14            .attributes(
15                GCPSTSServiceAccountAttributes::new()
16                    .client_email(
17                        "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
18                    )
19                    .host_filters(vec![])
20                    .is_cspm_enabled(true)
21                    .resource_collection_enabled(true),
22            )
23            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
24    );
25    let configuration = datadog::Configuration::new();
26    let api = GCPIntegrationAPI::with_config(configuration);
27    let resp = api.create_gcpsts_account(body).await;
28    if let Ok(value) = resp {
29        println!("{:#?}", value);
30    } else {
31        println!("{:#?}", resp.unwrap_err());
32    }
33}
examples/v2_gcp-integration_CreateGCPSTSAccount_2597004741.rs (line 27)
11async fn main() {
12    let body = GCPSTSServiceAccountCreateRequest::new().data(
13        GCPSTSServiceAccountData::new()
14            .attributes(
15                GCPSTSServiceAccountAttributes::new()
16                    .client_email(
17                        "Test-252bf553ef04b351@test-project.iam.gserviceaccount.com".to_string(),
18                    )
19                    .host_filters(vec![])
20                    .is_resource_change_collection_enabled(true)
21                    .is_security_command_center_enabled(true),
22            )
23            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
24    );
25    let configuration = datadog::Configuration::new();
26    let api = GCPIntegrationAPI::with_config(configuration);
27    let resp = api.create_gcpsts_account(body).await;
28    if let Ok(value) = resp {
29        println!("{:#?}", value);
30    } else {
31        println!("{:#?}", resp.unwrap_err());
32    }
33}
Source

pub async fn create_gcpsts_account_with_http_info( &self, body: GCPSTSServiceAccountCreateRequest, ) -> Result<ResponseContent<GCPSTSServiceAccountResponse>, Error<CreateGCPSTSAccountError>>

Create a new entry within Datadog for your STS enabled service account.

Source

pub async fn delete_gcpsts_account( &self, account_id: String, ) -> Result<(), Error<DeleteGCPSTSAccountError>>

Delete an STS enabled GCP account from within Datadog.

Examples found in repository?
examples/v2_gcp-integration_DeleteGCPSTSAccount.rs (line 9)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = GCPIntegrationAPI::with_config(configuration);
9    let resp = api.delete_gcpsts_account("account_id".to_string()).await;
10    if let Ok(value) = resp {
11        println!("{:#?}", value);
12    } else {
13        println!("{:#?}", resp.unwrap_err());
14    }
15}
Source

pub async fn delete_gcpsts_account_with_http_info( &self, account_id: String, ) -> Result<ResponseContent<()>, Error<DeleteGCPSTSAccountError>>

Delete an STS enabled GCP account from within Datadog.

Source

pub async fn get_gcpsts_delegate( &self, ) -> Result<GCPSTSDelegateAccountResponse, Error<GetGCPSTSDelegateError>>

List your Datadog-GCP STS delegate account configured in your Datadog account.

Examples found in repository?
examples/v2_gcp-integration_GetGCPSTSDelegate.rs (line 9)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = GCPIntegrationAPI::with_config(configuration);
9    let resp = api.get_gcpsts_delegate().await;
10    if let Ok(value) = resp {
11        println!("{:#?}", value);
12    } else {
13        println!("{:#?}", resp.unwrap_err());
14    }
15}
Source

pub async fn get_gcpsts_delegate_with_http_info( &self, ) -> Result<ResponseContent<GCPSTSDelegateAccountResponse>, Error<GetGCPSTSDelegateError>>

List your Datadog-GCP STS delegate account configured in your Datadog account.

Source

pub async fn list_gcpsts_accounts( &self, ) -> Result<GCPSTSServiceAccountsResponse, Error<ListGCPSTSAccountsError>>

List all GCP STS-enabled service accounts configured in your Datadog account.

Examples found in repository?
examples/v2_gcp-integration_ListGCPSTSAccounts.rs (line 9)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = GCPIntegrationAPI::with_config(configuration);
9    let resp = api.list_gcpsts_accounts().await;
10    if let Ok(value) = resp {
11        println!("{:#?}", value);
12    } else {
13        println!("{:#?}", resp.unwrap_err());
14    }
15}
Source

pub async fn list_gcpsts_accounts_with_http_info( &self, ) -> Result<ResponseContent<GCPSTSServiceAccountsResponse>, Error<ListGCPSTSAccountsError>>

List all GCP STS-enabled service accounts configured in your Datadog account.

Source

pub async fn make_gcpsts_delegate( &self, params: MakeGCPSTSDelegateOptionalParams, ) -> Result<GCPSTSDelegateAccountResponse, Error<MakeGCPSTSDelegateError>>

Create a Datadog GCP principal.

Examples found in repository?
examples/v2_gcp-integration_MakeGCPSTSDelegate.rs (line 11)
7async fn main() {
8    let configuration = datadog::Configuration::new();
9    let api = GCPIntegrationAPI::with_config(configuration);
10    let resp = api
11        .make_gcpsts_delegate(MakeGCPSTSDelegateOptionalParams::default())
12        .await;
13    if let Ok(value) = resp {
14        println!("{:#?}", value);
15    } else {
16        println!("{:#?}", resp.unwrap_err());
17    }
18}
More examples
Hide additional examples
examples/v2_gcp-integration_MakeGCPSTSDelegate_962598975.rs (line 13)
8async fn main() {
9    let body = BTreeMap::new();
10    let configuration = datadog::Configuration::new();
11    let api = GCPIntegrationAPI::with_config(configuration);
12    let resp = api
13        .make_gcpsts_delegate(MakeGCPSTSDelegateOptionalParams::default().body(body))
14        .await;
15    if let Ok(value) = resp {
16        println!("{:#?}", value);
17    } else {
18        println!("{:#?}", resp.unwrap_err());
19    }
20}
Source

pub async fn make_gcpsts_delegate_with_http_info( &self, params: MakeGCPSTSDelegateOptionalParams, ) -> Result<ResponseContent<GCPSTSDelegateAccountResponse>, Error<MakeGCPSTSDelegateError>>

Create a Datadog GCP principal.

Source

pub async fn update_gcpsts_account( &self, account_id: String, body: GCPSTSServiceAccountUpdateRequest, ) -> Result<GCPSTSServiceAccountResponse, Error<UpdateGCPSTSAccountError>>

Update an STS enabled service account.

Examples found in repository?
examples/v2_gcp-integration_UpdateGCPSTSAccount_3205636354.rs (line 27)
11async fn main() {
12    // there is a valid "gcp_sts_account" in the system
13    let gcp_sts_account_data_id = std::env::var("GCP_STS_ACCOUNT_DATA_ID").unwrap();
14    let body = GCPSTSServiceAccountUpdateRequest::new().data(
15        GCPSTSServiceAccountUpdateRequestData::new()
16            .attributes(
17                GCPSTSServiceAccountAttributes::new()
18                    .client_email("Test-252bf553ef04b351@example.com".to_string())
19                    .resource_collection_enabled(true),
20            )
21            .id(gcp_sts_account_data_id.clone())
22            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
23    );
24    let configuration = datadog::Configuration::new();
25    let api = GCPIntegrationAPI::with_config(configuration);
26    let resp = api
27        .update_gcpsts_account(gcp_sts_account_data_id.clone(), body)
28        .await;
29    if let Ok(value) = resp {
30        println!("{:#?}", value);
31    } else {
32        println!("{:#?}", resp.unwrap_err());
33    }
34}
More examples
Hide additional examples
examples/v2_gcp-integration_UpdateGCPSTSAccount.rs (line 26)
10async fn main() {
11    // there is a valid "gcp_sts_account" in the system
12    let gcp_sts_account_data_id = std::env::var("GCP_STS_ACCOUNT_DATA_ID").unwrap();
13    let body = GCPSTSServiceAccountUpdateRequest::new().data(
14        GCPSTSServiceAccountUpdateRequestData::new()
15            .attributes(
16                GCPSTSServiceAccountAttributes::new()
17                    .client_email("Test-252bf553ef04b351@example.com".to_string())
18                    .host_filters(vec!["foo:bar".to_string()]),
19            )
20            .id(gcp_sts_account_data_id.clone())
21            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
22    );
23    let configuration = datadog::Configuration::new();
24    let api = GCPIntegrationAPI::with_config(configuration);
25    let resp = api
26        .update_gcpsts_account(gcp_sts_account_data_id.clone(), body)
27        .await;
28    if let Ok(value) = resp {
29        println!("{:#?}", value);
30    } else {
31        println!("{:#?}", resp.unwrap_err());
32    }
33}
examples/v2_gcp-integration_UpdateGCPSTSAccount_2241994060.rs (line 26)
10async fn main() {
11    // there is a valid "gcp_sts_account" in the system
12    let gcp_sts_account_data_id = std::env::var("GCP_STS_ACCOUNT_DATA_ID").unwrap();
13    let body = GCPSTSServiceAccountUpdateRequest::new().data(
14        GCPSTSServiceAccountUpdateRequestData::new()
15            .attributes(
16                GCPSTSServiceAccountAttributes::new()
17                    .client_email("Test-252bf553ef04b351@example.com".to_string())
18                    .cloud_run_revision_filters(vec!["merp:derp".to_string()]),
19            )
20            .id(gcp_sts_account_data_id.clone())
21            .type_(GCPServiceAccountType::GCP_SERVICE_ACCOUNT),
22    );
23    let configuration = datadog::Configuration::new();
24    let api = GCPIntegrationAPI::with_config(configuration);
25    let resp = api
26        .update_gcpsts_account(gcp_sts_account_data_id.clone(), body)
27        .await;
28    if let Ok(value) = resp {
29        println!("{:#?}", value);
30    } else {
31        println!("{:#?}", resp.unwrap_err());
32    }
33}
Source

pub async fn update_gcpsts_account_with_http_info( &self, account_id: String, body: GCPSTSServiceAccountUpdateRequest, ) -> Result<ResponseContent<GCPSTSServiceAccountResponse>, Error<UpdateGCPSTSAccountError>>

Update an STS enabled service account.

Trait Implementations§

Source§

impl Clone for GCPIntegrationAPI

Source§

fn clone(&self) -> GCPIntegrationAPI

Returns a duplicate of the value. Read more
1.0.0 · Source§

const fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GCPIntegrationAPI

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for GCPIntegrationAPI

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,