async def delete_user(
self,
*,
config_overrides: Optional[AsyncAppStreamClientConfig] = None,
user_name: Optional["capo_appstream.types.username.Username"] = None,
authentication_type: Optional[
"capo_appstream.types.authentication_type.AuthenticationType"
] = None,
) -> "capo_appstream.types.delete_user_result.DeleteUserResult":
"""<p>Deletes a user from the user pool.</p>
Args:
user_name: <p>The email address of the user.</p> <note> <p>Users' email addresses are case-sensitive.</p> </note>
authentication_type: <p>The authentication type for the user. You must specify USERPOOL.</p>
Raises:
capo_appstream.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource was not found.</p>
capo_appstream.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
async def _handler(
req: "AsyncOperationRequest[capo_appstream.types.delete_user_request.DeleteUserRequest]",
) -> AsyncOperationResponse[
"capo_appstream.types.delete_user_result.DeleteUserResult"
]:
import capo_appstream._operations.photon_admin_proxy_service.delete_user
(
output,
http_response,
) = await capo_appstream._operations.photon_admin_proxy_service.delete_user.async_delete_user(
req.options, req.input
)
return AsyncOperationResponse(output=output, response=http_response)
def _redact_input(
input_: "capo_appstream.types.delete_user_request.DeleteUserRequest",
) -> dict[str, Any]:
import capo_appstream.types.delete_user_request
return capo_appstream.types.delete_user_request.redact_sensitive(input_)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("DeleteUser", redact_input=_redact_input)
)
input_: capo_appstream.types.delete_user_request.DeleteUserRequest = {}
if user_name is not None:
input_["user_name"] = user_name
if authentication_type is not None:
input_["authentication_type"] = authentication_type
response = await aexecute_pipeline(
AsyncOperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
await response.response.aclose()
return response.output