AWS Resilience Hub

2023/08/02 - AWS Resilience Hub - 2 new 17 updated api methods

Changes  Drift Detection capability added when applications policy has moved from a meet to breach state. Customers will be able to exclude operational recommendations and receive credit in their resilience score. Customers can now add ARH permissions to an existing or new role.

BatchUpdateRecommendationStatus (new) Link ¶

Enables you to include or exclude one or more operational recommendations.

See also: AWS API Documentation

Request Syntax

client.batch_update_recommendation_status(
    appArn='string',
    requestEntries=[
        {
            'entryId': 'string',
            'excludeReason': 'AlreadyImplemented'|'NotRelevant'|'ComplexityOfImplementation',
            'excluded': True|False,
            'item': {
                'resourceId': 'string',
                'targetAccountId': 'string',
                'targetRegion': 'string'
            },
            'referenceId': '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 AWS General Reference guide.

type requestEntries

list

param requestEntries

[REQUIRED]

Defines the list of operational recommendations that need to be included or excluded.

  • (dict) --

    Defines the operational recommendation item that is to be included or excluded.

    • entryId (string) -- [REQUIRED]

      An identifier for an entry in this batch that is used to communicate the result.

      Note

      The entryId s of a batch request need to be unique within a request.

    • excludeReason (string) --

      Indicates the reason for excluding an operational recommendation.

    • excluded (boolean) -- [REQUIRED]

      Indicates if the operational recommendation needs to be excluded. If set to True, the operational recommendation will be excluded.

    • item (dict) -- [REQUIRED]

      The operational recommendation item.

      • resourceId (string) --

        Resource identifier of the operational recommendation item.

      • targetAccountId (string) --

        Identifier of the target Amazon Web Services account.

      • targetRegion (string) --

        Identifier of the target Amazon Web Services Region.

    • referenceId (string) -- [REQUIRED]

      Reference identifier of the operational recommendation item.

rtype

dict

returns

Response Syntax

{
    'appArn': 'string',
    'failedEntries': [
        {
            'entryId': 'string',
            'errorMessage': 'string'
        },
    ],
    'successfulEntries': [
        {
            'entryId': 'string',
            'excludeReason': 'AlreadyImplemented'|'NotRelevant'|'ComplexityOfImplementation',
            'excluded': True|False,
            'item': {
                'resourceId': 'string',
                'targetAccountId': 'string',
                'targetRegion': 'string'
            },
            'referenceId': '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 AWS General Reference guide.

    • failedEntries (list) --

      A list of items with error details about each item, which could not be included or excluded.

      • (dict) --

        List of operational recommendations that did not get included or excluded.

        • entryId (string) --

          An identifier of an entry in this batch that is used to communicate the result.

          Note

          The entryId s of a batch request need to be unique within a request.

        • errorMessage (string) --

          Indicates the error that occurred while excluding an operational recommendation.

    • successfulEntries (list) --

      A list of items that were included or excluded.

      • (dict) --

        List of operational recommendations that were successfully included or excluded.

        • entryId (string) --

          An identifier for an entry in this batch that is used to communicate the result.

          Note

          The entryId s of a batch request need to be unique within a request.

        • excludeReason (string) --

          Indicates the reason for excluding an operational recommendation.

        • excluded (boolean) --

          Indicates if the operational recommendation was successfully excluded.

        • item (dict) --

          The operational recommendation item.

          • resourceId (string) --

            Resource identifier of the operational recommendation item.

          • targetAccountId (string) --

            Identifier of the target Amazon Web Services account.

          • targetRegion (string) --

            Identifier of the target Amazon Web Services Region.

        • referenceId (string) --

          Reference identifier of the operational recommendation.

ListAppAssessmentComplianceDrifts (new) Link ¶

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 AWS General Reference guide.

type maxResults

integer

param maxResults

Indicates the maximum number of applications requested.

type nextToken

string

param nextToken

Indicates the unique token number of the next application to be checked for compliance and regulatory requirements from the list of applications.

rtype

dict

returns

Response Syntax

{
    'complianceDrifts': [
        {
            'actualReferenceId': 'string',
            'actualValue': {
                'string': {
                    'achievableRpoInSecs': 123,
                    'achievableRtoInSecs': 123,
                    'complianceStatus': 'PolicyBreached'|'PolicyMet',
                    'currentRpoInSecs': 123,
                    'currentRtoInSecs': 123,
                    'message': 'string',
                    'rpoDescription': 'string',
                    'rpoReferenceId': 'string',
                    'rtoDescription': 'string',
                    'rtoReferenceId': 'string'
                }
            },
            'appId': 'string',
            'appVersion': 'string',
            'diffType': 'NotEqual',
            'driftType': 'ApplicationCompliance',
            'entityId': 'string',
            'entityType': 'string',
            'expectedReferenceId': 'string',
            'expectedValue': {
                'string': {
                    'achievableRpoInSecs': 123,
                    'achievableRtoInSecs': 123,
                    'complianceStatus': 'PolicyBreached'|'PolicyMet',
                    '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) --

      Token number of the next application to be checked for compliance and regulatory requirements from the list of applications.

CreateApp (updated) Link ¶
Changes (request, response)
Request
{'eventSubscriptions': [{'eventType': 'ScheduledAssessmentFailure | '
                                      'DriftDetected',
                         'name': 'string',
                         'snsTopicArn': 'string'}],
 'permissionModel': {'crossAccountRoleArns': ['string'],
                     'invokerRoleName': 'string',
                     'type': 'LegacyIAMUser | RoleBased'}}
Response
{'app': {'driftStatus': 'NotChecked | NotDetected | Detected',
         'eventSubscriptions': [{'eventType': 'ScheduledAssessmentFailure | '
                                              'DriftDetected',
                                 'name': 'string',
                                 'snsTopicArn': 'string'}],
         'lastDriftEvaluationTime': 'timestamp',
         'permissionModel': {'crossAccountRoleArns': ['string'],
                             'invokerRoleName': 'string',
                             'type': 'LegacyIAMUser | RoleBased'}}}

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 :resiliencehub:region :account :app/app-id . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS 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.

  • 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 AWS 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',
        '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,
        '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 AWS 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) --

        Timestamp for 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 :resiliencehub:region :account :app/app-id . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

      • lastAppComplianceEvaluationTime (datetime) --

        Timestamp for the most recent compliance evaluation.

      • lastDriftEvaluationTime (datetime) --

        Indicates the last time that a drift was evaluated.

      • lastResiliencyScoreEvaluationTime (datetime) --

        Timestamp for 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.

        • 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 AWS General Reference guide.

      • resiliencyScore (float) --

        Current resiliency score for the application.

      • 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) --

CreateResiliencyPolicy (updated) Link ¶
Changes (request, response)
Request
{'tier': {'NotApplicable'}}
Response
{'policy': {'tier': {'NotApplicable'}}}

Creates a resiliency policy for an application.

See also: AWS API Documentation

Request Syntax

client.create_resiliency_policy(
    clientToken='string',
    dataLocationConstraint='AnyLocation'|'SameContinent'|'SameCountry',
    policy={
        'string': {
            'rpoInSecs': 123,
            'rtoInSecs': 123
        }
    },
    policyDescription='string',
    policyName='string',
    tags={
        'string': 'string'
    },
    tier='MissionCritical'|'Critical'|'Important'|'CoreServices'|'NonCritical'|'NotApplicable'
)
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 dataLocationConstraint

string

param dataLocationConstraint

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

type policy

dict

param policy

[REQUIRED]

The type of resiliency policy to be created, including the recovery time objective (RTO) and recovery point objective (RPO) in seconds.

  • (string) --

    • (dict) --

      Defines a failure policy.

      • rpoInSecs (integer) -- [REQUIRED]

        The Recovery Point Objective (RPO), in seconds.

      • rtoInSecs (integer) -- [REQUIRED]

        The Recovery Time Objective (RTO), in seconds.

type policyDescription

string

param policyDescription

The description for the policy.

type policyName

string

param policyName

[REQUIRED]

The name of the policy

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) --

type tier

string

param tier

[REQUIRED]

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

rtype

dict

returns

Response Syntax

{
    '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'
    }
}

Response Structure

  • (dict) --

    • policy (dict) --

      The type of resiliency policy that was created, including the recovery time objective (RTO) and recovery point objective (RPO) in seconds.

      • creationTime (datetime) --

        The timestamp for 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) --

              The Recovery Point Objective (RPO), in seconds.

            • rtoInSecs (integer) --

              The 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 AWS 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 ).

DescribeApp (updated) Link ¶
Changes (response)
{'app': {'driftStatus': 'NotChecked | NotDetected | Detected',
         'eventSubscriptions': [{'eventType': 'ScheduledAssessmentFailure | '
                                              'DriftDetected',
                                 'name': 'string',
                                 'snsTopicArn': 'string'}],
         'lastDriftEvaluationTime': 'timestamp',
         'permissionModel': {'crossAccountRoleArns': ['string'],
                             'invokerRoleName': 'string',
                             'type': 'LegacyIAMUser | RoleBased'}}}

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 AWS General Reference guide.

rtype

dict

returns

Response Syntax

{
    'app': {
        'appArn': 'string',
        'assessmentSchedule': 'Disabled'|'Daily',
        'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotAssessed'|'ChangesDetected',
        '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,
        '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 AWS 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) --

        Timestamp for 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 :resiliencehub:region :account :app/app-id . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

      • lastAppComplianceEvaluationTime (datetime) --

        Timestamp for the most recent compliance evaluation.

      • lastDriftEvaluationTime (datetime) --

        Indicates the last time that a drift was evaluated.

      • lastResiliencyScoreEvaluationTime (datetime) --

        Timestamp for 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.

        • 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 AWS General Reference guide.

      • resiliencyScore (float) --

        Current resiliency score for the application.

      • 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': {'driftStatus': 'NotChecked | NotDetected | Detected',
                'policy': {'tier': {'NotApplicable'}},
                'versionName': '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 AWS 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',
                'currentRpoInSecs': 123,
                'currentRtoInSecs': 123,
                'message': 'string',
                'rpoDescription': 'string',
                'rpoReferenceId': 'string',
                'rtoDescription': 'string',
                'rtoReferenceId': 'string'
            }
        },
        'complianceStatus': 'PolicyBreached'|'PolicyMet',
        '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': {
            'disruptionScore': {
                'string': 123.0
            },
            'score': 123.0
        },
        'resourceErrorsDetails': {
            'hasMoreErrors': True|False,
            'resourceErrors': [
                {
                    'logicalResourceId': 'string',
                    'physicalResourceId': 'string',
                    'reason': 'string'
                },
            ]
        },
        'startTime': datetime(2015, 1, 1),
        '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 AWS 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 AWS 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) --

          The timestamp for 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) --

                The Recovery Point Objective (RPO), in seconds.

              • rtoInSecs (integer) --

                The 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 AWS 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.

        • 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.

      • 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.

DescribeResiliencyPolicy (updated) Link ¶
Changes (response)
{'policy': {'tier': {'NotApplicable'}}}

Describes a specified resiliency policy for an Resilience Hub application. The returned policy object includes creation time, data location constraints, the Amazon Resource Name (ARN) for the policy, tags, tier, and more.

See also: AWS API Documentation

Request Syntax

client.describe_resiliency_policy(
    policyArn='string'
)
type policyArn

string

param policyArn

[REQUIRED]

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 AWS General Reference guide.

rtype

dict

returns

Response Syntax

{
    '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'
    }
}

Response Structure

  • (dict) --

    • policy (dict) --

      Information about the specific resiliency policy, returned as an object. This object includes creation time, data location constraints, its name, description, tags, the recovery time objective (RTO) and recovery point objective (RPO) in seconds, and more.

      • creationTime (datetime) --

        The timestamp for 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) --

              The Recovery Point Objective (RPO), in seconds.

            • rtoInSecs (integer) --

              The 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 AWS 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 ).

ListAlarmRecommendations (updated) Link ¶
Changes (response)
{'alarmRecommendations': {'appComponentNames': ['string'],
                          'items': {'excludeReason': 'AlreadyImplemented | '
                                                     'NotRelevant | '
                                                     'ComplexityOfImplementation',
                                    'excluded': 'boolean'}}}

Lists the alarm recommendations for an Resilience Hub application.

See also: AWS API Documentation

Request Syntax

client.list_alarm_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 AWS 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

{
    'alarmRecommendations': [
        {
            'appComponentName': 'string',
            'appComponentNames': [
                'string',
            ],
            'description': 'string',
            'items': [
                {
                    'alreadyImplemented': True|False,
                    'excludeReason': 'AlreadyImplemented'|'NotRelevant'|'ComplexityOfImplementation',
                    'excluded': True|False,
                    'resourceId': 'string',
                    'targetAccountId': 'string',
                    'targetRegion': 'string'
                },
            ],
            'name': 'string',
            'prerequisite': 'string',
            'recommendationId': 'string',
            'referenceId': 'string',
            'type': 'Metric'|'Composite'|'Canary'|'Logs'|'Event'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • alarmRecommendations (list) --

      The alarm recommendations for an Resilience Hub application, returned as an object. This object includes Application Component names, descriptions, information about whether a recommendation has already been implemented or not, prerequisites, and more.

      • (dict) --

        Defines a recommendation for a CloudWatch alarm.

        • appComponentName (string) --

          Application Component name for the CloudWatch alarm recommendation. This name is saved as the first item in the appComponentNames list.

        • appComponentNames (list) --

          List of Application Component names for the CloudWatch alarm recommendation.

          • (string) --

        • description (string) --

          Description of the alarm recommendation.

        • items (list) --

          List of CloudWatch alarm recommendations.

          • (dict) --

            Defines a recommendation.

            • alreadyImplemented (boolean) --

              Specifies if the recommendation has already been implemented.

            • excludeReason (string) --

              Indicates the reason for excluding an operational recommendation.

            • excluded (boolean) --

              Indicates if an operational recommendation item is excluded.

            • resourceId (string) --

              Identifier of the resource.

            • targetAccountId (string) --

              Identifier of the target account.

            • targetRegion (string) --

              The target region.

        • name (string) --

          Name of the alarm recommendation.

        • prerequisite (string) --

          The prerequisite for the alarm recommendation.

        • recommendationId (string) --

          Identifier of the alarm recommendation.

        • referenceId (string) --

          Reference identifier of the alarm recommendation.

        • type (string) --

          Type of alarm recommendation.

    • nextToken (string) --

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

ListAppAssessments (updated) Link ¶
Changes (response)
{'assessmentSummaries': {'driftStatus': 'NotChecked | NotDetected | Detected',
                         'versionName': 'string'}}

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',
    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 AWS 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',
            '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 AWS 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 AWS General Reference guide.

        • assessmentName (string) --

          Name of the assessment.

        • assessmentStatus (string) --

          Current status of the assessment for the resiliency policy.

        • complianceStatus (string) --

          TCurrent 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.

ListAppVersions (updated) Link ¶
Changes (request, response)
Request
{'endTime': 'timestamp', 'startTime': 'timestamp'}
Response
{'appVersions': {'creationTime': 'timestamp',
                 'identifier': 'long',
                 'versionName': 'string'}}

Lists the different versions for the Resilience Hub applications.

See also: AWS API Documentation

Request Syntax

client.list_app_versions(
    appArn='string',
    endTime=datetime(2015, 1, 1),
    maxResults=123,
    nextToken='string',
    startTime=datetime(2015, 1, 1)
)
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 AWS General Reference guide.

type endTime

datetime

param endTime

Upper limit of the time range to filter the application versions.

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 startTime

datetime

param startTime

Lower limit of the time range to filter the application versions.

rtype

dict

returns

Response Syntax

{
    'appVersions': [
        {
            'appVersion': 'string',
            'creationTime': datetime(2015, 1, 1),
            'identifier': 123,
            'versionName': 'string'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • appVersions (list) --

      The version of the application.

      • (dict) --

        Version of an application.

        • appVersion (string) --

          Version of an application.

        • creationTime (datetime) --

          Creation time of the application version.

        • identifier (integer) --

          Identifier of the application version.

        • versionName (string) --

          Name of the application version.

    • nextToken (string) --

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

ListApps (updated) Link ¶
Changes (response)
{'appSummaries': {'driftStatus': 'NotChecked | NotDetected | Detected'}}

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',
    maxResults=123,
    name='string',
    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 AWS 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 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.

rtype

dict

returns

Response Syntax

{
    'appSummaries': [
        {
            'appArn': 'string',
            'assessmentSchedule': 'Disabled'|'Daily',
            'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotAssessed'|'ChangesDetected',
            'creationTime': datetime(2015, 1, 1),
            'description': 'string',
            'driftStatus': 'NotChecked'|'NotDetected'|'Detected',
            'name': 'string',
            'resiliencyScore': 123.0,
            '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 AWS 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) --

          The timestamp for 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.

        • name (string) --

          The name of the application.

        • resiliencyScore (float) --

          The current resiliency score for the application.

        • status (string) --

          Status of the application.

    • nextToken (string) --

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

ListResiliencyPolicies (updated) Link ¶
Changes (response)
{'resiliencyPolicies': {'tier': {'NotApplicable'}}}

Lists the resiliency policies for the Resilience Hub applications.

See also: AWS API Documentation

Request Syntax

client.list_resiliency_policies(
    maxResults=123,
    nextToken='string',
    policyName='string'
)
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 policyName

string

param policyName

The name of the policy

rtype

dict

returns

Response Syntax

{
    'nextToken': 'string',
    'resiliencyPolicies': [
        {
            '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'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

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

    • resiliencyPolicies (list) --

      The resiliency policies for the Resilience Hub applications.

      • (dict) --

        Defines a resiliency policy.

        • creationTime (datetime) --

          The timestamp for 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) --

                The Recovery Point Objective (RPO), in seconds.

              • rtoInSecs (integer) --

                The 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 AWS 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 ).

ListSopRecommendations (updated) Link ¶
Changes (response)
{'sopRecommendations': {'items': {'excludeReason': 'AlreadyImplemented | '
                                                   'NotRelevant | '
                                                   'ComplexityOfImplementation',
                                  'excluded': 'boolean'}}}

Lists the standard operating procedure (SOP) recommendations for the Resilience Hub applications.

See also: AWS API Documentation

Request Syntax

client.list_sop_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 AWS 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

{
    'nextToken': 'string',
    'sopRecommendations': [
        {
            'appComponentName': 'string',
            'description': 'string',
            'items': [
                {
                    'alreadyImplemented': True|False,
                    'excludeReason': 'AlreadyImplemented'|'NotRelevant'|'ComplexityOfImplementation',
                    'excluded': True|False,
                    'resourceId': 'string',
                    'targetAccountId': 'string',
                    'targetRegion': 'string'
                },
            ],
            'name': 'string',
            'prerequisite': 'string',
            'recommendationId': 'string',
            'referenceId': 'string',
            'serviceType': 'SSM'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

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

    • sopRecommendations (list) --

      The standard operating procedure (SOP) recommendations for the Resilience Hub applications.

      • (dict) --

        Defines a standard operating procedure (SOP) recommendation.

        • appComponentName (string) --

          Name of the Application Component.

        • description (string) --

          Description of the SOP recommendation.

        • items (list) --

          The recommendation items.

          • (dict) --

            Defines a recommendation.

            • alreadyImplemented (boolean) --

              Specifies if the recommendation has already been implemented.

            • excludeReason (string) --

              Indicates the reason for excluding an operational recommendation.

            • excluded (boolean) --

              Indicates if an operational recommendation item is excluded.

            • resourceId (string) --

              Identifier of the resource.

            • targetAccountId (string) --

              Identifier of the target account.

            • targetRegion (string) --

              The target region.

        • name (string) --

          Name of the SOP recommendation.

        • prerequisite (string) --

          Prerequisite for the SOP recommendation.

        • recommendationId (string) --

          Identifier for the SOP recommendation.

        • referenceId (string) --

          Reference identifier for the SOP recommendation.

        • serviceType (string) --

          The service type.

ListSuggestedResiliencyPolicies (updated) Link ¶
Changes (response)
{'resiliencyPolicies': {'tier': {'NotApplicable'}}}

Lists the suggested resiliency policies for the Resilience Hub applications.

See also: AWS API Documentation

Request Syntax

client.list_suggested_resiliency_policies(
    maxResults=123,
    nextToken='string'
)
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

{
    'nextToken': 'string',
    'resiliencyPolicies': [
        {
            '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'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

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

    • resiliencyPolicies (list) --

      The suggested resiliency policies for the Resilience Hub applications.

      • (dict) --

        Defines a resiliency policy.

        • creationTime (datetime) --

          The timestamp for 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) --

                The Recovery Point Objective (RPO), in seconds.

              • rtoInSecs (integer) --

                The 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 AWS 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 ).

ListTestRecommendations (updated) Link ¶
Changes (response)
{'testRecommendations': {'items': {'excludeReason': 'AlreadyImplemented | '
                                                    'NotRelevant | '
                                                    'ComplexityOfImplementation',
                                   'excluded': 'boolean'}}}

Lists the test recommendations for the Resilience Hub application.

See also: AWS API Documentation

Request Syntax

client.list_test_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 AWS 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

{
    'nextToken': 'string',
    'testRecommendations': [
        {
            'appComponentName': 'string',
            'dependsOnAlarms': [
                'string',
            ],
            'description': 'string',
            'intent': 'string',
            'items': [
                {
                    'alreadyImplemented': True|False,
                    'excludeReason': 'AlreadyImplemented'|'NotRelevant'|'ComplexityOfImplementation',
                    'excluded': True|False,
                    'resourceId': 'string',
                    'targetAccountId': 'string',
                    'targetRegion': 'string'
                },
            ],
            'name': 'string',
            'prerequisite': 'string',
            'recommendationId': 'string',
            'referenceId': 'string',
            'risk': 'Small'|'Medium'|'High',
            'type': 'Software'|'Hardware'|'AZ'|'Region'
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

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

    • testRecommendations (list) --

      The test recommendations for the Resilience Hub application.

      • (dict) --

        Defines a test recommendation.

        • appComponentName (string) --

          Name of the Application Component.

        • dependsOnAlarms (list) --

          A list of recommended alarms that are used in the test and must be exported before or with the test.

          • (string) --

        • description (string) --

          Description for the test recommendation.

        • intent (string) --

          Intent of the test recommendation.

        • items (list) --

          The test recommendation items.

          • (dict) --

            Defines a recommendation.

            • alreadyImplemented (boolean) --

              Specifies if the recommendation has already been implemented.

            • excludeReason (string) --

              Indicates the reason for excluding an operational recommendation.

            • excluded (boolean) --

              Indicates if an operational recommendation item is excluded.

            • resourceId (string) --

              Identifier of the resource.

            • targetAccountId (string) --

              Identifier of the target account.

            • targetRegion (string) --

              The target region.

        • name (string) --

          Name of the test recommendation.

        • prerequisite (string) --

          Prerequisite of the test recommendation.

        • recommendationId (string) --

          Identifier for the test recommendation.

        • referenceId (string) --

          Reference identifier for the test recommendation.

        • risk (string) --

          Level of risk for this test recommendation.

        • type (string) --

          Type of test recommendation.

PublishAppVersion (updated) Link ¶
Changes (request, response)
Request
{'versionName': 'string'}
Response
{'identifier': 'long', 'versionName': 'string'}

Publishes a new version of a specific Resilience Hub application.

See also: AWS API Documentation

Request Syntax

client.publish_app_version(
    appArn='string',
    versionName='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 AWS General Reference guide.

type versionName

string

param versionName

Name of the application version.

rtype

dict

returns

Response Syntax

{
    'appArn': 'string',
    'appVersion': 'string',
    'identifier': 123,
    'versionName': '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 AWS General Reference guide.

    • appVersion (string) --

      The version of the application.

    • identifier (integer) --

      Identifier of the application version.

    • versionName (string) --

      Name of the application version.

StartAppAssessment (updated) Link ¶
Changes (response)
{'assessment': {'driftStatus': 'NotChecked | NotDetected | Detected',
                'policy': {'tier': {'NotApplicable'}},
                'versionName': '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 AWS 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',
                'currentRpoInSecs': 123,
                'currentRtoInSecs': 123,
                'message': 'string',
                'rpoDescription': 'string',
                'rpoReferenceId': 'string',
                'rtoDescription': 'string',
                'rtoReferenceId': 'string'
            }
        },
        'complianceStatus': 'PolicyBreached'|'PolicyMet',
        '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': {
            'disruptionScore': {
                'string': 123.0
            },
            'score': 123.0
        },
        'resourceErrorsDetails': {
            'hasMoreErrors': True|False,
            'resourceErrors': [
                {
                    'logicalResourceId': 'string',
                    'physicalResourceId': 'string',
                    'reason': 'string'
                },
            ]
        },
        'startTime': datetime(2015, 1, 1),
        '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 AWS 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 AWS 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) --

          The timestamp for 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) --

                The Recovery Point Objective (RPO), in seconds.

              • rtoInSecs (integer) --

                The 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 AWS 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.

        • 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.

      • 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 (request, response)
Request
{'eventSubscriptions': [{'eventType': 'ScheduledAssessmentFailure | '
                                      'DriftDetected',
                         'name': 'string',
                         'snsTopicArn': 'string'}],
 'permissionModel': {'crossAccountRoleArns': ['string'],
                     'invokerRoleName': 'string',
                     'type': 'LegacyIAMUser | RoleBased'}}
Response
{'app': {'driftStatus': 'NotChecked | NotDetected | Detected',
         'eventSubscriptions': [{'eventType': 'ScheduledAssessmentFailure | '
                                              'DriftDetected',
                                 'name': 'string',
                                 'snsTopicArn': 'string'}],
         'lastDriftEvaluationTime': 'timestamp',
         'permissionModel': {'crossAccountRoleArns': ['string'],
                             'invokerRoleName': 'string',
                             'type': 'LegacyIAMUser | RoleBased'}}}

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 AWS 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 :resiliencehub:region :account :app/app-id . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS 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.

  • 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 AWS General Reference guide.

rtype

dict

returns

Response Syntax

{
    'app': {
        'appArn': 'string',
        'assessmentSchedule': 'Disabled'|'Daily',
        'complianceStatus': 'PolicyBreached'|'PolicyMet'|'NotAssessed'|'ChangesDetected',
        '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,
        '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 AWS 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) --

        Timestamp for 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 :resiliencehub:region :account :app/app-id . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.

      • lastAppComplianceEvaluationTime (datetime) --

        Timestamp for the most recent compliance evaluation.

      • lastDriftEvaluationTime (datetime) --

        Indicates the last time that a drift was evaluated.

      • lastResiliencyScoreEvaluationTime (datetime) --

        Timestamp for 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.

        • 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 AWS General Reference guide.

      • resiliencyScore (float) --

        Current resiliency score for the application.

      • 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) --

UpdateResiliencyPolicy (updated) Link ¶
Changes (request, response)
Request
{'tier': {'NotApplicable'}}
Response
{'policy': {'tier': {'NotApplicable'}}}

Updates a resiliency policy.

See also: AWS API Documentation

Request Syntax

client.update_resiliency_policy(
    dataLocationConstraint='AnyLocation'|'SameContinent'|'SameCountry',
    policy={
        'string': {
            'rpoInSecs': 123,
            'rtoInSecs': 123
        }
    },
    policyArn='string',
    policyDescription='string',
    policyName='string',
    tier='MissionCritical'|'Critical'|'Important'|'CoreServices'|'NonCritical'|'NotApplicable'
)
type dataLocationConstraint

string

param dataLocationConstraint

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

type policy

dict

param policy

The type of resiliency policy to be created, including the recovery time objective (RTO) and recovery point objective (RPO) in seconds.

  • (string) --

    • (dict) --

      Defines a failure policy.

      • rpoInSecs (integer) -- [REQUIRED]

        The Recovery Point Objective (RPO), in seconds.

      • rtoInSecs (integer) -- [REQUIRED]

        The Recovery Time Objective (RTO), in seconds.

type policyArn

string

param policyArn

[REQUIRED]

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 AWS General Reference guide.

type policyDescription

string

param policyDescription

The description for the policy.

type policyName

string

param policyName

The name of the policy

type tier

string

param tier

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

rtype

dict

returns

Response Syntax

{
    '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'
    }
}

Response Structure

  • (dict) --

    • policy (dict) --

      The type of resiliency policy that was updated, including the recovery time objective (RTO) and recovery point objective (RPO) in seconds.

      • creationTime (datetime) --

        The timestamp for 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) --

              The Recovery Point Objective (RPO), in seconds.

            • rtoInSecs (integer) --

              The 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 AWS 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 ).