Skip to content

describe_knowledge_base

describe_knowledge_base(
    aws_account_id: KbAwsAccountId,
    knowledge_base_id: KnowledgeBaseId,
    *,
    config_overrides: Optional[QuickSightClientConfig] = None,
) -> DescribeKnowledgeBaseResponse

Describes a knowledge base.

Parameters:

  • aws_account_id (KbAwsAccountId) –

    The ID of the Amazon Web Services account that contains the knowledge base.

  • knowledge_base_id (KnowledgeBaseId) –

    The unique identifier for the knowledge base.

Raises:

Source code in docs_src/capo_quicksight/_services/quick_sight.py
def describe_knowledge_base(
    self,
    aws_account_id: "capo_quicksight.types.kb_aws_account_id.KbAwsAccountId",
    knowledge_base_id: "capo_quicksight.types.knowledge_base_id.KnowledgeBaseId",
    *,
    config_overrides: Optional[QuickSightClientConfig] = None,
) -> "capo_quicksight.types.describe_knowledge_base_response.DescribeKnowledgeBaseResponse":
    """<p>Describes a knowledge base.</p>

    Args:
        aws_account_id: <p>The ID of the Amazon Web Services account that contains the knowledge base.</p>
        knowledge_base_id: <p>The unique identifier for the knowledge base.</p>

    Raises:
        capo_quicksight.errors.access_denied_exception.AccessDeniedException: <p>You don't have access to this item. The provided credentials couldn't be validated. You might not be authorized to carry out the request. Make sure that your account is authorized to use the Amazon Quick Sight service, that your policies have the correct permissions, and that you are using the correct credentials.</p>
        capo_quicksight.errors.internal_failure_exception.InternalFailureException: <p>An internal failure occurred.</p>
        capo_quicksight.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One or more parameters has a value that isn't valid.</p>
        capo_quicksight.errors.invalid_request_exception.InvalidRequestException: <p>You don't have this feature activated for your account. To fix this issue, contact Amazon Web Services support.</p>
        capo_quicksight.errors.limit_exceeded_exception.LimitExceededException: <p>A limit is exceeded.</p>
        capo_quicksight.errors.precondition_not_met_exception.PreconditionNotMetException: <p>One or more preconditions aren't met.</p>
        capo_quicksight.errors.resource_not_found_exception.ResourceNotFoundException: <p>One or more resources can't be found.</p>
        capo_quicksight.errors.throttling_exception.ThrottlingException: <p>Access is throttled.</p>
        capo_quicksight.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_quicksight.types.describe_knowledge_base_request.DescribeKnowledgeBaseRequest]",
    ) -> OperationResponse[
        "capo_quicksight.types.describe_knowledge_base_response.DescribeKnowledgeBaseResponse"
    ]:
        import capo_quicksight._operations.quick_sight_20180401.describe_knowledge_base

        output, http_response = (
            capo_quicksight._operations.quick_sight_20180401.describe_knowledge_base.describe_knowledge_base(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    def _redact_output(
        output: "capo_quicksight.types.describe_knowledge_base_response.DescribeKnowledgeBaseResponse",
    ) -> dict[str, Any]:
        import capo_quicksight.types.describe_knowledge_base_response

        return (
            capo_quicksight.types.describe_knowledge_base_response.redact_sensitive(
                output
            )
        )

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging("DescribeKnowledgeBase", redact_output=_redact_output),
    )
    input_: capo_quicksight.types.describe_knowledge_base_request.DescribeKnowledgeBaseRequest = {
        "aws_account_id": aws_account_id,
        "knowledge_base_id": knowledge_base_id,
    }

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