Skip to content

list_user_pool_client_secrets

list_user_pool_client_secrets(
    user_pool_id: UserPoolIdType,
    client_id: ClientIdType,
    *,
    config_overrides: Optional[CognitoIdentityProviderClientConfig] = None,
    next_token: Optional[PaginationKey] = None,
) -> ListUserPoolClientSecretsResponse

Lists all client secrets associated with a user pool app client. Returns metadata about the secrets. The response does not include pagination tokens as there are only 2 secrets at any given time and we return both with every ListUserPoolClientSecrets call. For security reasons, the response never reveals the actual secret value in ClientSecretValue.

Parameters:

  • user_pool_id (UserPoolIdType) –

    The ID of the user pool that contains the app client.

  • client_id (ClientIdType) –

    The ID of the app client whose secrets you want to list.

  • next_token (Optional[PaginationKey], default: None ) –

    This API operation returns a limited number of results. The pagination token is an identifier that you can present in an additional API request with the same parameters. When you include the pagination token, Amazon Cognito returns the next set of items after the current list. Subsequent requests return a new pagination token. By use of this token, you can paginate through the full list of items.

Raises:

Source code in docs_src/capo_cognito_identity_provider/_services/cognito_identity_provider.py
def list_user_pool_client_secrets(
    self,
    user_pool_id: "capo_cognito_identity_provider.types.user_pool_id_type.UserPoolIdType",
    client_id: "capo_cognito_identity_provider.types.client_id_type.ClientIdType",
    *,
    config_overrides: Optional[CognitoIdentityProviderClientConfig] = None,
    next_token: Optional[
        "capo_cognito_identity_provider.types.pagination_key.PaginationKey"
    ] = None,
) -> "capo_cognito_identity_provider.types.list_user_pool_client_secrets_response.ListUserPoolClientSecretsResponse":
    """<p>Lists all client secrets associated with a user pool app client. Returns metadata about the secrets. The response does not include pagination tokens as there are only 2 secrets at any given time and we return both with every ListUserPoolClientSecrets call. For security reasons, the response never reveals the actual secret value in ClientSecretValue.</p>

    Args:
        user_pool_id: <p>The ID of the user pool that contains the app client.</p>
        client_id: <p>The ID of the app client whose secrets you want to list.</p>
        next_token: <p>This API operation returns a limited number of results. The pagination token is an identifier that you can present in an additional API request with the same parameters. When you include the pagination token, Amazon Cognito returns the next set of items after the current list. Subsequent requests return a new pagination token. By use of this token, you can paginate through the full list of items.</p>

    Raises:
        capo_cognito_identity_provider.errors.internal_server_exception.InternalServerException: <p>This exception is thrown when Amazon Cognito encounters an internal server error.</p>
        capo_cognito_identity_provider.errors.invalid_parameter_exception.InvalidParameterException: <p>This exception is thrown when the Amazon Cognito service encounters an invalid parameter.</p>
        capo_cognito_identity_provider.errors.limit_exceeded_exception.LimitExceededException: <p>This exception is thrown when a user exceeds the limit for a requested Amazon Web Services resource.</p>
        capo_cognito_identity_provider.errors.resource_not_found_exception.ResourceNotFoundException: <p>This exception is thrown when the Amazon Cognito service can't find the requested resource.</p>
        capo_cognito_identity_provider.errors.too_many_requests_exception.TooManyRequestsException: <p>This exception is thrown when the user has made too many requests for a given operation.</p>
        capo_cognito_identity_provider.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_cognito_identity_provider.types.list_user_pool_client_secrets_request.ListUserPoolClientSecretsRequest]",
    ) -> OperationResponse[
        "capo_cognito_identity_provider.types.list_user_pool_client_secrets_response.ListUserPoolClientSecretsResponse"
    ]:
        import capo_cognito_identity_provider._operations.aws_cognito_identity_provider_service.list_user_pool_client_secrets

        output, http_response = (
            capo_cognito_identity_provider._operations.aws_cognito_identity_provider_service.list_user_pool_client_secrets.list_user_pool_client_secrets(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    def _redact_input(
        input_: "capo_cognito_identity_provider.types.list_user_pool_client_secrets_request.ListUserPoolClientSecretsRequest",
    ) -> dict[str, Any]:
        import capo_cognito_identity_provider.types.list_user_pool_client_secrets_request

        return capo_cognito_identity_provider.types.list_user_pool_client_secrets_request.redact_sensitive(
            input_
        )

    def _redact_output(
        output: "capo_cognito_identity_provider.types.list_user_pool_client_secrets_response.ListUserPoolClientSecretsResponse",
    ) -> dict[str, Any]:
        import capo_cognito_identity_provider.types.list_user_pool_client_secrets_response

        return capo_cognito_identity_provider.types.list_user_pool_client_secrets_response.redact_sensitive(
            output
        )

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging(
            "ListUserPoolClientSecrets",
            redact_input=_redact_input,
            redact_output=_redact_output,
        ),
    )
    input_: capo_cognito_identity_provider.types.list_user_pool_client_secrets_request.ListUserPoolClientSecretsRequest = {
        "user_pool_id": user_pool_id,
        "client_id": client_id,
    }
    if next_token is not None:
        input_["next_token"] = next_token

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output