// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`GetResourceOauth2Token`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`workload_identity_token(impl Into<String>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::workload_identity_token) / [`set_workload_identity_token(Option<String>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::set_workload_identity_token):<br>required: **true**<br><p>The identity token of the workload you want to retrive the Oauth2 Token of.</p><br>
/// - [`resource_credential_provider_name(impl Into<String>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::resource_credential_provider_name) / [`set_resource_credential_provider_name(Option<String>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::set_resource_credential_provider_name):<br>required: **true**<br><p>Reference to the credential provider</p><br>
/// - [`scopes(impl Into<String>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::scopes) / [`set_scopes(Option<Vec::<String>>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::set_scopes):<br>required: **true**<br><p>The OAuth scopes requested</p><br>
/// - [`oauth2_flow(Oauth2FlowType)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::oauth2_flow) / [`set_oauth2_flow(Option<Oauth2FlowType>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::set_oauth2_flow):<br>required: **true**<br><p>The type of flow to be performed</p><br>
/// - [`resource_oauth2_return_url(impl Into<String>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::resource_oauth2_return_url) / [`set_resource_oauth2_return_url(Option<String>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::set_resource_oauth2_return_url):<br>required: **false**<br><p>Callback url to redirect after token retrieval completes. Should be one of the provideded urls during WorkloadIdentity creation</p><br>
/// - [`force_authentication(bool)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::force_authentication) / [`set_force_authentication(Option<bool>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::set_force_authentication):<br>required: **false**<br><p>If true, always initiate a new 3LO flow</p><br>
/// - [`custom_parameters(impl Into<String>, impl Into<String>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::custom_parameters) / [`set_custom_parameters(Option<HashMap::<String, String>>)`](crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::set_custom_parameters):<br>required: **false**<br><p>Gives the ability to send extra/custom parameters to the resource credentials provider during the authorization process. Standard OAuth2 flow parameters will not be overriden.</p><br>
/// - On success, responds with [`GetResourceOauth2TokenOutput`](crate::operation::get_resource_oauth2_token::GetResourceOauth2TokenOutput) with field(s):
/// - [`authorization_url(Option<String>)`](crate::operation::get_resource_oauth2_token::GetResourceOauth2TokenOutput::authorization_url): <p>The URL for the authorization process, provided if the Access token requires user Authorization.</p>
/// - [`access_token(Option<String>)`](crate::operation::get_resource_oauth2_token::GetResourceOauth2TokenOutput::access_token): <p>OAuth2 token ready for use</p>
/// - On failure, responds with [`SdkError<GetResourceOauth2TokenError>`](crate::operation::get_resource_oauth2_token::GetResourceOauth2TokenError)
pub fn get_resource_oauth2_token(&self) -> crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder {
crate::operation::get_resource_oauth2_token::builders::GetResourceOauth2TokenFluentBuilder::new(self.handle.clone())
}
}