aws_sdk_iam/client/
get_delegation_request.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`GetDelegationRequest`](crate::operation::get_delegation_request::builders::GetDelegationRequestFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`delegation_request_id(impl Into<String>)`](crate::operation::get_delegation_request::builders::GetDelegationRequestFluentBuilder::delegation_request_id) / [`set_delegation_request_id(Option<String>)`](crate::operation::get_delegation_request::builders::GetDelegationRequestFluentBuilder::set_delegation_request_id):<br>required: **true**<br><p>The unique identifier of the delegation request to retrieve.</p><br>
7    ///   - [`delegation_permission_check(bool)`](crate::operation::get_delegation_request::builders::GetDelegationRequestFluentBuilder::delegation_permission_check) / [`set_delegation_permission_check(Option<bool>)`](crate::operation::get_delegation_request::builders::GetDelegationRequestFluentBuilder::set_delegation_permission_check):<br>required: **false**<br><p>Specifies whether to perform a permission check for the delegation request.</p> <p>If set to true, the <code>GetDelegationRequest</code> API call will start a permission check process. This process calculates whether the caller has sufficient permissions to cover the asks from this delegation request.</p> <p>Setting this parameter to true does not guarantee an answer in the response. See the <code>PermissionCheckStatus</code> and the <code>PermissionCheckResult</code> response attributes for further details.</p><br>
8    /// - On success, responds with [`GetDelegationRequestOutput`](crate::operation::get_delegation_request::GetDelegationRequestOutput) with field(s):
9    ///   - [`delegation_request(Option<DelegationRequest>)`](crate::operation::get_delegation_request::GetDelegationRequestOutput::delegation_request): <p>The delegation request object containing all details about the request.</p>
10    ///   - [`permission_check_status(Option<PermissionCheckStatusType>)`](crate::operation::get_delegation_request::GetDelegationRequestOutput::permission_check_status): <p>The status of the permission check for the delegation request.</p> <p>This value indicates the status of the process to check whether the caller has sufficient permissions to cover the requested actions in the delegation request. Since this is an asynchronous process, there are three potential values:</p> <ul>  <li>   <p><code>IN_PROGRESS</code> : The permission check process has started.</p></li>  <li>   <p><code>COMPLETED</code> : The permission check process has completed. The <code>PermissionCheckResult</code> will include the result.</p></li>  <li>   <p><code>FAILED</code> : The permission check process has failed.</p></li> </ul>
11    ///   - [`permission_check_result(Option<PermissionCheckResultType>)`](crate::operation::get_delegation_request::GetDelegationRequestOutput::permission_check_result): <p>The result of the permission check, indicating whether the caller has sufficient permissions to cover the requested permissions. This is an approximate result.</p> <ul>  <li>   <p><code>ALLOWED</code> : The caller has sufficient permissions cover all the requested permissions.</p></li>  <li>   <p><code>DENIED</code> : The caller does not have sufficient permissions to cover all the requested permissions.</p></li>  <li>   <p><code>UNSURE</code> : It is not possible to determine whether the caller has all the permissions needed. This output is most likely for cases when the caller has permissions with conditions.</p></li> </ul>
12    /// - On failure, responds with [`SdkError<GetDelegationRequestError>`](crate::operation::get_delegation_request::GetDelegationRequestError)
13    pub fn get_delegation_request(&self) -> crate::operation::get_delegation_request::builders::GetDelegationRequestFluentBuilder {
14        crate::operation::get_delegation_request::builders::GetDelegationRequestFluentBuilder::new(self.handle.clone())
15    }
16}