Skip to content

describe_app_version_resource

describe_app_version_resource(
    app_arn: Arn,
    app_version: EntityVersion,
    *,
    config_overrides: Optional[resiliencehubClientConfig] = None,
    resource_name: Optional[EntityName] = None,
    logical_resource_id: Optional[LogicalResourceId] = None,
    physical_resource_id: Optional[String2048] = None,
    aws_region: Optional[AwsRegion] = None,
    aws_account_id: Optional[CustomerId] = None,
) -> DescribeAppVersionResourceResponse

Describes a resource of the Resilience Hub application.

This API accepts only one of the following parameters to describe the resource:

  • resourceName

  • logicalResourceId

  • physicalResourceId (Along with physicalResourceId, you can also provide awsAccountId, and awsRegion)

Parameters:

  • app_arn (Arn) –

    Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:partition:resiliencehub:region:account:app/app-id. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

  • app_version (EntityVersion) –

    Resilience Hub application version.

  • resource_name (Optional[EntityName], default: None ) –

    Name of the resource.

  • logical_resource_id (Optional[LogicalResourceId], default: None ) –

    Logical identifier of the resource.

  • physical_resource_id (Optional[String2048], default: None ) –

    Physical identifier of the resource.

  • aws_region (Optional[AwsRegion], default: None ) –

    Amazon Web Services region that owns the physical resource.

  • aws_account_id (Optional[CustomerId], default: None ) –

    Amazon Web Services account that owns the physical resource.

Raises:

  • AccessDeniedException –

    You don't have permissions to perform the requested operation. The user or role that is making the request must have at least one IAM permissions policy attached that grants the required permissions.

  • ConflictException –

    This exception occurs when a conflict with a previous successful write is detected. This generally occurs when the previous write did not have time to propagate to the host serving the current request. A retry (with appropriate backoff logic) is the recommended response to this exception.

  • InternalServerException –

    This exception occurs when there is an internal failure in the Resilience Hub service.

  • ResourceNotFoundException –

    This exception occurs when the specified resource could not be found.

  • ThrottlingException –

    This exception occurs when you have exceeded the limit on the number of requests per second.

  • ValidationException –

    This exception occurs when a request is not valid.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_resiliencehub/_services/resiliencehub.py
def describe_app_version_resource(
    self,
    app_arn: "capo_resiliencehub.types.arn.Arn",
    app_version: "capo_resiliencehub.types.entity_version.EntityVersion",
    *,
    config_overrides: Optional[resiliencehubClientConfig] = None,
    resource_name: Optional[
        "capo_resiliencehub.types.entity_name.EntityName"
    ] = None,
    logical_resource_id: Optional[
        "capo_resiliencehub.types.logical_resource_id.LogicalResourceId"
    ] = None,
    physical_resource_id: Optional[
        "capo_resiliencehub.types.string2048.String2048"
    ] = None,
    aws_region: Optional["capo_resiliencehub.types.aws_region.AwsRegion"] = None,
    aws_account_id: Optional[
        "capo_resiliencehub.types.customer_id.CustomerId"
    ] = None,
) -> "capo_resiliencehub.types.describe_app_version_resource_response.DescribeAppVersionResourceResponse":
    """<p>Describes a resource of the Resilience Hub application.</p> <note> <p>This API accepts only one of the following parameters to describe the resource:</p> <ul> <li> <p> <code>resourceName</code> </p> </li> <li> <p> <code>logicalResourceId</code> </p> </li> <li> <p> <code>physicalResourceId</code> (Along with <code>physicalResourceId</code>, you can also provide <code>awsAccountId</code>, and <code>awsRegion</code>)</p> </li> </ul> </note>

    Args:
        app_arn: <p>Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:<code>partition</code>:resiliencehub:<code>region</code>:<code>account</code>:app/<code>app-id</code>. For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html"> Amazon Resource Names (ARNs)</a> in the <i>Amazon Web Services General Reference</i> guide.</p>
        app_version: <p>Resilience Hub application version.</p>
        resource_name: <p>Name of the resource.</p>
        logical_resource_id: <p>Logical identifier of the resource.</p>
        physical_resource_id: <p>Physical identifier of the resource.</p>
        aws_region: <p>Amazon Web Services region that owns the physical resource.</p>
        aws_account_id: <p>Amazon Web Services account that owns the physical resource.</p>

    Raises:
        capo_resiliencehub.errors.access_denied_exception.AccessDeniedException: <p>You don't have permissions to perform the requested operation. The user or role that is making the request must have at least one IAM permissions policy attached that grants the required permissions.</p>
        capo_resiliencehub.errors.conflict_exception.ConflictException: <p>This exception occurs when a conflict with a previous successful write is detected. This generally occurs when the previous write did not have time to propagate to the host serving the current request. A retry (with appropriate backoff logic) is the recommended response to this exception.</p>
        capo_resiliencehub.errors.internal_server_exception.InternalServerException: <p>This exception occurs when there is an internal failure in the Resilience Hub service.</p>
        capo_resiliencehub.errors.resource_not_found_exception.ResourceNotFoundException: <p>This exception occurs when the specified resource could not be found.</p>
        capo_resiliencehub.errors.throttling_exception.ThrottlingException: <p>This exception occurs when you have exceeded the limit on the number of requests per second.</p>
        capo_resiliencehub.errors.validation_exception.ValidationException: <p>This exception occurs when a request is not valid.</p>
        capo_resiliencehub.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_resiliencehub.types.describe_app_version_resource_request.DescribeAppVersionResourceRequest]",
    ) -> OperationResponse[
        "capo_resiliencehub.types.describe_app_version_resource_response.DescribeAppVersionResourceResponse"
    ]:
        import capo_resiliencehub._operations.aws_resilience_hub.describe_app_version_resource

        output, http_response = (
            capo_resiliencehub._operations.aws_resilience_hub.describe_app_version_resource.describe_app_version_resource(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DescribeAppVersionResource")
    )
    input_: capo_resiliencehub.types.describe_app_version_resource_request.DescribeAppVersionResourceRequest = {
        "app_arn": app_arn,
        "app_version": app_version,
    }
    if resource_name is not None:
        input_["resource_name"] = resource_name
    if logical_resource_id is not None:
        input_["logical_resource_id"] = logical_resource_id
    if physical_resource_id is not None:
        input_["physical_resource_id"] = physical_resource_id
    if aws_region is not None:
        input_["aws_region"] = aws_region
    if aws_account_id is not None:
        input_["aws_account_id"] = aws_account_id

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