AWS Resilience Hub

2024/08/02 - AWS Resilience Hub - 5 new 10 updated api methods

Changes  Customers are presented with the grouping recommendations and can determine if the recommendations are accurate and apply to their case. This feature simplifies onboarding by organizing resources into appropriate AppComponents.

StartResourceGroupingRecommendationTask (new) Link ¶

Starts grouping recommendation task.

See also: AWS API Documentation

Request Syntax

client.start_resource_grouping_recommendation_task(
    appArn='string'
)
type appArn

string

param appArn

[REQUIRED]

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.

rtype

dict

returns

Response Syntax

{
    'appArn': 'string',
    'errorMessage': 'string',
    'groupingId': 'string',
    'status': 'Pending'|'InProgress'|'Failed'|'Success'
}

Response Structure

  • (dict) --

    • appArn (string) --

      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.

    • errorMessage (string) --

      Indicates the error that occurred while executing a grouping recommendation task.

    • groupingId (string) --

      Indicates the identifier of the grouping recommendation task.

    • status (string) --

      Status of the action.

AcceptResourceGroupingRecommendations (new) Link ¶

Accepts the resource grouping recommendations suggested by Resilience Hub for your application.

See also: AWS API Documentation

Request Syntax

client.accept_resource_grouping_recommendations(
    appArn='string',
    entries=[
        {
            'groupingRecommendationId': 'string'
        },
    ]
)
type appArn

string

param appArn

[REQUIRED]

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.

type entries

list

param entries

[REQUIRED]

Indicates the list of resource grouping recommendations you want to include in your application.

  • (dict) --

    Indicates the grouping recommendation you have accepted to include in your application.

    • groupingRecommendationId (string) -- [REQUIRED]

      Indicates the identifier of the grouping recommendation.

rtype

dict

returns

Response Syntax

{
    'appArn': 'string',
    'failedEntries': [
        {
            'errorMessage': 'string',
            'groupingRecommendationId': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • appArn (string) --

      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.

    • failedEntries (list) --

      Indicates the list of resource grouping recommendations that could not be included in your application.

      • (dict) --

        Indicates the accepted grouping recommendation whose implementation failed.

        • errorMessage (string) --

          Indicates the error that occurred while implementing a grouping recommendation.

        • groupingRecommendationId (string) --

          Indicates the identifier of the grouping recommendation.

DescribeResourceGroupingRecommendationTask (new) Link ¶

Describes the resource grouping recommendation tasks run by Resilience Hub for your application.

See also: AWS API Documentation

Request Syntax

client.describe_resource_grouping_recommendation_task(
    appArn='string',
    groupingId='string'
)
type appArn

string

param appArn

[REQUIRED]

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.

type groupingId

string

param groupingId

Indicates the identifier of the grouping recommendation task.

rtype

dict

returns

Response Syntax

{
    'errorMessage': 'string',
    'groupingId': 'string',
    'status': 'Pending'|'InProgress'|'Failed'|'Success'
}

Response Structure

  • (dict) --

    • errorMessage (string) --

      Indicates the error that occurred while generating a grouping recommendation.

    • groupingId (string) --

      Indicates the identifier of the grouping recommendation task.

    • status (string) --

      Status of the action.

RejectResourceGroupingRecommendations (new) Link ¶

Rejects resource grouping recommendations.

See also: AWS API Documentation

Request Syntax

client.reject_resource_grouping_recommendations(
    appArn='string',
    entries=[
        {
            'groupingRecommendationId': 'string',
            'rejectionReason': 'DistinctBusinessPurpose'|'SeparateDataConcern'|'DistinctUserGroupHandling'|'Other'
        },
    ]
)
type appArn

string

param appArn

[REQUIRED]

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.

type entries

list

param entries

[REQUIRED]

Indicates the list of resource grouping recommendations you have selected to exclude from your application.

  • (dict) --

    Indicates the rejected grouping recommendation.

    • groupingRecommendationId (string) -- [REQUIRED]

      Indicates the identifier of the grouping recommendation.

    • rejectionReason (string) --

      Indicates the reason you had selected while rejecting a grouping recommendation.

rtype

dict

returns

Response Syntax

{
    'appArn': 'string',
    'failedEntries': [
        {
            'errorMessage': 'string',
            'groupingRecommendationId': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • appArn (string) --

      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.

    • failedEntries (list) --

      Indicates the list of resource grouping recommendations that failed to get excluded in your application.

      • (dict) --

        Indicates the accepted grouping recommendation whose implementation failed.

        • errorMessage (string) --

          Indicates the error that occurred while implementing a grouping recommendation.

        • groupingRecommendationId (string) --

          Indicates the identifier of the grouping recommendation.

ListResourceGroupingRecommendations (new) Link ¶

Lists the resource grouping recommendations suggested by Resilience Hub for your application.

See also: AWS API Documentation

Request Syntax

client.list_resource_grouping_recommendations(
    appArn='string',
    maxResults=123,
    nextToken='string'
)
type appArn

string

param appArn

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.

type maxResults

integer

param maxResults

Maximum number of grouping recommendations to be displayed per Resilience Hub application.

type nextToken

string

param nextToken

Null, or the token from a previous call to get the next set of results.

rtype

dict

returns

Response Syntax

{
    'groupingRecommendations': [
        {
            'confidenceLevel': 'High'|'Medium',
            'creationTime': datetime(2015, 1, 1),
            'groupingAppComponent': {
                'appComponentId': 'string',
                'appComponentName': 'string',
                'appComponentType': 'string'
            },
            'groupingRecommendationId': 'string',
            'recommendationReasons': [
                'string',
            ],
            'rejectionReason': 'DistinctBusinessPurpose'|'SeparateDataConcern'|'DistinctUserGroupHandling'|'Other',
            'resources': [
                {
                    'logicalResourceId': {
                        'eksSourceName': 'string',
                        'identifier': 'string',
                        'logicalStackName': 'string',
                        'resourceGroupName': 'string',
                        'terraformSourceName': 'string'
                    },
                    'physicalResourceId': {
                        'awsAccountId': 'string',
                        'awsRegion': 'string',
                        'identifier': 'string',
                        'type': 'Arn'|'Native'
                    },
                    'resourceName': 'string',
                    'resourceType': 'string',
                    'sourceAppComponentIds': [
                        'string',
                    ]
                },
            ],
            'score': 123.0,
            'status': 'Accepted'|'Rejected'|'PendingDecision'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • groupingRecommendations (list) --

      List of resource grouping recommendations generated by Resilience Hub.

      • (dict) --

        Creates a new grouping recommendation.

        • confidenceLevel (string) --

          Indicates the confidence level of Resilience Hub on the grouping recommendation.

        • creationTime (datetime) --

          Indicates the creation time of the grouping recommendation.

        • groupingAppComponent (dict) --

          Indicates the name of the recommended Application Component (AppComponent).

          • appComponentId (string) --

            Indicates the identifier of an AppComponent.

          • appComponentName (string) --

            Indicates the name of an AppComponent.

          • appComponentType (string) --

            Indicates the type of an AppComponent.

        • groupingRecommendationId (string) --

          Indicates all the reasons available for rejecting a grouping recommendation.

        • recommendationReasons (list) --

          Indicates all the reasons available for rejecting a grouping recommendation.

          • (string) --

        • rejectionReason (string) --

          Indicates the reason you had selected while rejecting a grouping recommendation.

        • resources (list) --

          Indicates the resources that are grouped in a recommended AppComponent.

          • (dict) --

            Indicates the resource that will be grouped in the recommended Application Component (AppComponent).

            • logicalResourceId (dict) --

              Indicates the logical identifier of the resource.

              • eksSourceName (string) --

                Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.

                Note

                This parameter accepts values in "eks-cluster/namespace" format.

              • identifier (string) --

                Identifier of the resource.

              • logicalStackName (string) --

                The name of the CloudFormation stack this resource belongs to.

              • resourceGroupName (string) --

                The name of the resource group that this resource belongs to.

              • terraformSourceName (string) --

                The name of the Terraform S3 state file this resource belongs to.

            • physicalResourceId (dict) --

              Indicates the physical identifier of the resource.

              • awsAccountId (string) --

                The Amazon Web Services account that owns the physical resource.

              • awsRegion (string) --

                The Amazon Web Services Region that the physical resource is located in.

              • identifier (string) --

                Identifier of the physical resource.

              • type (string) --

                Specifies the type of physical resource identifier.

                Arn

                The resource identifier is an Amazon Resource Name (ARN) and it can identify the following list of resources:

                • AWS::ECS::Service

                • AWS::EFS::FileSystem

                • AWS::ElasticLoadBalancingV2::LoadBalancer

                • AWS::Lambda::Function

                • AWS::SNS::Topic

                  Native

                The resource identifier is an Resilience Hub-native identifier and it can identify the following list of resources:

                • AWS::ApiGateway::RestApi

                • AWS::ApiGatewayV2::Api

                • AWS::AutoScaling::AutoScalingGroup

                • AWS::DocDB::DBCluster

                • AWS::DocDB::DBGlobalCluster

                • AWS::DocDB::DBInstance

                • AWS::DynamoDB::GlobalTable

                • AWS::DynamoDB::Table

                • AWS::EC2::EC2Fleet

                • AWS::EC2::Instance

                • AWS::EC2::NatGateway

                • AWS::EC2::Volume

                • AWS::ElasticLoadBalancing::LoadBalancer

                • AWS::RDS::DBCluster

                • AWS::RDS::DBInstance

                • AWS::RDS::GlobalCluster

                • AWS::Route53::RecordSet

                • AWS::S3::Bucket

                • AWS::SQS::Queue

            • resourceName (string) --

              Indicates the resource name.

            • resourceType (string) --

              Indicates the resource type.

            • sourceAppComponentIds (list) --

              Indicates the identifier of the source AppComponents in which the resources were previously grouped into.

              • (string) --

        • score (float) --

          Indicates the confidence level of the grouping recommendation.

        • status (string) --

          Indicates the status of grouping resources into AppComponents.

    • nextToken (string) --

      Null, or the token from a previous call to get the next set of results.

CreateApp (updated) Link ¶
Changes (response)
{'app': {'complianceStatus': {'MissingPolicy', 'NotApplicable'}}}

Creates an Resilience Hub application. An Resilience Hub application is a collection of Amazon Web Services resources structured to prevent and recover Amazon Web Services application disruptions. To describe a Resilience Hub application, you provide an application name, resources from one or more CloudFormation stacks, Resource Groups, Terraform state files, AppRegistry applications, and an appropriate resiliency policy. In addition, you can also add resources that are located on Amazon Elastic Kubernetes Service (Amazon EKS) clusters as optional resources. For more information about the number of resources supported per application, see Service quotas.

After you create an Resilience Hub application, you publish it so that you can run a resiliency assessment on it. You can then use recommendations from the assessment to improve resiliency by running another assessment, comparing results, and then iterating the process until you achieve your goals for recovery time objective (RTO) and recovery point objective (RPO).

See also: AWS API Documentation

Request Syntax

client.create_app(
    assessmentSchedule='Disabled'|'Daily',
    clientToken='string',
    description='string',
    eventSubscriptions=[
        {
            'eventType': 'ScheduledAssessmentFailure'|'DriftDetected',
            'name': 'string',
            'snsTopicArn': 'string'
        },
    ],
    name='string',
    permissionModel={
        'crossAccountRoleArns': [
            'string',
        ],
        'invokerRoleName': 'string',
        'type': 'LegacyIAMUser'|'RoleBased'
    },
    policyArn='string',
    tags={
        'string': 'string'
    }
)
type assessmentSchedule

string

param assessmentSchedule

Assessment execution schedule with 'Daily' or 'Disabled' values.

type clientToken

string

param clientToken

Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

This field is autopopulated if not provided.

type description

string

param description

The optional description for an app.

type eventSubscriptions

list

param eventSubscriptions

The list of events you would like to subscribe and get notification for. Currently, Resilience Hub supports only Drift detected and Scheduled assessment failure events notification.

  • (dict) --

    Indicates an event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

    • eventType (string) -- [REQUIRED]

      The type of event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected ( DriftDetected ) and Scheduled assessment failure ( ScheduledAssessmentFailure ) events.

    • name (string) -- [REQUIRED]

      Unique name to identify an event subscription.

    • snsTopicArn (string) --

      Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. The format for this ARN is: arn:partition:sns:region:account:topic-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

type name

string

param name

[REQUIRED]

Name of the application.

type permissionModel

dict

param permissionModel

Defines the roles and credentials that Resilience Hub would use while creating the application, importing its resources, and running an assessment.

  • crossAccountRoleArns (list) --

    Defines a list of role Amazon Resource Names (ARNs) to be used in other accounts. These ARNs are used for querying purposes while importing resources and assessing your application.

    Note

    • These ARNs are required only when your resources are in other accounts and you have different role name in these accounts. Else, the invoker role name will be used in the other accounts.

    • These roles must have a trust policy with iam:AssumeRole permission to the invoker role in the primary account.

    • (string) --

  • invokerRoleName (string) --

    Existing Amazon Web Services IAM role name in the primary Amazon Web Services account that will be assumed by Resilience Hub Service Principle to obtain a read-only access to your application resources while running an assessment.

    Note

    • You must have iam:passRole permission for this role while creating or updating the application.

    • Currently, invokerRoleName accepts only [A-Za-z0-9_+=,.@-] characters.

  • type (string) -- [REQUIRED]

    Defines how Resilience Hub scans your resources. It can scan for the resources by using a pre-existing role in your Amazon Web Services account, or by using the credentials of the current IAM user.

type policyArn

string

param policyArn

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

type tags

dict

param tags

Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'app': {
        'appArn': 'string',
        'assessmentSchedule': 'Disabled'|'Daily',
        'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotAssessed'|'ChangesDetected'|'NotApplicable'|'MissingPolicy',
        'creationTime': datetime(2015, 1, 1),
        'description': 'string',
        'driftStatus': 'NotChecked'|'NotDetected'|'Detected',
        'eventSubscriptions': [
            {
                'eventType': 'ScheduledAssessmentFailure'|'DriftDetected',
                'name': 'string',
                'snsTopicArn': 'string'
            },
        ],
        'lastAppComplianceEvaluationTime': datetime(2015, 1, 1),
        'lastDriftEvaluationTime': datetime(2015, 1, 1),
        'lastResiliencyScoreEvaluationTime': datetime(2015, 1, 1),
        'name': 'string',
        'permissionModel': {
            'crossAccountRoleArns': [
                'string',
            ],
            'invokerRoleName': 'string',
            'type': 'LegacyIAMUser'|'RoleBased'
        },
        'policyArn': 'string',
        'resiliencyScore': 123.0,
        'rpoInSecs': 123,
        'rtoInSecs': 123,
        'status': 'Active'|'Deleting',
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • app (dict) --

      The created application returned as an object with details including compliance status, creation time, description, resiliency score, and more.

      • appArn (string) --

        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.

      • assessmentSchedule (string) --

        Assessment execution schedule with 'Daily' or 'Disabled' values.

      • complianceStatus (string) --

        Current status of compliance for the resiliency policy.

      • creationTime (datetime) --

        Date and time when the app was created.

      • description (string) --

        Optional description for an application.

      • driftStatus (string) --

        Indicates if compliance drifts (deviations) were detected while running an assessment for your application.

      • eventSubscriptions (list) --

        The list of events you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

        • (dict) --

          Indicates an event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

          • eventType (string) --

            The type of event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected ( DriftDetected ) and Scheduled assessment failure ( ScheduledAssessmentFailure ) events.

          • name (string) --

            Unique name to identify an event subscription.

          • snsTopicArn (string) --

            Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. The format for this ARN is: arn:partition:sns:region:account:topic-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

      • lastAppComplianceEvaluationTime (datetime) --

        Date and time the most recent compliance evaluation.

      • lastDriftEvaluationTime (datetime) --

        Indicates the last time that a drift was evaluated.

      • lastResiliencyScoreEvaluationTime (datetime) --

        Date and time the most recent resiliency score evaluation.

      • name (string) --

        Name for the application.

      • permissionModel (dict) --

        Defines the roles and credentials that Resilience Hub would use while creating the application, importing its resources, and running an assessment.

        • crossAccountRoleArns (list) --

          Defines a list of role Amazon Resource Names (ARNs) to be used in other accounts. These ARNs are used for querying purposes while importing resources and assessing your application.

          Note

          • These ARNs are required only when your resources are in other accounts and you have different role name in these accounts. Else, the invoker role name will be used in the other accounts.

          • These roles must have a trust policy with iam:AssumeRole permission to the invoker role in the primary account.

          • (string) --

        • invokerRoleName (string) --

          Existing Amazon Web Services IAM role name in the primary Amazon Web Services account that will be assumed by Resilience Hub Service Principle to obtain a read-only access to your application resources while running an assessment.

          Note

          • You must have iam:passRole permission for this role while creating or updating the application.

          • Currently, invokerRoleName accepts only [A-Za-z0-9_+=,.@-] characters.

        • type (string) --

          Defines how Resilience Hub scans your resources. It can scan for the resources by using a pre-existing role in your Amazon Web Services account, or by using the credentials of the current IAM user.

      • policyArn (string) --

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

      • resiliencyScore (float) --

        Current resiliency score for the application.

      • rpoInSecs (integer) --

        Recovery Point Objective (RPO) in seconds.

      • rtoInSecs (integer) --

        Recovery Time Objective (RTO) in seconds.

      • status (string) --

        Status of the application.

      • tags (dict) --

        Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

        • (string) --

          • (string) --

DescribeApp (updated) Link ¶
Changes (response)
{'app': {'complianceStatus': {'MissingPolicy', 'NotApplicable'}}}

Describes an Resilience Hub application.

See also: AWS API Documentation

Request Syntax

client.describe_app(
    appArn='string'
)
type appArn

string

param appArn

[REQUIRED]

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.

rtype

dict

returns

Response Syntax

{
    'app': {
        'appArn': 'string',
        'assessmentSchedule': 'Disabled'|'Daily',
        'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotAssessed'|'ChangesDetected'|'NotApplicable'|'MissingPolicy',
        'creationTime': datetime(2015, 1, 1),
        'description': 'string',
        'driftStatus': 'NotChecked'|'NotDetected'|'Detected',
        'eventSubscriptions': [
            {
                'eventType': 'ScheduledAssessmentFailure'|'DriftDetected',
                'name': 'string',
                'snsTopicArn': 'string'
            },
        ],
        'lastAppComplianceEvaluationTime': datetime(2015, 1, 1),
        'lastDriftEvaluationTime': datetime(2015, 1, 1),
        'lastResiliencyScoreEvaluationTime': datetime(2015, 1, 1),
        'name': 'string',
        'permissionModel': {
            'crossAccountRoleArns': [
                'string',
            ],
            'invokerRoleName': 'string',
            'type': 'LegacyIAMUser'|'RoleBased'
        },
        'policyArn': 'string',
        'resiliencyScore': 123.0,
        'rpoInSecs': 123,
        'rtoInSecs': 123,
        'status': 'Active'|'Deleting',
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • app (dict) --

      The specified application, returned as an object with details including compliance status, creation time, description, resiliency score, and more.

      • appArn (string) --

        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.

      • assessmentSchedule (string) --

        Assessment execution schedule with 'Daily' or 'Disabled' values.

      • complianceStatus (string) --

        Current status of compliance for the resiliency policy.

      • creationTime (datetime) --

        Date and time when the app was created.

      • description (string) --

        Optional description for an application.

      • driftStatus (string) --

        Indicates if compliance drifts (deviations) were detected while running an assessment for your application.

      • eventSubscriptions (list) --

        The list of events you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

        • (dict) --

          Indicates an event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

          • eventType (string) --

            The type of event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected ( DriftDetected ) and Scheduled assessment failure ( ScheduledAssessmentFailure ) events.

          • name (string) --

            Unique name to identify an event subscription.

          • snsTopicArn (string) --

            Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. The format for this ARN is: arn:partition:sns:region:account:topic-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

      • lastAppComplianceEvaluationTime (datetime) --

        Date and time the most recent compliance evaluation.

      • lastDriftEvaluationTime (datetime) --

        Indicates the last time that a drift was evaluated.

      • lastResiliencyScoreEvaluationTime (datetime) --

        Date and time the most recent resiliency score evaluation.

      • name (string) --

        Name for the application.

      • permissionModel (dict) --

        Defines the roles and credentials that Resilience Hub would use while creating the application, importing its resources, and running an assessment.

        • crossAccountRoleArns (list) --

          Defines a list of role Amazon Resource Names (ARNs) to be used in other accounts. These ARNs are used for querying purposes while importing resources and assessing your application.

          Note

          • These ARNs are required only when your resources are in other accounts and you have different role name in these accounts. Else, the invoker role name will be used in the other accounts.

          • These roles must have a trust policy with iam:AssumeRole permission to the invoker role in the primary account.

          • (string) --

        • invokerRoleName (string) --

          Existing Amazon Web Services IAM role name in the primary Amazon Web Services account that will be assumed by Resilience Hub Service Principle to obtain a read-only access to your application resources while running an assessment.

          Note

          • You must have iam:passRole permission for this role while creating or updating the application.

          • Currently, invokerRoleName accepts only [A-Za-z0-9_+=,.@-] characters.

        • type (string) --

          Defines how Resilience Hub scans your resources. It can scan for the resources by using a pre-existing role in your Amazon Web Services account, or by using the credentials of the current IAM user.

      • policyArn (string) --

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

      • resiliencyScore (float) --

        Current resiliency score for the application.

      • rpoInSecs (integer) --

        Recovery Point Objective (RPO) in seconds.

      • rtoInSecs (integer) --

        Recovery Time Objective (RTO) in seconds.

      • status (string) --

        Status of the application.

      • tags (dict) --

        Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

        • (string) --

          • (string) --

DescribeAppAssessment (updated) Link ¶
Changes (response)
{'assessment': {'compliance': {'complianceStatus': {'MissingPolicy',
                                                    'NotApplicable'}},
                'complianceStatus': {'MissingPolicy', 'NotApplicable'},
                'summary': {'riskRecommendations': [{'appComponents': ['string'],
                                                     'recommendation': 'string',
                                                     'risk': 'string'}],
                            'summary': 'string'}}}

Describes an assessment for an Resilience Hub application.

See also: AWS API Documentation

Request Syntax

client.describe_app_assessment(
    assessmentArn='string'
)
type assessmentArn

string

param assessmentArn

[REQUIRED]

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

rtype

dict

returns

Response Syntax

{
    'assessment': {
        'appArn': 'string',
        'appVersion': 'string',
        'assessmentArn': 'string',
        'assessmentName': 'string',
        'assessmentStatus': 'Pending'|'InProgress'|'Failed'|'Success',
        'compliance': {
            'string': {
                'achievableRpoInSecs': 123,
                'achievableRtoInSecs': 123,
                'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
                'currentRpoInSecs': 123,
                'currentRtoInSecs': 123,
                'message': 'string',
                'rpoDescription': 'string',
                'rpoReferenceId': 'string',
                'rtoDescription': 'string',
                'rtoReferenceId': 'string'
            }
        },
        'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
        'cost': {
            'amount': 123.0,
            'currency': 'string',
            'frequency': 'Hourly'|'Daily'|'Monthly'|'Yearly'
        },
        'driftStatus': 'NotChecked'|'NotDetected'|'Detected',
        'endTime': datetime(2015, 1, 1),
        'invoker': 'User'|'System',
        'message': 'string',
        'policy': {
            'creationTime': datetime(2015, 1, 1),
            'dataLocationConstraint': 'AnyLocation'|'SameContinent'|'SameCountry',
            'estimatedCostTier': 'L1'|'L2'|'L3'|'L4',
            'policy': {
                'string': {
                    'rpoInSecs': 123,
                    'rtoInSecs': 123
                }
            },
            'policyArn': 'string',
            'policyDescription': 'string',
            'policyName': 'string',
            'tags': {
                'string': 'string'
            },
            'tier': 'MissionCritical'|'Critical'|'Important'|'CoreServices'|'NonCritical'|'NotApplicable'
        },
        'resiliencyScore': {
            'componentScore': {
                'string': {
                    'excludedCount': 123,
                    'outstandingCount': 123,
                    'possibleScore': 123.0,
                    'score': 123.0
                }
            },
            'disruptionScore': {
                'string': 123.0
            },
            'score': 123.0
        },
        'resourceErrorsDetails': {
            'hasMoreErrors': True|False,
            'resourceErrors': [
                {
                    'logicalResourceId': 'string',
                    'physicalResourceId': 'string',
                    'reason': 'string'
                },
            ]
        },
        'startTime': datetime(2015, 1, 1),
        'summary': {
            'riskRecommendations': [
                {
                    'appComponents': [
                        'string',
                    ],
                    'recommendation': 'string',
                    'risk': 'string'
                },
            ],
            'summary': 'string'
        },
        'tags': {
            'string': 'string'
        },
        'versionName': 'string'
    }
}

Response Structure

  • (dict) --

    • assessment (dict) --

      The assessment for an Resilience Hub application, returned as an object. This object includes Amazon Resource Names (ARNs), compliance information, compliance status, cost, messages, resiliency scores, and more.

      • appArn (string) --

        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.

      • appVersion (string) --

        Version of an application.

      • assessmentArn (string) --

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

      • assessmentName (string) --

        Name of the assessment.

      • assessmentStatus (string) --

        Current status of the assessment for the resiliency policy.

      • compliance (dict) --

        Application compliance against the resiliency policy.

        • (string) --

          • (dict) --

            Defines the compliance against the resiliency policy for a disruption.

            • achievableRpoInSecs (integer) --

              The Recovery Point Objective (RPO) that is achievable, in seconds.

            • achievableRtoInSecs (integer) --

              The Recovery Time Objective (RTO) that is achievable, in seconds

            • complianceStatus (string) --

              The current status of compliance for the resiliency policy.

            • currentRpoInSecs (integer) --

              The current RPO, in seconds.

            • currentRtoInSecs (integer) --

              The current RTO, in seconds.

            • message (string) --

              The disruption compliance message.

            • rpoDescription (string) --

              The RPO description.

            • rpoReferenceId (string) --

              Reference identifier of the RPO .

            • rtoDescription (string) --

              The RTO description.

            • rtoReferenceId (string) --

              Reference identifier of the RTO.

      • complianceStatus (string) --

        Current status of the compliance for the resiliency policy.

      • cost (dict) --

        Cost for the application.

        • amount (float) --

          The cost amount.

        • currency (string) --

          The cost currency, for example USD .

        • frequency (string) --

          The cost frequency.

      • driftStatus (string) --

        Indicates if compliance drifts (deviations) were detected while running an assessment for your application.

      • endTime (datetime) --

        End time for the action.

      • invoker (string) --

        The entity that invoked the assessment.

      • message (string) --

        Error or warning message from the assessment execution

      • policy (dict) --

        Resiliency policy of an application.

        • creationTime (datetime) --

          Date and time when the resiliency policy was created.

        • dataLocationConstraint (string) --

          Specifies a high-level geographical location constraint for where your resilience policy data can be stored.

        • estimatedCostTier (string) --

          Specifies the estimated cost tier of the resiliency policy.

        • policy (dict) --

          The resiliency policy.

          • (string) --

            • (dict) --

              Defines a failure policy.

              • rpoInSecs (integer) --

                Recovery Point Objective (RPO) in seconds.

              • rtoInSecs (integer) --

                Recovery Time Objective (RTO) in seconds.

        • policyArn (string) --

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

        • policyDescription (string) --

          The description for the policy.

        • policyName (string) --

          The name of the policy

        • tags (dict) --

          Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

          • (string) --

            • (string) --

        • tier (string) --

          The tier for this resiliency policy, ranging from the highest severity ( MissionCritical ) to lowest ( NonCritical ).

      • resiliencyScore (dict) --

        Current resiliency score for an application.

        • componentScore (dict) --

          The score generated by Resilience Hub for the scoring component after running an assessment.

          For example, if the score is 25 points, it indicates the overall score of your application generated by Resilience Hub after running an assessment.

          • (string) --

            • (dict) --

              Resiliency score of each scoring component. For more information about scoring component, see Calculating resiliency score.

              • excludedCount (integer) --

                Number of recommendations that were excluded from the assessment.

                For example, if the excludedCount for Alarms coverage scoring component is 7, it indicates that 7 Amazon CloudWatch alarms are excluded from the assessment.

              • outstandingCount (integer) --

                Number of recommendations that must be implemented to obtain the maximum possible score for the scoring component. For SOPs, alarms, and tests, these are the number of recommendations that must be implemented. For compliance, these are the number of Application Components that have breached the resiliency policy.

                For example, if the outstandingCount for Alarms coverage scoring component is 5, it indicates that 5 Amazon CloudWatch alarms need to be implemented to achieve the maximum possible score.

              • possibleScore (float) --

                Maximum possible score that can be obtained for the scoring component.

                For example, if the possibleScore is 20 points, it indicates the maximum possible score you can achieve for the scoring component when you run a new assessment after implementing all the Resilience Hub recommendations.

              • score (float) --

                Resiliency score points given for the scoring component. The score is always less than or equal to the possibleScore .

        • disruptionScore (dict) --

          The disruption score for a valid key.

          • (string) --

            • (float) --

        • score (float) --

          The outage score for a valid key.

      • resourceErrorsDetails (dict) --

        A resource error object containing a list of errors retrieving an application's resources.

        • hasMoreErrors (boolean) --

          This indicates if there are more errors not listed in the resourceErrors list.

        • resourceErrors (list) --

          A list of errors retrieving an application's resources.

          • (dict) --

            Defines application resource errors.

            • logicalResourceId (string) --

              Identifier of the logical resource.

            • physicalResourceId (string) --

              Identifier of the physical resource.

            • reason (string) --

              This is the error message.

      • startTime (datetime) --

        Starting time for the action.

      • summary (dict) --

        Indicates a concise summary that provides an overview of the Resilience Hub assessment.

        • riskRecommendations (list) --

          Indicates the top risks and recommendations identified by the Resilience Hub assessment, each representing a specific risk and the corresponding recommendation to address it.

          Note

          This property is available only in the US East (N. Virginia) Region.

          • (dict) --

            Indicates a specific risk identified in the Resilience Hub assessment and the corresponding recommendation provided to address that risk.

            Note

            The assessment summary generated by large language models (LLMs) on Amazon Bedrock are only suggestions. The current level of generative AI technology is not perfect and LLMs are not infallible. Bias and incorrect answers, although rare, should be expected. Review each recommendation in the assessment summary before you use the output from an LLM.

            Note

            This property is available only in the US East (N. Virginia) Region.

            • appComponents (list) --

              Indicates the Application Components (AppComponents) that were assessed as part of the assessnent and are associated with the identified risk and recommendation.

              Note

              This property is available only in the US East (N. Virginia) Region.

              • (string) --

            • recommendation (string) --

              Indicates the recommendation provided by the Resilience Hub to address the identified risks in the application.

              Note

              This property is available only in the US East (N. Virginia) Region.

            • risk (string) --

              Indicates the description of the potential risk identified in the application as part of the Resilience Hub assessment.

              Note

              This property is available only in the US East (N. Virginia) Region.

        • summary (string) --

          Indicates a concise summary that provides an overview of the Resilience Hub assessment.

          Note

          This property is available only in the US East (N. Virginia) Region.

      • tags (dict) --

        Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

        • (string) --

          • (string) --

      • versionName (string) --

        Version name of the published application.

ListAppAssessmentComplianceDrifts (updated) Link ¶
Changes (response)
{'complianceDrifts': {'actualValue': {'complianceStatus': {'MissingPolicy',
                                                           'NotApplicable'}},
                      'expectedValue': {'complianceStatus': {'MissingPolicy',
                                                             'NotApplicable'}}}}

List of compliance drifts that were detected while running an assessment.

See also: AWS API Documentation

Request Syntax

client.list_app_assessment_compliance_drifts(
    assessmentArn='string',
    maxResults=123,
    nextToken='string'
)
type assessmentArn

string

param assessmentArn

[REQUIRED]

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

type maxResults

integer

param maxResults

Indicates the maximum number of compliance drifts requested.

type nextToken

string

param nextToken

Null, or the token from a previous call to get the next set of results.

rtype

dict

returns

Response Syntax

{
    'complianceDrifts': [
        {
            'actualReferenceId': 'string',
            'actualValue': {
                'string': {
                    'achievableRpoInSecs': 123,
                    'achievableRtoInSecs': 123,
                    'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
                    'currentRpoInSecs': 123,
                    'currentRtoInSecs': 123,
                    'message': 'string',
                    'rpoDescription': 'string',
                    'rpoReferenceId': 'string',
                    'rtoDescription': 'string',
                    'rtoReferenceId': 'string'
                }
            },
            'appId': 'string',
            'appVersion': 'string',
            'diffType': 'NotEqual'|'Added'|'Removed',
            'driftType': 'ApplicationCompliance'|'AppComponentResiliencyComplianceStatus',
            'entityId': 'string',
            'entityType': 'string',
            'expectedReferenceId': 'string',
            'expectedValue': {
                'string': {
                    'achievableRpoInSecs': 123,
                    'achievableRtoInSecs': 123,
                    'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
                    'currentRpoInSecs': 123,
                    'currentRtoInSecs': 123,
                    'message': 'string',
                    'rpoDescription': 'string',
                    'rpoReferenceId': 'string',
                    'rtoDescription': 'string',
                    'rtoReferenceId': 'string'
                }
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • complianceDrifts (list) --

      Indicates compliance drifts (recovery time objective (RTO) and recovery point objective (RPO)) detected for an assessed entity.

      • (dict) --

        Indicates the compliance drifts (recovery time objective (RTO) and recovery point objective (RPO)) that were detected for an assessed entity.

        • actualReferenceId (string) --

          Assessment identifier that is associated with this drift item.

        • actualValue (dict) --

          Actual compliance value of the entity.

          • (string) --

            • (dict) --

              Defines the compliance against the resiliency policy for a disruption.

              • achievableRpoInSecs (integer) --

                The Recovery Point Objective (RPO) that is achievable, in seconds.

              • achievableRtoInSecs (integer) --

                The Recovery Time Objective (RTO) that is achievable, in seconds

              • complianceStatus (string) --

                The current status of compliance for the resiliency policy.

              • currentRpoInSecs (integer) --

                The current RPO, in seconds.

              • currentRtoInSecs (integer) --

                The current RTO, in seconds.

              • message (string) --

                The disruption compliance message.

              • rpoDescription (string) --

                The RPO description.

              • rpoReferenceId (string) --

                Reference identifier of the RPO .

              • rtoDescription (string) --

                The RTO description.

              • rtoReferenceId (string) --

                Reference identifier of the RTO.

        • appId (string) --

          Identifier of your application.

        • appVersion (string) --

          Published version of your application on which drift was detected.

        • diffType (string) --

          Difference type between actual and expected recovery point objective (RPO) and recovery time objective (RTO) values. Currently, Resilience Hub supports only NotEqual difference type.

        • driftType (string) --

          The type of drift detected. Currently, Resilience Hub supports only ApplicationCompliance drift type.

        • entityId (string) --

          Identifier of an entity in which drift was detected. For compliance drift, the entity ID can be either application ID or the AppComponent ID.

        • entityType (string) --

          The type of entity in which drift was detected. For compliance drifts, Resilience Hub supports AWS::ResilienceHub::AppComponent and AWS::ResilienceHub::Application .

        • expectedReferenceId (string) --

          Assessment identifier of a previous assessment of the same application version. Resilience Hub uses the previous assessment (associated with the reference identifier) to compare the compliance with the current assessment to identify drifts.

        • expectedValue (dict) --

          The expected compliance value of an entity.

          • (string) --

            • (dict) --

              Defines the compliance against the resiliency policy for a disruption.

              • achievableRpoInSecs (integer) --

                The Recovery Point Objective (RPO) that is achievable, in seconds.

              • achievableRtoInSecs (integer) --

                The Recovery Time Objective (RTO) that is achievable, in seconds

              • complianceStatus (string) --

                The current status of compliance for the resiliency policy.

              • currentRpoInSecs (integer) --

                The current RPO, in seconds.

              • currentRtoInSecs (integer) --

                The current RTO, in seconds.

              • message (string) --

                The disruption compliance message.

              • rpoDescription (string) --

                The RPO description.

              • rpoReferenceId (string) --

                Reference identifier of the RPO .

              • rtoDescription (string) --

                The RTO description.

              • rtoReferenceId (string) --

                Reference identifier of the RTO.

    • nextToken (string) --

      Null, or the token from a previous call to get the next set of results.

ListAppAssessments (updated) Link ¶
Changes (request, response)
Request
{'complianceStatus': {'MissingPolicy', 'NotApplicable'}}
Response
{'assessmentSummaries': {'complianceStatus': {'MissingPolicy',
                                              'NotApplicable'}}}

Lists the assessments for an Resilience Hub application. You can use request parameters to refine the results for the response object.

See also: AWS API Documentation

Request Syntax

client.list_app_assessments(
    appArn='string',
    assessmentName='string',
    assessmentStatus=[
        'Pending'|'InProgress'|'Failed'|'Success',
    ],
    complianceStatus='PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
    invoker='User'|'System',
    maxResults=123,
    nextToken='string',
    reverseOrder=True|False
)
type appArn

string

param appArn

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.

type assessmentName

string

param assessmentName

The name for the assessment.

type assessmentStatus

list

param assessmentStatus

The current status of the assessment for the resiliency policy.

  • (string) --

type complianceStatus

string

param complianceStatus

The current status of compliance for the resiliency policy.

type invoker

string

param invoker

Specifies the entity that invoked a specific assessment, either a User or the System .

type maxResults

integer

param maxResults

Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type nextToken

string

param nextToken

Null, or the token from a previous call to get the next set of results.

type reverseOrder

boolean

param reverseOrder

The default is to sort by ascending startTime . To sort by descending startTime , set reverseOrder to true .

rtype

dict

returns

Response Syntax

{
    'assessmentSummaries': [
        {
            'appArn': 'string',
            'appVersion': 'string',
            'assessmentArn': 'string',
            'assessmentName': 'string',
            'assessmentStatus': 'Pending'|'InProgress'|'Failed'|'Success',
            'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
            'cost': {
                'amount': 123.0,
                'currency': 'string',
                'frequency': 'Hourly'|'Daily'|'Monthly'|'Yearly'
            },
            'driftStatus': 'NotChecked'|'NotDetected'|'Detected',
            'endTime': datetime(2015, 1, 1),
            'invoker': 'User'|'System',
            'message': 'string',
            'resiliencyScore': 123.0,
            'startTime': datetime(2015, 1, 1),
            'versionName': 'string'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • assessmentSummaries (list) --

      The summaries for the specified assessments, returned as an object. This object includes application versions, associated Amazon Resource Numbers (ARNs), cost, messages, resiliency scores, and more.

      • (dict) --

        Defines an application assessment summary.

        • appArn (string) --

          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.

        • appVersion (string) --

          Version of an application.

        • assessmentArn (string) --

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

        • assessmentName (string) --

          Name of the assessment.

        • assessmentStatus (string) --

          Current status of the assessment for the resiliency policy.

        • complianceStatus (string) --

          Current status of compliance for the resiliency policy.

        • cost (dict) --

          Cost for an application.

          • amount (float) --

            The cost amount.

          • currency (string) --

            The cost currency, for example USD .

          • frequency (string) --

            The cost frequency.

        • driftStatus (string) --

          Indicates if compliance drifts (deviations) were detected while running an assessment for your application.

        • endTime (datetime) --

          End time for the action.

        • invoker (string) --

          Entity that invoked the assessment.

        • message (string) --

          Message from the assessment run.

        • resiliencyScore (float) --

          Current resiliency score for the application.

        • startTime (datetime) --

          Starting time for the action.

        • versionName (string) --

          Name of an application version.

    • nextToken (string) --

      Token for the next set of results, or null if there are no more results.

ListAppComponentCompliances (updated) Link ¶
Changes (response)
{'componentCompliances': {'compliance': {'complianceStatus': {'MissingPolicy',
                                                              'NotApplicable'}},
                          'status': {'MissingPolicy', 'NotApplicable'}}}

Lists the compliances for an Resilience Hub Application Component.

See also: AWS API Documentation

Request Syntax

client.list_app_component_compliances(
    assessmentArn='string',
    maxResults=123,
    nextToken='string'
)
type assessmentArn

string

param assessmentArn

[REQUIRED]

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

type maxResults

integer

param maxResults

Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type nextToken

string

param nextToken

Null, or the token from a previous call to get the next set of results.

rtype

dict

returns

Response Syntax

{
    'componentCompliances': [
        {
            'appComponentName': 'string',
            'compliance': {
                'string': {
                    'achievableRpoInSecs': 123,
                    'achievableRtoInSecs': 123,
                    'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
                    'currentRpoInSecs': 123,
                    'currentRtoInSecs': 123,
                    'message': 'string',
                    'rpoDescription': 'string',
                    'rpoReferenceId': 'string',
                    'rtoDescription': 'string',
                    'rtoReferenceId': 'string'
                }
            },
            'cost': {
                'amount': 123.0,
                'currency': 'string',
                'frequency': 'Hourly'|'Daily'|'Monthly'|'Yearly'
            },
            'message': 'string',
            'resiliencyScore': {
                'componentScore': {
                    'string': {
                        'excludedCount': 123,
                        'outstandingCount': 123,
                        'possibleScore': 123.0,
                        'score': 123.0
                    }
                },
                'disruptionScore': {
                    'string': 123.0
                },
                'score': 123.0
            },
            'status': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • componentCompliances (list) --

      The compliances for an Resilience Hub Application Component, returned as an object. This object contains the names of the Application Components, compliances, costs, resiliency scores, outage scores, and more.

      • (dict) --

        Defines the compliance of an Application Component against the resiliency policy.

        • appComponentName (string) --

          Name of the Application Component.

        • compliance (dict) --

          The compliance of the Application Component against the resiliency policy.

          • (string) --

            • (dict) --

              Defines the compliance against the resiliency policy for a disruption.

              • achievableRpoInSecs (integer) --

                The Recovery Point Objective (RPO) that is achievable, in seconds.

              • achievableRtoInSecs (integer) --

                The Recovery Time Objective (RTO) that is achievable, in seconds

              • complianceStatus (string) --

                The current status of compliance for the resiliency policy.

              • currentRpoInSecs (integer) --

                The current RPO, in seconds.

              • currentRtoInSecs (integer) --

                The current RTO, in seconds.

              • message (string) --

                The disruption compliance message.

              • rpoDescription (string) --

                The RPO description.

              • rpoReferenceId (string) --

                Reference identifier of the RPO .

              • rtoDescription (string) --

                The RTO description.

              • rtoReferenceId (string) --

                Reference identifier of the RTO.

        • cost (dict) --

          The cost for the application.

          • amount (float) --

            The cost amount.

          • currency (string) --

            The cost currency, for example USD .

          • frequency (string) --

            The cost frequency.

        • message (string) --

          The compliance message.

        • resiliencyScore (dict) --

          The current resiliency score for the application.

          • componentScore (dict) --

            The score generated by Resilience Hub for the scoring component after running an assessment.

            For example, if the score is 25 points, it indicates the overall score of your application generated by Resilience Hub after running an assessment.

            • (string) --

              • (dict) --

                Resiliency score of each scoring component. For more information about scoring component, see Calculating resiliency score.

                • excludedCount (integer) --

                  Number of recommendations that were excluded from the assessment.

                  For example, if the excludedCount for Alarms coverage scoring component is 7, it indicates that 7 Amazon CloudWatch alarms are excluded from the assessment.

                • outstandingCount (integer) --

                  Number of recommendations that must be implemented to obtain the maximum possible score for the scoring component. For SOPs, alarms, and tests, these are the number of recommendations that must be implemented. For compliance, these are the number of Application Components that have breached the resiliency policy.

                  For example, if the outstandingCount for Alarms coverage scoring component is 5, it indicates that 5 Amazon CloudWatch alarms need to be implemented to achieve the maximum possible score.

                • possibleScore (float) --

                  Maximum possible score that can be obtained for the scoring component.

                  For example, if the possibleScore is 20 points, it indicates the maximum possible score you can achieve for the scoring component when you run a new assessment after implementing all the Resilience Hub recommendations.

                • score (float) --

                  Resiliency score points given for the scoring component. The score is always less than or equal to the possibleScore .

          • disruptionScore (dict) --

            The disruption score for a valid key.

            • (string) --

              • (float) --

          • score (float) --

            The outage score for a valid key.

        • status (string) --

          Status of the action.

    • nextToken (string) --

      Token for the next set of results, or null if there are no more results.

ListAppComponentRecommendations (updated) Link ¶
Changes (response)
{'componentRecommendations': {'configRecommendations': {'compliance': {'complianceStatus': {'MissingPolicy',
                                                                                            'NotApplicable'}},
                                                        'recommendationCompliance': {'expectedComplianceStatus': {'MissingPolicy',
                                                                                                                  'NotApplicable'}}},
                              'recommendationStatus': {'MissingPolicy'}}}

Lists the recommendations for an Resilience Hub Application Component.

See also: AWS API Documentation

Request Syntax

client.list_app_component_recommendations(
    assessmentArn='string',
    maxResults=123,
    nextToken='string'
)
type assessmentArn

string

param assessmentArn

[REQUIRED]

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

type maxResults

integer

param maxResults

Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type nextToken

string

param nextToken

Null, or the token from a previous call to get the next set of results.

rtype

dict

returns

Response Syntax

{
    'componentRecommendations': [
        {
            'appComponentName': 'string',
            'configRecommendations': [
                {
                    'appComponentName': 'string',
                    'compliance': {
                        'string': {
                            'achievableRpoInSecs': 123,
                            'achievableRtoInSecs': 123,
                            'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
                            'currentRpoInSecs': 123,
                            'currentRtoInSecs': 123,
                            'message': 'string',
                            'rpoDescription': 'string',
                            'rpoReferenceId': 'string',
                            'rtoDescription': 'string',
                            'rtoReferenceId': 'string'
                        }
                    },
                    'cost': {
                        'amount': 123.0,
                        'currency': 'string',
                        'frequency': 'Hourly'|'Daily'|'Monthly'|'Yearly'
                    },
                    'description': 'string',
                    'haArchitecture': 'MultiSite'|'WarmStandby'|'PilotLight'|'BackupAndRestore'|'NoRecoveryPlan',
                    'name': 'string',
                    'optimizationType': 'LeastCost'|'LeastChange'|'BestAZRecovery'|'LeastErrors'|'BestAttainable'|'BestRegionRecovery',
                    'recommendationCompliance': {
                        'string': {
                            'expectedComplianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
                            'expectedRpoDescription': 'string',
                            'expectedRpoInSecs': 123,
                            'expectedRtoDescription': 'string',
                            'expectedRtoInSecs': 123
                        }
                    },
                    'referenceId': 'string',
                    'suggestedChanges': [
                        'string',
                    ]
                },
            ],
            'recommendationStatus': 'BreachedUnattainable'|'BreachedCanMeet'|'MetCanImprove'|'MissingPolicy'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • componentRecommendations (list) --

      The recommendations for an Resilience Hub Application Component, returned as an object. This object contains the names of the Application Components, configuration recommendations, and recommendation statuses.

      • (dict) --

        Defines recommendations for an Resilience Hub Application Component, returned as an object. This object contains component names, configuration recommendations, and recommendation statuses.

        • appComponentName (string) --

          Name of the Application Component.

        • configRecommendations (list) --

          List of recommendations.

          • (dict) --

            Defines a recommendation configuration.

            • appComponentName (string) --

              Name of the Application Component.

            • compliance (dict) --

              The current compliance against the resiliency policy before applying the configuration change.

              • (string) --

                • (dict) --

                  Defines the compliance against the resiliency policy for a disruption.

                  • achievableRpoInSecs (integer) --

                    The Recovery Point Objective (RPO) that is achievable, in seconds.

                  • achievableRtoInSecs (integer) --

                    The Recovery Time Objective (RTO) that is achievable, in seconds

                  • complianceStatus (string) --

                    The current status of compliance for the resiliency policy.

                  • currentRpoInSecs (integer) --

                    The current RPO, in seconds.

                  • currentRtoInSecs (integer) --

                    The current RTO, in seconds.

                  • message (string) --

                    The disruption compliance message.

                  • rpoDescription (string) --

                    The RPO description.

                  • rpoReferenceId (string) --

                    Reference identifier of the RPO .

                  • rtoDescription (string) --

                    The RTO description.

                  • rtoReferenceId (string) --

                    Reference identifier of the RTO.

            • cost (dict) --

              The cost for the application.

              • amount (float) --

                The cost amount.

              • currency (string) --

                The cost currency, for example USD .

              • frequency (string) --

                The cost frequency.

            • description (string) --

              The optional description for an app.

            • haArchitecture (string) --

              The architecture type.

            • name (string) --

              The name of the recommendation configuration.

            • optimizationType (string) --

              The type of optimization.

            • recommendationCompliance (dict) --

              The expected compliance against the resiliency policy after applying the configuration change.

              • (string) --

                • (dict) --

                  Defines a disruption compliance recommendation.

                  • expectedComplianceStatus (string) --

                    The expected compliance status after applying the recommended configuration change.

                  • expectedRpoDescription (string) --

                    The expected Recovery Point Objective (RPO) description after applying the recommended configuration change.

                  • expectedRpoInSecs (integer) --

                    The expected RPO after applying the recommended configuration change.

                  • expectedRtoDescription (string) --

                    The expected Recovery Time Objective (RTO) description after applying the recommended configuration change.

                  • expectedRtoInSecs (integer) --

                    The expected RTO after applying the recommended configuration change.

            • referenceId (string) --

              Reference identifier for the recommendation configuration.

            • suggestedChanges (list) --

              List of the suggested configuration changes.

              • (string) --

        • recommendationStatus (string) --

          Status of the recommendation.

    • nextToken (string) --

      Token for the next set of results, or null if there are no more results.

ListApps (updated) Link ¶
Changes (response)
{'appSummaries': {'complianceStatus': {'MissingPolicy', 'NotApplicable'}}}

Lists your Resilience Hub applications.

Note

You can filter applications using only one filter at a time or without using any filter. If you try to filter applications using multiple filters, you will get the following error:

An error occurred (ValidationException) when calling the ListApps operation: Only one filter is supported for this operation.

See also: AWS API Documentation

Request Syntax

client.list_apps(
    appArn='string',
    fromLastAssessmentTime=datetime(2015, 1, 1),
    maxResults=123,
    name='string',
    nextToken='string',
    reverseOrder=True|False,
    toLastAssessmentTime=datetime(2015, 1, 1)
)
type appArn

string

param appArn

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.

type fromLastAssessmentTime

datetime

param fromLastAssessmentTime

Indicates the lower limit of the range that is used to filter applications based on their last assessment times.

type maxResults

integer

param maxResults

Maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

type name

string

param name

The name for the one of the listed applications.

type nextToken

string

param nextToken

Null, or the token from a previous call to get the next set of results.

type reverseOrder

boolean

param reverseOrder

The application list is sorted based on the values of lastAppComplianceEvaluationTime field. By default, application list is sorted in ascending order. To sort the application list in descending order, set this field to True .

type toLastAssessmentTime

datetime

param toLastAssessmentTime

Indicates the upper limit of the range that is used to filter the applications based on their last assessment times.

rtype

dict

returns

Response Syntax

{
    'appSummaries': [
        {
            'appArn': 'string',
            'assessmentSchedule': 'Disabled'|'Daily',
            'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotAssessed'|'ChangesDetected'|'NotApplicable'|'MissingPolicy',
            'creationTime': datetime(2015, 1, 1),
            'description': 'string',
            'driftStatus': 'NotChecked'|'NotDetected'|'Detected',
            'lastAppComplianceEvaluationTime': datetime(2015, 1, 1),
            'name': 'string',
            'resiliencyScore': 123.0,
            'rpoInSecs': 123,
            'rtoInSecs': 123,
            'status': 'Active'|'Deleting'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • appSummaries (list) --

      Summaries for the Resilience Hub application.

      • (dict) --

        Defines an application summary.

        • appArn (string) --

          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.

        • assessmentSchedule (string) --

          Assessment execution schedule with 'Daily' or 'Disabled' values.

        • complianceStatus (string) --

          The current status of compliance for the resiliency policy.

        • creationTime (datetime) --

          Date and time when the app was created.

        • description (string) --

          The optional description for an app.

        • driftStatus (string) --

          Indicates if compliance drifts (deviations) were detected while running an assessment for your application.

        • lastAppComplianceEvaluationTime (datetime) --

          Date and time of the most recent compliance evaluation.

        • name (string) --

          The name of the application.

        • resiliencyScore (float) --

          The current resiliency score for the application.

        • rpoInSecs (integer) --

          Recovery Point Objective (RPO) in seconds.

        • rtoInSecs (integer) --

          Recovery Time Objective (RTO) in seconds.

        • status (string) --

          Status of the application.

    • nextToken (string) --

      Token for the next set of results, or null if there are no more results.

StartAppAssessment (updated) Link ¶
Changes (response)
{'assessment': {'compliance': {'complianceStatus': {'MissingPolicy',
                                                    'NotApplicable'}},
                'complianceStatus': {'MissingPolicy', 'NotApplicable'},
                'summary': {'riskRecommendations': [{'appComponents': ['string'],
                                                     'recommendation': 'string',
                                                     'risk': 'string'}],
                            'summary': 'string'}}}

Creates a new application assessment for an application.

See also: AWS API Documentation

Request Syntax

client.start_app_assessment(
    appArn='string',
    appVersion='string',
    assessmentName='string',
    clientToken='string',
    tags={
        'string': 'string'
    }
)
type appArn

string

param appArn

[REQUIRED]

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.

type appVersion

string

param appVersion

[REQUIRED]

The version of the application.

type assessmentName

string

param assessmentName

[REQUIRED]

The name for the assessment.

type clientToken

string

param clientToken

Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.

This field is autopopulated if not provided.

type tags

dict

param tags

Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'assessment': {
        'appArn': 'string',
        'appVersion': 'string',
        'assessmentArn': 'string',
        'assessmentName': 'string',
        'assessmentStatus': 'Pending'|'InProgress'|'Failed'|'Success',
        'compliance': {
            'string': {
                'achievableRpoInSecs': 123,
                'achievableRtoInSecs': 123,
                'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
                'currentRpoInSecs': 123,
                'currentRtoInSecs': 123,
                'message': 'string',
                'rpoDescription': 'string',
                'rpoReferenceId': 'string',
                'rtoDescription': 'string',
                'rtoReferenceId': 'string'
            }
        },
        'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotApplicable'|'MissingPolicy',
        'cost': {
            'amount': 123.0,
            'currency': 'string',
            'frequency': 'Hourly'|'Daily'|'Monthly'|'Yearly'
        },
        'driftStatus': 'NotChecked'|'NotDetected'|'Detected',
        'endTime': datetime(2015, 1, 1),
        'invoker': 'User'|'System',
        'message': 'string',
        'policy': {
            'creationTime': datetime(2015, 1, 1),
            'dataLocationConstraint': 'AnyLocation'|'SameContinent'|'SameCountry',
            'estimatedCostTier': 'L1'|'L2'|'L3'|'L4',
            'policy': {
                'string': {
                    'rpoInSecs': 123,
                    'rtoInSecs': 123
                }
            },
            'policyArn': 'string',
            'policyDescription': 'string',
            'policyName': 'string',
            'tags': {
                'string': 'string'
            },
            'tier': 'MissionCritical'|'Critical'|'Important'|'CoreServices'|'NonCritical'|'NotApplicable'
        },
        'resiliencyScore': {
            'componentScore': {
                'string': {
                    'excludedCount': 123,
                    'outstandingCount': 123,
                    'possibleScore': 123.0,
                    'score': 123.0
                }
            },
            'disruptionScore': {
                'string': 123.0
            },
            'score': 123.0
        },
        'resourceErrorsDetails': {
            'hasMoreErrors': True|False,
            'resourceErrors': [
                {
                    'logicalResourceId': 'string',
                    'physicalResourceId': 'string',
                    'reason': 'string'
                },
            ]
        },
        'startTime': datetime(2015, 1, 1),
        'summary': {
            'riskRecommendations': [
                {
                    'appComponents': [
                        'string',
                    ],
                    'recommendation': 'string',
                    'risk': 'string'
                },
            ],
            'summary': 'string'
        },
        'tags': {
            'string': 'string'
        },
        'versionName': 'string'
    }
}

Response Structure

  • (dict) --

    • assessment (dict) --

      The assessment created.

      • appArn (string) --

        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.

      • appVersion (string) --

        Version of an application.

      • assessmentArn (string) --

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

      • assessmentName (string) --

        Name of the assessment.

      • assessmentStatus (string) --

        Current status of the assessment for the resiliency policy.

      • compliance (dict) --

        Application compliance against the resiliency policy.

        • (string) --

          • (dict) --

            Defines the compliance against the resiliency policy for a disruption.

            • achievableRpoInSecs (integer) --

              The Recovery Point Objective (RPO) that is achievable, in seconds.

            • achievableRtoInSecs (integer) --

              The Recovery Time Objective (RTO) that is achievable, in seconds

            • complianceStatus (string) --

              The current status of compliance for the resiliency policy.

            • currentRpoInSecs (integer) --

              The current RPO, in seconds.

            • currentRtoInSecs (integer) --

              The current RTO, in seconds.

            • message (string) --

              The disruption compliance message.

            • rpoDescription (string) --

              The RPO description.

            • rpoReferenceId (string) --

              Reference identifier of the RPO .

            • rtoDescription (string) --

              The RTO description.

            • rtoReferenceId (string) --

              Reference identifier of the RTO.

      • complianceStatus (string) --

        Current status of the compliance for the resiliency policy.

      • cost (dict) --

        Cost for the application.

        • amount (float) --

          The cost amount.

        • currency (string) --

          The cost currency, for example USD .

        • frequency (string) --

          The cost frequency.

      • driftStatus (string) --

        Indicates if compliance drifts (deviations) were detected while running an assessment for your application.

      • endTime (datetime) --

        End time for the action.

      • invoker (string) --

        The entity that invoked the assessment.

      • message (string) --

        Error or warning message from the assessment execution

      • policy (dict) --

        Resiliency policy of an application.

        • creationTime (datetime) --

          Date and time when the resiliency policy was created.

        • dataLocationConstraint (string) --

          Specifies a high-level geographical location constraint for where your resilience policy data can be stored.

        • estimatedCostTier (string) --

          Specifies the estimated cost tier of the resiliency policy.

        • policy (dict) --

          The resiliency policy.

          • (string) --

            • (dict) --

              Defines a failure policy.

              • rpoInSecs (integer) --

                Recovery Point Objective (RPO) in seconds.

              • rtoInSecs (integer) --

                Recovery Time Objective (RTO) in seconds.

        • policyArn (string) --

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

        • policyDescription (string) --

          The description for the policy.

        • policyName (string) --

          The name of the policy

        • tags (dict) --

          Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

          • (string) --

            • (string) --

        • tier (string) --

          The tier for this resiliency policy, ranging from the highest severity ( MissionCritical ) to lowest ( NonCritical ).

      • resiliencyScore (dict) --

        Current resiliency score for an application.

        • componentScore (dict) --

          The score generated by Resilience Hub for the scoring component after running an assessment.

          For example, if the score is 25 points, it indicates the overall score of your application generated by Resilience Hub after running an assessment.

          • (string) --

            • (dict) --

              Resiliency score of each scoring component. For more information about scoring component, see Calculating resiliency score.

              • excludedCount (integer) --

                Number of recommendations that were excluded from the assessment.

                For example, if the excludedCount for Alarms coverage scoring component is 7, it indicates that 7 Amazon CloudWatch alarms are excluded from the assessment.

              • outstandingCount (integer) --

                Number of recommendations that must be implemented to obtain the maximum possible score for the scoring component. For SOPs, alarms, and tests, these are the number of recommendations that must be implemented. For compliance, these are the number of Application Components that have breached the resiliency policy.

                For example, if the outstandingCount for Alarms coverage scoring component is 5, it indicates that 5 Amazon CloudWatch alarms need to be implemented to achieve the maximum possible score.

              • possibleScore (float) --

                Maximum possible score that can be obtained for the scoring component.

                For example, if the possibleScore is 20 points, it indicates the maximum possible score you can achieve for the scoring component when you run a new assessment after implementing all the Resilience Hub recommendations.

              • score (float) --

                Resiliency score points given for the scoring component. The score is always less than or equal to the possibleScore .

        • disruptionScore (dict) --

          The disruption score for a valid key.

          • (string) --

            • (float) --

        • score (float) --

          The outage score for a valid key.

      • resourceErrorsDetails (dict) --

        A resource error object containing a list of errors retrieving an application's resources.

        • hasMoreErrors (boolean) --

          This indicates if there are more errors not listed in the resourceErrors list.

        • resourceErrors (list) --

          A list of errors retrieving an application's resources.

          • (dict) --

            Defines application resource errors.

            • logicalResourceId (string) --

              Identifier of the logical resource.

            • physicalResourceId (string) --

              Identifier of the physical resource.

            • reason (string) --

              This is the error message.

      • startTime (datetime) --

        Starting time for the action.

      • summary (dict) --

        Indicates a concise summary that provides an overview of the Resilience Hub assessment.

        • riskRecommendations (list) --

          Indicates the top risks and recommendations identified by the Resilience Hub assessment, each representing a specific risk and the corresponding recommendation to address it.

          Note

          This property is available only in the US East (N. Virginia) Region.

          • (dict) --

            Indicates a specific risk identified in the Resilience Hub assessment and the corresponding recommendation provided to address that risk.

            Note

            The assessment summary generated by large language models (LLMs) on Amazon Bedrock are only suggestions. The current level of generative AI technology is not perfect and LLMs are not infallible. Bias and incorrect answers, although rare, should be expected. Review each recommendation in the assessment summary before you use the output from an LLM.

            Note

            This property is available only in the US East (N. Virginia) Region.

            • appComponents (list) --

              Indicates the Application Components (AppComponents) that were assessed as part of the assessnent and are associated with the identified risk and recommendation.

              Note

              This property is available only in the US East (N. Virginia) Region.

              • (string) --

            • recommendation (string) --

              Indicates the recommendation provided by the Resilience Hub to address the identified risks in the application.

              Note

              This property is available only in the US East (N. Virginia) Region.

            • risk (string) --

              Indicates the description of the potential risk identified in the application as part of the Resilience Hub assessment.

              Note

              This property is available only in the US East (N. Virginia) Region.

        • summary (string) --

          Indicates a concise summary that provides an overview of the Resilience Hub assessment.

          Note

          This property is available only in the US East (N. Virginia) Region.

      • tags (dict) --

        Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

        • (string) --

          • (string) --

      • versionName (string) --

        Version name of the published application.

UpdateApp (updated) Link ¶
Changes (response)
{'app': {'complianceStatus': {'MissingPolicy', 'NotApplicable'}}}

Updates an application.

See also: AWS API Documentation

Request Syntax

client.update_app(
    appArn='string',
    assessmentSchedule='Disabled'|'Daily',
    clearResiliencyPolicyArn=True|False,
    description='string',
    eventSubscriptions=[
        {
            'eventType': 'ScheduledAssessmentFailure'|'DriftDetected',
            'name': 'string',
            'snsTopicArn': 'string'
        },
    ],
    permissionModel={
        'crossAccountRoleArns': [
            'string',
        ],
        'invokerRoleName': 'string',
        'type': 'LegacyIAMUser'|'RoleBased'
    },
    policyArn='string'
)
type appArn

string

param appArn

[REQUIRED]

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.

type assessmentSchedule

string

param assessmentSchedule

Assessment execution schedule with 'Daily' or 'Disabled' values.

type clearResiliencyPolicyArn

boolean

param clearResiliencyPolicyArn

Specifies if the resiliency policy ARN should be cleared.

type description

string

param description

The optional description for an app.

type eventSubscriptions

list

param eventSubscriptions

The list of events you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

  • (dict) --

    Indicates an event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

    • eventType (string) -- [REQUIRED]

      The type of event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected ( DriftDetected ) and Scheduled assessment failure ( ScheduledAssessmentFailure ) events.

    • name (string) -- [REQUIRED]

      Unique name to identify an event subscription.

    • snsTopicArn (string) --

      Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. The format for this ARN is: arn:partition:sns:region:account:topic-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

type permissionModel

dict

param permissionModel

Defines the roles and credentials that Resilience Hub would use while creating an application, importing its resources, and running an assessment.

  • crossAccountRoleArns (list) --

    Defines a list of role Amazon Resource Names (ARNs) to be used in other accounts. These ARNs are used for querying purposes while importing resources and assessing your application.

    Note

    • These ARNs are required only when your resources are in other accounts and you have different role name in these accounts. Else, the invoker role name will be used in the other accounts.

    • These roles must have a trust policy with iam:AssumeRole permission to the invoker role in the primary account.

    • (string) --

  • invokerRoleName (string) --

    Existing Amazon Web Services IAM role name in the primary Amazon Web Services account that will be assumed by Resilience Hub Service Principle to obtain a read-only access to your application resources while running an assessment.

    Note

    • You must have iam:passRole permission for this role while creating or updating the application.

    • Currently, invokerRoleName accepts only [A-Za-z0-9_+=,.@-] characters.

  • type (string) -- [REQUIRED]

    Defines how Resilience Hub scans your resources. It can scan for the resources by using a pre-existing role in your Amazon Web Services account, or by using the credentials of the current IAM user.

type policyArn

string

param policyArn

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

rtype

dict

returns

Response Syntax

{
    'app': {
        'appArn': 'string',
        'assessmentSchedule': 'Disabled'|'Daily',
        'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotAssessed'|'ChangesDetected'|'NotApplicable'|'MissingPolicy',
        'creationTime': datetime(2015, 1, 1),
        'description': 'string',
        'driftStatus': 'NotChecked'|'NotDetected'|'Detected',
        'eventSubscriptions': [
            {
                'eventType': 'ScheduledAssessmentFailure'|'DriftDetected',
                'name': 'string',
                'snsTopicArn': 'string'
            },
        ],
        'lastAppComplianceEvaluationTime': datetime(2015, 1, 1),
        'lastDriftEvaluationTime': datetime(2015, 1, 1),
        'lastResiliencyScoreEvaluationTime': datetime(2015, 1, 1),
        'name': 'string',
        'permissionModel': {
            'crossAccountRoleArns': [
                'string',
            ],
            'invokerRoleName': 'string',
            'type': 'LegacyIAMUser'|'RoleBased'
        },
        'policyArn': 'string',
        'resiliencyScore': 123.0,
        'rpoInSecs': 123,
        'rtoInSecs': 123,
        'status': 'Active'|'Deleting',
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • app (dict) --

      The specified application, returned as an object with details including compliance status, creation time, description, resiliency score, and more.

      • appArn (string) --

        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.

      • assessmentSchedule (string) --

        Assessment execution schedule with 'Daily' or 'Disabled' values.

      • complianceStatus (string) --

        Current status of compliance for the resiliency policy.

      • creationTime (datetime) --

        Date and time when the app was created.

      • description (string) --

        Optional description for an application.

      • driftStatus (string) --

        Indicates if compliance drifts (deviations) were detected while running an assessment for your application.

      • eventSubscriptions (list) --

        The list of events you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

        • (dict) --

          Indicates an event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.

          • eventType (string) --

            The type of event you would like to subscribe and get notification for. Currently, Resilience Hub supports notifications only for Drift detected ( DriftDetected ) and Scheduled assessment failure ( ScheduledAssessmentFailure ) events.

          • name (string) --

            Unique name to identify an event subscription.

          • snsTopicArn (string) --

            Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. The format for this ARN is: arn:partition:sns:region:account:topic-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

      • lastAppComplianceEvaluationTime (datetime) --

        Date and time the most recent compliance evaluation.

      • lastDriftEvaluationTime (datetime) --

        Indicates the last time that a drift was evaluated.

      • lastResiliencyScoreEvaluationTime (datetime) --

        Date and time the most recent resiliency score evaluation.

      • name (string) --

        Name for the application.

      • permissionModel (dict) --

        Defines the roles and credentials that Resilience Hub would use while creating the application, importing its resources, and running an assessment.

        • crossAccountRoleArns (list) --

          Defines a list of role Amazon Resource Names (ARNs) to be used in other accounts. These ARNs are used for querying purposes while importing resources and assessing your application.

          Note

          • These ARNs are required only when your resources are in other accounts and you have different role name in these accounts. Else, the invoker role name will be used in the other accounts.

          • These roles must have a trust policy with iam:AssumeRole permission to the invoker role in the primary account.

          • (string) --

        • invokerRoleName (string) --

          Existing Amazon Web Services IAM role name in the primary Amazon Web Services account that will be assumed by Resilience Hub Service Principle to obtain a read-only access to your application resources while running an assessment.

          Note

          • You must have iam:passRole permission for this role while creating or updating the application.

          • Currently, invokerRoleName accepts only [A-Za-z0-9_+=,.@-] characters.

        • type (string) --

          Defines how Resilience Hub scans your resources. It can scan for the resources by using a pre-existing role in your Amazon Web Services account, or by using the credentials of the current IAM user.

      • policyArn (string) --

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

      • resiliencyScore (float) --

        Current resiliency score for the application.

      • rpoInSecs (integer) --

        Recovery Point Objective (RPO) in seconds.

      • rtoInSecs (integer) --

        Recovery Time Objective (RTO) in seconds.

      • status (string) --

        Status of the application.

      • tags (dict) --

        Tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key/value pair.

        • (string) --

          • (string) --