SDK for PHP 3.x

Client: Aws\ResilienceHub\ResilienceHubClient
Service ID: resiliencehub
Version: 2020-04-30

This page describes the parameters and results for the operations of the AWS Resilience Hub (2020-04-30), and shows how to use the Aws\ResilienceHub\ResilienceHubClient object to call the described operations. This documentation is specific to the 2020-04-30 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

AcceptResourceGroupingRecommendations ( array $params = [] )
Accepts the resource grouping recommendations suggested by Resilience Hub for your application.
AddDraftAppVersionResourceMappings ( array $params = [] )
Adds the source of resource-maps to the draft version of an application.
BatchUpdateRecommendationStatus ( array $params = [] )
Enables you to include or exclude one or more operational recommendations.
CreateApp ( array $params = [] )
Creates an Resilience Hub application.
CreateAppVersionAppComponent ( array $params = [] )
Creates a new Application Component in the Resilience Hub application.
CreateAppVersionResource ( array $params = [] )
Adds a resource to the Resilience Hub application and assigns it to the specified Application Components.
CreateRecommendationTemplate ( array $params = [] )
Creates a new recommendation template for the Resilience Hub application.
CreateResiliencyPolicy ( array $params = [] )
Creates a resiliency policy for an application.
DeleteApp ( array $params = [] )
Deletes an Resilience Hub application.
DeleteAppAssessment ( array $params = [] )
Deletes an Resilience Hub application assessment.
DeleteAppInputSource ( array $params = [] )
Deletes the input source and all of its imported resources from the Resilience Hub application.
DeleteAppVersionAppComponent ( array $params = [] )
Deletes an Application Component from the Resilience Hub application.
DeleteAppVersionResource ( array $params = [] )
Deletes a resource from the Resilience Hub application.
DeleteRecommendationTemplate ( array $params = [] )
Deletes a recommendation template.
DeleteResiliencyPolicy ( array $params = [] )
Deletes a resiliency policy.
DescribeApp ( array $params = [] )
Describes an Resilience Hub application.
DescribeAppAssessment ( array $params = [] )
Describes an assessment for an Resilience Hub application.
DescribeAppVersion ( array $params = [] )
Describes the Resilience Hub application version.
DescribeAppVersionAppComponent ( array $params = [] )
Describes an Application Component in the Resilience Hub application.
DescribeAppVersionResource ( array $params = [] )
Describes a resource of the Resilience Hub application.
DescribeAppVersionResourcesResolutionStatus ( array $params = [] )
Returns the resolution status for the specified resolution identifier for an application version.
DescribeAppVersionTemplate ( array $params = [] )
Describes details about an Resilience Hub application.
DescribeDraftAppVersionResourcesImportStatus ( array $params = [] )
Describes the status of importing resources to an application version.
DescribeResiliencyPolicy ( array $params = [] )
Describes a specified resiliency policy for an Resilience Hub application.
DescribeResourceGroupingRecommendationTask ( array $params = [] )
Describes the resource grouping recommendation tasks run by Resilience Hub for your application.
ImportResourcesToDraftAppVersion ( array $params = [] )
Imports resources to Resilience Hub application draft version from different input sources.
ListAlarmRecommendations ( array $params = [] )
Lists the alarm recommendations for an Resilience Hub application.
ListAppAssessmentComplianceDrifts ( array $params = [] )
List of compliance drifts that were detected while running an assessment.
ListAppAssessmentResourceDrifts ( array $params = [] )
Indicates the list of resource drifts that were detected while running an assessment.
ListAppAssessments ( array $params = [] )
Lists the assessments for an Resilience Hub application.
ListAppComponentCompliances ( array $params = [] )
Lists the compliances for an Resilience Hub Application Component.
ListAppComponentRecommendations ( array $params = [] )
Lists the recommendations for an Resilience Hub Application Component.
ListAppInputSources ( array $params = [] )
Lists all the input sources of the Resilience Hub application.
ListAppVersionAppComponents ( array $params = [] )
Lists all the Application Components in the Resilience Hub application.
ListAppVersionResourceMappings ( array $params = [] )
Lists how the resources in an application version are mapped/sourced from.
ListAppVersionResources ( array $params = [] )
Lists all the resources in an Resilience Hub application.
ListAppVersions ( array $params = [] )
Lists the different versions for the Resilience Hub applications.
ListApps ( array $params = [] )
Lists your Resilience Hub applications.
ListRecommendationTemplates ( array $params = [] )
Lists the recommendation templates for the Resilience Hub applications.
ListResiliencyPolicies ( array $params = [] )
Lists the resiliency policies for the Resilience Hub applications.
ListResourceGroupingRecommendations ( array $params = [] )
Lists the resource grouping recommendations suggested by Resilience Hub for your application.
ListSopRecommendations ( array $params = [] )
Lists the standard operating procedure (SOP) recommendations for the Resilience Hub applications.
ListSuggestedResiliencyPolicies ( array $params = [] )
Lists the suggested resiliency policies for the Resilience Hub applications.
ListTagsForResource ( array $params = [] )
Lists the tags for your resources in your Resilience Hub applications.
ListTestRecommendations ( array $params = [] )
Lists the test recommendations for the Resilience Hub application.
ListUnsupportedAppVersionResources ( array $params = [] )
Lists the resources that are not currently supported in Resilience Hub.
PublishAppVersion ( array $params = [] )
Publishes a new version of a specific Resilience Hub application.
PutDraftAppVersionTemplate ( array $params = [] )
Adds or updates the app template for an Resilience Hub application draft version.
RejectResourceGroupingRecommendations ( array $params = [] )
Rejects resource grouping recommendations.
RemoveDraftAppVersionResourceMappings ( array $params = [] )
Removes resource mappings from a draft application version.
ResolveAppVersionResources ( array $params = [] )
Resolves the resources for an application version.
StartAppAssessment ( array $params = [] )
Creates a new application assessment for an application.
StartResourceGroupingRecommendationTask ( array $params = [] )
Starts grouping recommendation task.
TagResource ( array $params = [] )
Applies one or more tags to a resource.
UntagResource ( array $params = [] )
Removes one or more tags from a resource.
UpdateApp ( array $params = [] )
Updates an application.
UpdateAppVersion ( array $params = [] )
Updates the Resilience Hub application version.
UpdateAppVersionAppComponent ( array $params = [] )
Updates an existing Application Component in the Resilience Hub application.
UpdateAppVersionResource ( array $params = [] )
Updates the resource details in the Resilience Hub application.
UpdateResiliencyPolicy ( array $params = [] )
Updates a resiliency policy.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

ListAlarmRecommendations
ListAppAssessmentComplianceDrifts
ListAppAssessmentResourceDrifts
ListAppAssessments
ListAppComponentCompliances
ListAppComponentRecommendations
ListAppInputSources
ListAppVersionAppComponents
ListAppVersionResourceMappings
ListAppVersionResources
ListAppVersions
ListApps
ListRecommendationTemplates
ListResiliencyPolicies
ListResourceGroupingRecommendations
ListSopRecommendations
ListSuggestedResiliencyPolicies
ListTestRecommendations
ListUnsupportedAppVersionResources

Operations

AcceptResourceGroupingRecommendations

$result = $client->acceptResourceGroupingRecommendations([/* ... */]);
$promise = $client->acceptResourceGroupingRecommendationsAsync([/* ... */]);

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

Parameter Syntax

$result = $client->acceptResourceGroupingRecommendations([
    'appArn' => '<string>', // REQUIRED
    'entries' => [ // REQUIRED
        [
            'groupingRecommendationId' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

entries
Required: Yes
Type: Array of AcceptGroupingRecommendationEntry structures

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

Result Syntax

[
    'appArn' => '<string>',
    'failedEntries' => [
        [
            'errorMessage' => '<string>',
            'groupingRecommendationId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
appArn
Required: Yes
Type: string

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

failedEntries
Required: Yes
Type: Array of FailedGroupingRecommendationEntry structures

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

AddDraftAppVersionResourceMappings

$result = $client->addDraftAppVersionResourceMappings([/* ... */]);
$promise = $client->addDraftAppVersionResourceMappingsAsync([/* ... */]);

Adds the source of resource-maps to the draft version of an application. During assessment, Resilience Hub will use these resource-maps to resolve the latest physical ID for each resource in the application template. For more information about different types of resources supported by Resilience Hub and how to add them in your application, see Step 2: How is your application managed? in the Resilience Hub User Guide.

Parameter Syntax

$result = $client->addDraftAppVersionResourceMappings([
    'appArn' => '<string>', // REQUIRED
    'resourceMappings' => [ // REQUIRED
        [
            'appRegistryAppName' => '<string>',
            'eksSourceName' => '<string>',
            'logicalStackName' => '<string>',
            'mappingType' => 'CfnStack|Resource|AppRegistryApp|ResourceGroup|Terraform|EKS', // REQUIRED
            'physicalResourceId' => [ // REQUIRED
                'awsAccountId' => '<string>',
                'awsRegion' => '<string>',
                'identifier' => '<string>', // REQUIRED
                'type' => 'Arn|Native', // REQUIRED
            ],
            'resourceGroupName' => '<string>',
            'resourceName' => '<string>',
            'terraformSourceName' => '<string>',
        ],
        // ...
    ],
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

resourceMappings
Required: Yes
Type: Array of ResourceMapping structures

Mappings used to map logical resources from the template to physical resources. You can use the mapping type CFN_STACK if the application template uses a logical stack name. Or you can map individual resources by using the mapping type RESOURCE. We recommend using the mapping type CFN_STACK if the application is backed by a CloudFormation stack.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'resourceMappings' => [
        [
            'appRegistryAppName' => '<string>',
            'eksSourceName' => '<string>',
            'logicalStackName' => '<string>',
            'mappingType' => 'CfnStack|Resource|AppRegistryApp|ResourceGroup|Terraform|EKS',
            'physicalResourceId' => [
                'awsAccountId' => '<string>',
                'awsRegion' => '<string>',
                'identifier' => '<string>',
                'type' => 'Arn|Native',
            ],
            'resourceGroupName' => '<string>',
            'resourceName' => '<string>',
            'terraformSourceName' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

resourceMappings
Required: Yes
Type: Array of ResourceMapping structures

List of sources that are used to map a logical resource from the template to a physical resource. You can use sources such as CloudFormation, Terraform state files, AppRegistry applications, or Amazon EKS.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ServiceQuotaExceededException:

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

BatchUpdateRecommendationStatus

$result = $client->batchUpdateRecommendationStatus([/* ... */]);
$promise = $client->batchUpdateRecommendationStatusAsync([/* ... */]);

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

Parameter Syntax

$result = $client->batchUpdateRecommendationStatus([
    'appArn' => '<string>', // REQUIRED
    'requestEntries' => [ // REQUIRED
        [
            'entryId' => '<string>', // REQUIRED
            'excludeReason' => 'AlreadyImplemented|NotRelevant|ComplexityOfImplementation',
            'excluded' => true || false, // REQUIRED
            'item' => [ // REQUIRED
                'resourceId' => '<string>',
                'targetAccountId' => '<string>',
                'targetRegion' => '<string>',
            ],
            'referenceId' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

requestEntries
Required: Yes
Type: Array of UpdateRecommendationStatusRequestEntry structures

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

Result 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>',
        ],
        // ...
    ],
]

Result Details

Members
appArn
Required: Yes
Type: string

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

failedEntries
Required: Yes
Type: Array of BatchUpdateRecommendationStatusFailedEntry structures

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

successfulEntries
Required: Yes
Type: Array of BatchUpdateRecommendationStatusSuccessfulEntry structures

A list of items that were included or excluded.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

CreateApp

$result = $client->createApp([/* ... */]);
$promise = $client->createAppAsync([/* ... */]);

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

Parameter Syntax

$result = $client->createApp([
    'assessmentSchedule' => 'Disabled|Daily',
    'clientToken' => '<string>',
    'description' => '<string>',
    'eventSubscriptions' => [
        [
            'eventType' => 'ScheduledAssessmentFailure|DriftDetected', // REQUIRED
            'name' => '<string>', // REQUIRED
            'snsTopicArn' => '<string>',
        ],
        // ...
    ],
    'name' => '<string>', // REQUIRED
    'permissionModel' => [
        'crossAccountRoleArns' => ['<string>', ...],
        'invokerRoleName' => '<string>',
        'type' => 'LegacyIAMUser|RoleBased', // REQUIRED
    ],
    'policyArn' => '<string>',
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
assessmentSchedule
Type: string

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

clientToken
Type: string

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.

description
Type: string

The optional description for an app.

eventSubscriptions
Type: Array of EventSubscription structures

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.

name
Required: Yes
Type: string

Name of the application.

permissionModel
Type: PermissionModel structure

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

policyArn
Type: string

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

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'app' => [
        'appArn' => '<string>',
        'assessmentSchedule' => 'Disabled|Daily',
        'complianceStatus' => 'PolicyBreached|PolicyMet|NotAssessed|ChangesDetected|NotApplicable|MissingPolicy',
        'creationTime' => <DateTime>,
        'description' => '<string>',
        'driftStatus' => 'NotChecked|NotDetected|Detected',
        'eventSubscriptions' => [
            [
                'eventType' => 'ScheduledAssessmentFailure|DriftDetected',
                'name' => '<string>',
                'snsTopicArn' => '<string>',
            ],
            // ...
        ],
        'lastAppComplianceEvaluationTime' => <DateTime>,
        'lastDriftEvaluationTime' => <DateTime>,
        'lastResiliencyScoreEvaluationTime' => <DateTime>,
        'name' => '<string>',
        'permissionModel' => [
            'crossAccountRoleArns' => ['<string>', ...],
            'invokerRoleName' => '<string>',
            'type' => 'LegacyIAMUser|RoleBased',
        ],
        'policyArn' => '<string>',
        'resiliencyScore' => <float>,
        'rpoInSecs' => <integer>,
        'rtoInSecs' => <integer>,
        'status' => 'Active|Deleting',
        'tags' => ['<string>', ...],
    ],
]

Result Details

Members
app
Required: Yes
Type: App structure

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ServiceQuotaExceededException:

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

CreateAppVersionAppComponent

$result = $client->createAppVersionAppComponent([/* ... */]);
$promise = $client->createAppVersionAppComponentAsync([/* ... */]);

Creates a new Application Component in the Resilience Hub application.

This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

Parameter Syntax

$result = $client->createAppVersionAppComponent([
    'additionalInfo' => [
        '<String128WithoutWhitespace>' => ['<string>', ...],
        // ...
    ],
    'appArn' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'id' => '<string>',
    'name' => '<string>', // REQUIRED
    'type' => '<string>', // REQUIRED
]);

Parameter Details

Members
additionalInfo
Type: Associative array of custom strings keys (String128WithoutWhitespace) to stringss

Currently, there is no supported additional information for Application Components.

appArn
Required: Yes
Type: string

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

clientToken
Type: string

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.

id
Type: string

Identifier of the Application Component.

name
Required: Yes
Type: string

Name of the Application Component.

type
Required: Yes
Type: string

Type of Application Component. For more information about the types of Application Component, see Grouping resources in an AppComponent.

Result Syntax

[
    'appArn' => '<string>',
    'appComponent' => [
        'additionalInfo' => [
            '<String128WithoutWhitespace>' => ['<string>', ...],
            // ...
        ],
        'id' => '<string>',
        'name' => '<string>',
        'type' => '<string>',
    ],
    'appVersion' => '<string>',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appComponent
Type: AppComponent structure

List of Application Components that belong to this resource.

appVersion
Required: Yes
Type: string

Resilience Hub application version.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ServiceQuotaExceededException:

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

CreateAppVersionResource

$result = $client->createAppVersionResource([/* ... */]);
$promise = $client->createAppVersionResourceAsync([/* ... */]);

Adds a resource to the Resilience Hub application and assigns it to the specified Application Components. If you specify a new Application Component, Resilience Hub will automatically create the Application Component.

  • This action has no effect outside Resilience Hub.

  • This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

  • To update application version with new physicalResourceID, you must call ResolveAppVersionResources API.

Parameter Syntax

$result = $client->createAppVersionResource([
    'additionalInfo' => [
        '<String128WithoutWhitespace>' => ['<string>', ...],
        // ...
    ],
    'appArn' => '<string>', // REQUIRED
    'appComponents' => ['<string>', ...], // REQUIRED
    'awsAccountId' => '<string>',
    'awsRegion' => '<string>',
    'clientToken' => '<string>',
    'logicalResourceId' => [ // REQUIRED
        'eksSourceName' => '<string>',
        'identifier' => '<string>', // REQUIRED
        'logicalStackName' => '<string>',
        'resourceGroupName' => '<string>',
        'terraformSourceName' => '<string>',
    ],
    'physicalResourceId' => '<string>', // REQUIRED
    'resourceName' => '<string>',
    'resourceType' => '<string>', // REQUIRED
]);

Parameter Details

Members
additionalInfo
Type: Associative array of custom strings keys (String128WithoutWhitespace) to stringss

Currently, there is no supported additional information for resources.

appArn
Required: Yes
Type: string

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

appComponents
Required: Yes
Type: Array of strings

List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.

awsAccountId
Type: string

Amazon Web Services account that owns the physical resource.

awsRegion
Type: string

Amazon Web Services region that owns the physical resource.

clientToken
Type: string

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.

logicalResourceId
Required: Yes
Type: LogicalResourceId structure

Logical identifier of the resource.

physicalResourceId
Required: Yes
Type: string

Physical identifier of the resource.

resourceName
Type: string

Name of the resource.

resourceType
Required: Yes
Type: string

Type of resource.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'physicalResource' => [
        'additionalInfo' => [
            '<String128WithoutWhitespace>' => ['<string>', ...],
            // ...
        ],
        'appComponents' => [
            [
                'additionalInfo' => [
                    '<String128WithoutWhitespace>' => ['<string>', ...],
                    // ...
                ],
                'id' => '<string>',
                'name' => '<string>',
                'type' => '<string>',
            ],
            // ...
        ],
        'excluded' => true || false,
        'logicalResourceId' => [
            'eksSourceName' => '<string>',
            'identifier' => '<string>',
            'logicalStackName' => '<string>',
            'resourceGroupName' => '<string>',
            'terraformSourceName' => '<string>',
        ],
        'parentResourceName' => '<string>',
        'physicalResourceId' => [
            'awsAccountId' => '<string>',
            'awsRegion' => '<string>',
            'identifier' => '<string>',
            'type' => 'Arn|Native',
        ],
        'resourceName' => '<string>',
        'resourceType' => '<string>',
        'sourceType' => 'AppTemplate|Discovered',
    ],
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

physicalResource
Type: PhysicalResource structure

Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or a Resilience Hub-native identifier.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ServiceQuotaExceededException:

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

CreateRecommendationTemplate

$result = $client->createRecommendationTemplate([/* ... */]);
$promise = $client->createRecommendationTemplateAsync([/* ... */]);

Creates a new recommendation template for the Resilience Hub application.

Parameter Syntax

$result = $client->createRecommendationTemplate([
    'assessmentArn' => '<string>', // REQUIRED
    'bucketName' => '<string>',
    'clientToken' => '<string>',
    'format' => 'CfnYaml|CfnJson',
    'name' => '<string>', // REQUIRED
    'recommendationIds' => ['<string>', ...],
    'recommendationTypes' => ['<string>', ...],
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

bucketName
Type: string

The name of the Amazon S3 bucket that will contain the recommendation template.

clientToken
Type: string

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.

format
Type: string

The format for the recommendation template.

CfnJson

The template is CloudFormation JSON.

CfnYaml

The template is CloudFormation YAML.

name
Required: Yes
Type: string

The name for the recommendation template.

recommendationIds
Type: Array of strings

Identifiers for the recommendations used to create a recommendation template.

recommendationTypes
Type: Array of strings

An array of strings that specify the recommendation template type or types.

Alarm

The template is an AlarmRecommendation template.

Sop

The template is a SopRecommendation template.

Test

The template is a TestRecommendation template.

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'recommendationTemplate' => [
        'appArn' => '<string>',
        'assessmentArn' => '<string>',
        'endTime' => <DateTime>,
        'format' => 'CfnYaml|CfnJson',
        'message' => '<string>',
        'name' => '<string>',
        'needsReplacements' => true || false,
        'recommendationIds' => ['<string>', ...],
        'recommendationTemplateArn' => '<string>',
        'recommendationTypes' => ['<string>', ...],
        'startTime' => <DateTime>,
        'status' => 'Pending|InProgress|Failed|Success',
        'tags' => ['<string>', ...],
        'templatesLocation' => [
            'bucket' => '<string>',
            'prefix' => '<string>',
        ],
    ],
]

Result Details

Members
recommendationTemplate
Type: RecommendationTemplate structure

The newly created recommendation template, returned as an object. This object includes the template's name, format, status, tags, Amazon S3 bucket location, and more.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ServiceQuotaExceededException:

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

CreateResiliencyPolicy

$result = $client->createResiliencyPolicy([/* ... */]);
$promise = $client->createResiliencyPolicyAsync([/* ... */]);

Creates a resiliency policy for an application.

Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs of your resiliency policy. But, while assessing your application, the lowest possible assessment result is near zero. Hence, if you provide value zero for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload RPO result will be near zero and the Compliance status for your application will be set to Policy breached.

Parameter Syntax

$result = $client->createResiliencyPolicy([
    'clientToken' => '<string>',
    'dataLocationConstraint' => 'AnyLocation|SameContinent|SameCountry',
    'policy' => [ // REQUIRED
        '<DisruptionType>' => [
            'rpoInSecs' => <integer>, // REQUIRED
            'rtoInSecs' => <integer>, // REQUIRED
        ],
        // ...
    ],
    'policyDescription' => '<string>',
    'policyName' => '<string>', // REQUIRED
    'tags' => ['<string>', ...],
    'tier' => 'MissionCritical|Critical|Important|CoreServices|NonCritical|NotApplicable', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

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.

dataLocationConstraint
Type: string

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

policy
Required: Yes
Type: Associative array of custom strings keys (DisruptionType) to FailurePolicy structures

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

policyDescription
Type: string

The description for the policy.

policyName
Required: Yes
Type: string

The name of the policy

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

tier
Required: Yes
Type: string

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

Result Syntax

[
    'policy' => [
        'creationTime' => <DateTime>,
        'dataLocationConstraint' => 'AnyLocation|SameContinent|SameCountry',
        'estimatedCostTier' => 'L1|L2|L3|L4',
        'policy' => [
            '<DisruptionType>' => [
                'rpoInSecs' => <integer>,
                'rtoInSecs' => <integer>,
            ],
            // ...
        ],
        'policyArn' => '<string>',
        'policyDescription' => '<string>',
        'policyName' => '<string>',
        'tags' => ['<string>', ...],
        'tier' => 'MissionCritical|Critical|Important|CoreServices|NonCritical|NotApplicable',
    ],
]

Result Details

Members
policy
Required: Yes
Type: ResiliencyPolicy structure

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

Errors

InternalServerException:

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

ConflictException:

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

ServiceQuotaExceededException:

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DeleteApp

$result = $client->deleteApp([/* ... */]);
$promise = $client->deleteAppAsync([/* ... */]);

Deletes an Resilience Hub application. This is a destructive action that can't be undone.

Parameter Syntax

$result = $client->deleteApp([
    'appArn' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'forceDelete' => true || false,
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

clientToken
Type: string

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.

forceDelete
Type: boolean

A boolean option to force the deletion of an Resilience Hub application.

Result Syntax

[
    'appArn' => '<string>',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

DeleteAppAssessment

$result = $client->deleteAppAssessment([/* ... */]);
$promise = $client->deleteAppAssessmentAsync([/* ... */]);

Deletes an Resilience Hub application assessment. This is a destructive action that can't be undone.

Parameter Syntax

$result = $client->deleteAppAssessment([
    'assessmentArn' => '<string>', // REQUIRED
    'clientToken' => '<string>',
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

clientToken
Type: string

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.

Result Syntax

[
    'assessmentArn' => '<string>',
    'assessmentStatus' => 'Pending|InProgress|Failed|Success',
]

Result Details

Members
assessmentArn
Required: Yes
Type: string

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

assessmentStatus
Required: Yes
Type: string

The current status of the assessment for the resiliency policy.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DeleteAppInputSource

$result = $client->deleteAppInputSource([/* ... */]);
$promise = $client->deleteAppInputSourceAsync([/* ... */]);

Deletes the input source and all of its imported resources from the Resilience Hub application.

Parameter Syntax

$result = $client->deleteAppInputSource([
    'appArn' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'eksSourceClusterNamespace' => [
        'eksClusterArn' => '<string>', // REQUIRED
        'namespace' => '<string>', // REQUIRED
    ],
    'sourceArn' => '<string>',
    'terraformSource' => [
        's3StateFileUrl' => '<string>', // REQUIRED
    ],
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

clientToken
Type: string

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.

eksSourceClusterNamespace
Type: EksSourceClusterNamespace structure

The namespace on your Amazon Elastic Kubernetes Service cluster that you want to delete from the Resilience Hub application.

sourceArn
Type: string

The Amazon Resource Name (ARN) of the imported resource you want to remove from the Resilience Hub application. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

terraformSource
Type: TerraformSource structure

The imported Terraform s3 state file you want to remove from the Resilience Hub application.

Result Syntax

[
    'appArn' => '<string>',
    'appInputSource' => [
        'eksSourceClusterNamespace' => [
            'eksClusterArn' => '<string>',
            'namespace' => '<string>',
        ],
        'importType' => 'CfnStack|Resource|AppRegistryApp|ResourceGroup|Terraform|EKS',
        'resourceCount' => <integer>,
        'sourceArn' => '<string>',
        'sourceName' => '<string>',
        'terraformSource' => [
            's3StateFileUrl' => '<string>',
        ],
    ],
]

Result Details

Members
appArn
Type: string

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

appInputSource
Type: AppInputSource structure

Name of the input source from where the application resource is imported from.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DeleteAppVersionAppComponent

$result = $client->deleteAppVersionAppComponent([/* ... */]);
$promise = $client->deleteAppVersionAppComponentAsync([/* ... */]);

Deletes an Application Component from the Resilience Hub application.

  • This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

  • You will not be able to delete an Application Component if it has resources associated with it.

Parameter Syntax

$result = $client->deleteAppVersionAppComponent([
    'appArn' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'id' => '<string>', // REQUIRED
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

clientToken
Type: string

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.

id
Required: Yes
Type: string

Identifier of the Application Component.

Result Syntax

[
    'appArn' => '<string>',
    'appComponent' => [
        'additionalInfo' => [
            '<String128WithoutWhitespace>' => ['<string>', ...],
            // ...
        ],
        'id' => '<string>',
        'name' => '<string>',
        'type' => '<string>',
    ],
    'appVersion' => '<string>',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appComponent
Type: AppComponent structure

List of Application Components that belong to this resource.

appVersion
Required: Yes
Type: string

Resilience Hub application version.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DeleteAppVersionResource

$result = $client->deleteAppVersionResource([/* ... */]);
$promise = $client->deleteAppVersionResourceAsync([/* ... */]);

Deletes a resource from the Resilience Hub application.

  • You can only delete a manually added resource. To exclude non-manually added resources, use the UpdateAppVersionResource API.

  • This action has no effect outside Resilience Hub.

  • This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

Parameter Syntax

$result = $client->deleteAppVersionResource([
    'appArn' => '<string>', // REQUIRED
    'awsAccountId' => '<string>',
    'awsRegion' => '<string>',
    'clientToken' => '<string>',
    'logicalResourceId' => [
        'eksSourceName' => '<string>',
        'identifier' => '<string>', // REQUIRED
        'logicalStackName' => '<string>',
        'resourceGroupName' => '<string>',
        'terraformSourceName' => '<string>',
    ],
    'physicalResourceId' => '<string>',
    'resourceName' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

awsAccountId
Type: string

Amazon Web Services account that owns the physical resource.

awsRegion
Type: string

Amazon Web Services region that owns the physical resource.

clientToken
Type: string

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.

logicalResourceId
Type: LogicalResourceId structure

Logical identifier of the resource.

physicalResourceId
Type: string

Physical identifier of the resource.

resourceName
Type: string

Name of the resource.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'physicalResource' => [
        'additionalInfo' => [
            '<String128WithoutWhitespace>' => ['<string>', ...],
            // ...
        ],
        'appComponents' => [
            [
                'additionalInfo' => [
                    '<String128WithoutWhitespace>' => ['<string>', ...],
                    // ...
                ],
                'id' => '<string>',
                'name' => '<string>',
                'type' => '<string>',
            ],
            // ...
        ],
        'excluded' => true || false,
        'logicalResourceId' => [
            'eksSourceName' => '<string>',
            'identifier' => '<string>',
            'logicalStackName' => '<string>',
            'resourceGroupName' => '<string>',
            'terraformSourceName' => '<string>',
        ],
        'parentResourceName' => '<string>',
        'physicalResourceId' => [
            'awsAccountId' => '<string>',
            'awsRegion' => '<string>',
            'identifier' => '<string>',
            'type' => 'Arn|Native',
        ],
        'resourceName' => '<string>',
        'resourceType' => '<string>',
        'sourceType' => 'AppTemplate|Discovered',
    ],
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

physicalResource
Type: PhysicalResource structure

Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or a Resilience Hub-native identifier.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DeleteRecommendationTemplate

$result = $client->deleteRecommendationTemplate([/* ... */]);
$promise = $client->deleteRecommendationTemplateAsync([/* ... */]);

Deletes a recommendation template. This is a destructive action that can't be undone.

Parameter Syntax

$result = $client->deleteRecommendationTemplate([
    'clientToken' => '<string>',
    'recommendationTemplateArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

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.

recommendationTemplateArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for a recommendation template.

Result Syntax

[
    'recommendationTemplateArn' => '<string>',
    'status' => 'Pending|InProgress|Failed|Success',
]

Result Details

Members
recommendationTemplateArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for a recommendation template.

status
Required: Yes
Type: string

Status of the action.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DeleteResiliencyPolicy

$result = $client->deleteResiliencyPolicy([/* ... */]);
$promise = $client->deleteResiliencyPolicyAsync([/* ... */]);

Deletes a resiliency policy. This is a destructive action that can't be undone.

Parameter Syntax

$result = $client->deleteResiliencyPolicy([
    'clientToken' => '<string>',
    'policyArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

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.

policyArn
Required: Yes
Type: string

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

Result Syntax

[
    'policyArn' => '<string>',
]

Result Details

Members
policyArn
Required: Yes
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeApp

$result = $client->describeApp([/* ... */]);
$promise = $client->describeAppAsync([/* ... */]);

Describes an Resilience Hub application.

Parameter Syntax

$result = $client->describeApp([
    'appArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

Result Syntax

[
    'app' => [
        'appArn' => '<string>',
        'assessmentSchedule' => 'Disabled|Daily',
        'complianceStatus' => 'PolicyBreached|PolicyMet|NotAssessed|ChangesDetected|NotApplicable|MissingPolicy',
        'creationTime' => <DateTime>,
        'description' => '<string>',
        'driftStatus' => 'NotChecked|NotDetected|Detected',
        'eventSubscriptions' => [
            [
                'eventType' => 'ScheduledAssessmentFailure|DriftDetected',
                'name' => '<string>',
                'snsTopicArn' => '<string>',
            ],
            // ...
        ],
        'lastAppComplianceEvaluationTime' => <DateTime>,
        'lastDriftEvaluationTime' => <DateTime>,
        'lastResiliencyScoreEvaluationTime' => <DateTime>,
        'name' => '<string>',
        'permissionModel' => [
            'crossAccountRoleArns' => ['<string>', ...],
            'invokerRoleName' => '<string>',
            'type' => 'LegacyIAMUser|RoleBased',
        ],
        'policyArn' => '<string>',
        'resiliencyScore' => <float>,
        'rpoInSecs' => <integer>,
        'rtoInSecs' => <integer>,
        'status' => 'Active|Deleting',
        'tags' => ['<string>', ...],
    ],
]

Result Details

Members
app
Required: Yes
Type: App structure

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeAppAssessment

$result = $client->describeAppAssessment([/* ... */]);
$promise = $client->describeAppAssessmentAsync([/* ... */]);

Describes an assessment for an Resilience Hub application.

Parameter Syntax

$result = $client->describeAppAssessment([
    'assessmentArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

Result Syntax

[
    'assessment' => [
        'appArn' => '<string>',
        'appVersion' => '<string>',
        'assessmentArn' => '<string>',
        'assessmentName' => '<string>',
        'assessmentStatus' => 'Pending|InProgress|Failed|Success',
        'compliance' => [
            '<DisruptionType>' => [
                'achievableRpoInSecs' => <integer>,
                'achievableRtoInSecs' => <integer>,
                'complianceStatus' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
                'currentRpoInSecs' => <integer>,
                'currentRtoInSecs' => <integer>,
                'message' => '<string>',
                'rpoDescription' => '<string>',
                'rpoReferenceId' => '<string>',
                'rtoDescription' => '<string>',
                'rtoReferenceId' => '<string>',
            ],
            // ...
        ],
        'complianceStatus' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
        'cost' => [
            'amount' => <float>,
            'currency' => '<string>',
            'frequency' => 'Hourly|Daily|Monthly|Yearly',
        ],
        'driftStatus' => 'NotChecked|NotDetected|Detected',
        'endTime' => <DateTime>,
        'invoker' => 'User|System',
        'message' => '<string>',
        'policy' => [
            'creationTime' => <DateTime>,
            'dataLocationConstraint' => 'AnyLocation|SameContinent|SameCountry',
            'estimatedCostTier' => 'L1|L2|L3|L4',
            'policy' => [
                '<DisruptionType>' => [
                    'rpoInSecs' => <integer>,
                    'rtoInSecs' => <integer>,
                ],
                // ...
            ],
            'policyArn' => '<string>',
            'policyDescription' => '<string>',
            'policyName' => '<string>',
            'tags' => ['<string>', ...],
            'tier' => 'MissionCritical|Critical|Important|CoreServices|NonCritical|NotApplicable',
        ],
        'resiliencyScore' => [
            'componentScore' => [
                '<ResiliencyScoreType>' => [
                    'excludedCount' => <integer>,
                    'outstandingCount' => <integer>,
                    'possibleScore' => <float>,
                    'score' => <float>,
                ],
                // ...
            ],
            'disruptionScore' => [<float>, ...],
            'score' => <float>,
        ],
        'resourceErrorsDetails' => [
            'hasMoreErrors' => true || false,
            'resourceErrors' => [
                [
                    'logicalResourceId' => '<string>',
                    'physicalResourceId' => '<string>',
                    'reason' => '<string>',
                ],
                // ...
            ],
        ],
        'startTime' => <DateTime>,
        'summary' => [
            'riskRecommendations' => [
                [
                    'appComponents' => ['<string>', ...],
                    'recommendation' => '<string>',
                    'risk' => '<string>',
                ],
                // ...
            ],
            'summary' => '<string>',
        ],
        'tags' => ['<string>', ...],
        'versionName' => '<string>',
    ],
]

Result Details

Members
assessment
Required: Yes
Type: AppAssessment structure

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.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeAppVersion

$result = $client->describeAppVersion([/* ... */]);
$promise = $client->describeAppVersionAsync([/* ... */]);

Describes the Resilience Hub application version.

Parameter Syntax

$result = $client->describeAppVersion([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

Result Syntax

[
    'additionalInfo' => [
        '<String128WithoutWhitespace>' => ['<string>', ...],
        // ...
    ],
    'appArn' => '<string>',
    'appVersion' => '<string>',
]

Result Details

Members
additionalInfo
Type: Associative array of custom strings keys (String128WithoutWhitespace) to stringss

Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

Currently, this parameter supports only failover region and account.

appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeAppVersionAppComponent

$result = $client->describeAppVersionAppComponent([/* ... */]);
$promise = $client->describeAppVersionAppComponentAsync([/* ... */]);

Describes an Application Component in the Resilience Hub application.

Parameter Syntax

$result = $client->describeAppVersionAppComponent([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
    'id' => '<string>', // REQUIRED
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

id
Required: Yes
Type: string

Identifier of the Application Component.

Result Syntax

[
    'appArn' => '<string>',
    'appComponent' => [
        'additionalInfo' => [
            '<String128WithoutWhitespace>' => ['<string>', ...],
            // ...
        ],
        'id' => '<string>',
        'name' => '<string>',
        'type' => '<string>',
    ],
    'appVersion' => '<string>',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appComponent
Type: AppComponent structure

List of Application Components that belong to this resource.

appVersion
Required: Yes
Type: string

Resilience Hub application version.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeAppVersionResource

$result = $client->describeAppVersionResource([/* ... */]);
$promise = $client->describeAppVersionResourceAsync([/* ... */]);

Describes a resource of the Resilience Hub application.

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

  • resourceName

  • logicalResourceId

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

Parameter Syntax

$result = $client->describeAppVersionResource([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
    'awsAccountId' => '<string>',
    'awsRegion' => '<string>',
    'logicalResourceId' => [
        'eksSourceName' => '<string>',
        'identifier' => '<string>', // REQUIRED
        'logicalStackName' => '<string>',
        'resourceGroupName' => '<string>',
        'terraformSourceName' => '<string>',
    ],
    'physicalResourceId' => '<string>',
    'resourceName' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

awsAccountId
Type: string

Amazon Web Services account that owns the physical resource.

awsRegion
Type: string

Amazon Web Services region that owns the physical resource.

logicalResourceId
Type: LogicalResourceId structure

Logical identifier of the resource.

physicalResourceId
Type: string

Physical identifier of the resource.

resourceName
Type: string

Name of the resource.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'physicalResource' => [
        'additionalInfo' => [
            '<String128WithoutWhitespace>' => ['<string>', ...],
            // ...
        ],
        'appComponents' => [
            [
                'additionalInfo' => [
                    '<String128WithoutWhitespace>' => ['<string>', ...],
                    // ...
                ],
                'id' => '<string>',
                'name' => '<string>',
                'type' => '<string>',
            ],
            // ...
        ],
        'excluded' => true || false,
        'logicalResourceId' => [
            'eksSourceName' => '<string>',
            'identifier' => '<string>',
            'logicalStackName' => '<string>',
            'resourceGroupName' => '<string>',
            'terraformSourceName' => '<string>',
        ],
        'parentResourceName' => '<string>',
        'physicalResourceId' => [
            'awsAccountId' => '<string>',
            'awsRegion' => '<string>',
            'identifier' => '<string>',
            'type' => 'Arn|Native',
        ],
        'resourceName' => '<string>',
        'resourceType' => '<string>',
        'sourceType' => 'AppTemplate|Discovered',
    ],
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

physicalResource
Type: PhysicalResource structure

Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or a Resilience Hub-native identifier.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeAppVersionResourcesResolutionStatus

$result = $client->describeAppVersionResourcesResolutionStatus([/* ... */]);
$promise = $client->describeAppVersionResourcesResolutionStatusAsync([/* ... */]);

Returns the resolution status for the specified resolution identifier for an application version. If resolutionId is not specified, the current resolution status is returned.

Parameter Syntax

$result = $client->describeAppVersionResourcesResolutionStatus([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
    'resolutionId' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

resolutionId
Type: string

The identifier for a specific resolution.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'errorMessage' => '<string>',
    'resolutionId' => '<string>',
    'status' => 'Pending|InProgress|Failed|Success',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

errorMessage
Type: string

The returned error message for the request.

resolutionId
Required: Yes
Type: string

The identifier for a specific resolution.

status
Required: Yes
Type: string

Status of the action.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeAppVersionTemplate

$result = $client->describeAppVersionTemplate([/* ... */]);
$promise = $client->describeAppVersionTemplateAsync([/* ... */]);

Describes details about an Resilience Hub application.

Parameter Syntax

$result = $client->describeAppVersionTemplate([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

Result Syntax

[
    'appArn' => '<string>',
    'appTemplateBody' => '<string>',
    'appVersion' => '<string>',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appTemplateBody
Required: Yes
Type: string

A JSON string that provides information about your application structure. To learn more about the appTemplateBody template, see the sample template provided in the Examples section.

The appTemplateBody JSON string has the following structure:

  • resources

    The list of logical resources that must be included in the Resilience Hub application.

    Type: Array

    Don't add the resources that you want to exclude.

    Each resources array item includes the following fields:

    • logicalResourceId

      Logical identifier of the resource.

      Type: Object

      Each logicalResourceId object includes the following fields:

      • identifier

        Identifier of the resource.

        Type: String

      • logicalStackName

        The name of the CloudFormation stack this resource belongs to.

        Type: String

      • resourceGroupName

        The name of the resource group this resource belongs to.

        Type: String

      • terraformSourceName

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

        Type: String

      • eksSourceName

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

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

        Type: String

    • type

      The type of resource.

      Type: string

    • name

      The name of the resource.

      Type: String

    • additionalInfo

      Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

      Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

      Key: "failover-regions"

      Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

  • appComponents

    List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.

    Type: Array

    Each appComponents array item includes the following fields:

    • name

      Name of the Application Component.

      Type: String

    • type

      Type of Application Component. For more information about the types of Application Component, see Grouping resources in an AppComponent.

      Type: String

    • resourceNames

      The list of included resources that are assigned to the Application Component.

      Type: Array of strings

    • additionalInfo

      Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

      Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

      Key: "failover-regions"

      Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

  • excludedResources

    The list of logical resource identifiers to be excluded from the application.

    Type: Array

    Don't add the resources that you want to include.

    Each excludedResources array item includes the following fields:

    • logicalResourceIds

      Logical identifier of the resource.

      Type: Object

      You can configure only one of the following fields:

      • logicalStackName

      • resourceGroupName

      • terraformSourceName

      • eksSourceName

      Each logicalResourceIds object includes the following fields:

      • identifier

        Identifier of the resource.

        Type: String

      • logicalStackName

        The name of the CloudFormation stack this resource belongs to.

        Type: String

      • resourceGroupName

        The name of the resource group this resource belongs to.

        Type: String

      • terraformSourceName

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

        Type: String

      • eksSourceName

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

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

        Type: String

  • version

    Resilience Hub application version.

  • additionalInfo

    Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

    Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

    Key: "failover-regions"

    Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

appVersion
Required: Yes
Type: string

The version of the application.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeDraftAppVersionResourcesImportStatus

$result = $client->describeDraftAppVersionResourcesImportStatus([/* ... */]);
$promise = $client->describeDraftAppVersionResourcesImportStatusAsync([/* ... */]);

Describes the status of importing resources to an application version.

If you get a 404 error with ResourceImportStatusNotFoundAppMetadataException, you must call importResourcesToDraftAppVersion after creating the application and before calling describeDraftAppVersionResourcesImportStatus to obtain the status.

Parameter Syntax

$result = $client->describeDraftAppVersionResourcesImportStatus([
    'appArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'errorMessage' => '<string>',
    'status' => 'Pending|InProgress|Failed|Success',
    'statusChangeTime' => <DateTime>,
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

errorMessage
Type: string

The returned error message for the request.

status
Required: Yes
Type: string

Status of the action.

statusChangeTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time when the status last changed.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeResiliencyPolicy

$result = $client->describeResiliencyPolicy([/* ... */]);
$promise = $client->describeResiliencyPolicyAsync([/* ... */]);

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.

Parameter Syntax

$result = $client->describeResiliencyPolicy([
    'policyArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
policyArn
Required: Yes
Type: string

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

Result Syntax

[
    'policy' => [
        'creationTime' => <DateTime>,
        'dataLocationConstraint' => 'AnyLocation|SameContinent|SameCountry',
        'estimatedCostTier' => 'L1|L2|L3|L4',
        'policy' => [
            '<DisruptionType>' => [
                'rpoInSecs' => <integer>,
                'rtoInSecs' => <integer>,
            ],
            // ...
        ],
        'policyArn' => '<string>',
        'policyDescription' => '<string>',
        'policyName' => '<string>',
        'tags' => ['<string>', ...],
        'tier' => 'MissionCritical|Critical|Important|CoreServices|NonCritical|NotApplicable',
    ],
]

Result Details

Members
policy
Required: Yes
Type: ResiliencyPolicy structure

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.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

DescribeResourceGroupingRecommendationTask

$result = $client->describeResourceGroupingRecommendationTask([/* ... */]);
$promise = $client->describeResourceGroupingRecommendationTaskAsync([/* ... */]);

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

Parameter Syntax

$result = $client->describeResourceGroupingRecommendationTask([
    'appArn' => '<string>', // REQUIRED
    'groupingId' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

groupingId
Type: string

Indicates the identifier of the grouping recommendation task.

Result Syntax

[
    'errorMessage' => '<string>',
    'groupingId' => '<string>',
    'status' => 'Pending|InProgress|Failed|Success',
]

Result Details

Members
errorMessage
Type: string

Indicates the error that occurred while generating a grouping recommendation.

groupingId
Required: Yes
Type: string

Indicates the identifier of the grouping recommendation task.

status
Required: Yes
Type: string

Status of the action.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ImportResourcesToDraftAppVersion

$result = $client->importResourcesToDraftAppVersion([/* ... */]);
$promise = $client->importResourcesToDraftAppVersionAsync([/* ... */]);

Imports resources to Resilience Hub application draft version from different input sources. For more information about the input sources supported by Resilience Hub, see Discover the structure and describe your Resilience Hub application.

Parameter Syntax

$result = $client->importResourcesToDraftAppVersion([
    'appArn' => '<string>', // REQUIRED
    'eksSources' => [
        [
            'eksClusterArn' => '<string>', // REQUIRED
            'namespaces' => ['<string>', ...], // REQUIRED
        ],
        // ...
    ],
    'importStrategy' => 'AddOnly|ReplaceAll',
    'sourceArns' => ['<string>', ...],
    'terraformSources' => [
        [
            's3StateFileUrl' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

eksSources
Type: Array of EksSource structures

The input sources of the Amazon Elastic Kubernetes Service resources you need to import.

importStrategy
Type: string

The import strategy you would like to set to import resources into Resilience Hub application.

sourceArns
Type: Array of strings

The Amazon Resource Names (ARNs) for the resources.

terraformSources
Type: Array of TerraformSource structures

A list of terraform file s3 URLs you need to import.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'eksSources' => [
        [
            'eksClusterArn' => '<string>',
            'namespaces' => ['<string>', ...],
        ],
        // ...
    ],
    'sourceArns' => ['<string>', ...],
    'status' => 'Pending|InProgress|Failed|Success',
    'terraformSources' => [
        [
            's3StateFileUrl' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

eksSources
Type: Array of EksSource structures

The input sources of the Amazon Elastic Kubernetes Service resources you have imported.

sourceArns
Type: Array of strings

The Amazon Resource Names (ARNs) for the resources you have imported.

status
Required: Yes
Type: string

Status of the action.

terraformSources
Type: Array of TerraformSource structures

A list of terraform file s3 URLs you have imported.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ServiceQuotaExceededException:

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAlarmRecommendations

$result = $client->listAlarmRecommendations([/* ... */]);
$promise = $client->listAlarmRecommendationsAsync([/* ... */]);

Lists the alarm recommendations for an Resilience Hub application.

Parameter Syntax

$result = $client->listAlarmRecommendations([
    'assessmentArn' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

maxResults
Type: int

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.

nextToken
Type: string

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

Result 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>',
            'recommendationStatus' => 'Implemented|Inactive|NotImplemented|Excluded',
            'referenceId' => '<string>',
            'type' => 'Metric|Composite|Canary|Logs|Event',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
alarmRecommendations
Required: Yes
Type: Array of AlarmRecommendation structures

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.

nextToken
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppAssessmentComplianceDrifts

$result = $client->listAppAssessmentComplianceDrifts([/* ... */]);
$promise = $client->listAppAssessmentComplianceDriftsAsync([/* ... */]);

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

Parameter Syntax

$result = $client->listAppAssessmentComplianceDrifts([
    'assessmentArn' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

maxResults
Type: int

Indicates the maximum number of compliance drifts requested.

nextToken
Type: string

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

Result Syntax

[
    'complianceDrifts' => [
        [
            'actualReferenceId' => '<string>',
            'actualValue' => [
                '<DisruptionType>' => [
                    'achievableRpoInSecs' => <integer>,
                    'achievableRtoInSecs' => <integer>,
                    'complianceStatus' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
                    'currentRpoInSecs' => <integer>,
                    'currentRtoInSecs' => <integer>,
                    'message' => '<string>',
                    'rpoDescription' => '<string>',
                    'rpoReferenceId' => '<string>',
                    'rtoDescription' => '<string>',
                    'rtoReferenceId' => '<string>',
                ],
                // ...
            ],
            'appId' => '<string>',
            'appVersion' => '<string>',
            'diffType' => 'NotEqual|Added|Removed',
            'driftType' => 'ApplicationCompliance|AppComponentResiliencyComplianceStatus',
            'entityId' => '<string>',
            'entityType' => '<string>',
            'expectedReferenceId' => '<string>',
            'expectedValue' => [
                '<DisruptionType>' => [
                    'achievableRpoInSecs' => <integer>,
                    'achievableRtoInSecs' => <integer>,
                    'complianceStatus' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
                    'currentRpoInSecs' => <integer>,
                    'currentRtoInSecs' => <integer>,
                    'message' => '<string>',
                    'rpoDescription' => '<string>',
                    'rpoReferenceId' => '<string>',
                    'rtoDescription' => '<string>',
                    'rtoReferenceId' => '<string>',
                ],
                // ...
            ],
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
complianceDrifts
Required: Yes
Type: Array of ComplianceDrift structures

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

nextToken
Type: string

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

Errors

InternalServerException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppAssessmentResourceDrifts

$result = $client->listAppAssessmentResourceDrifts([/* ... */]);
$promise = $client->listAppAssessmentResourceDriftsAsync([/* ... */]);

Indicates the list of resource drifts that were detected while running an assessment.

Parameter Syntax

$result = $client->listAppAssessmentResourceDrifts([
    'assessmentArn' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

maxResults
Type: int

Indicates the maximum number of drift 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.

nextToken
Type: string

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

Result Syntax

[
    'nextToken' => '<string>',
    'resourceDrifts' => [
        [
            'appArn' => '<string>',
            'appVersion' => '<string>',
            'diffType' => 'NotEqual|Added|Removed',
            'referenceId' => '<string>',
            'resourceIdentifier' => [
                'logicalResourceId' => [
                    'eksSourceName' => '<string>',
                    'identifier' => '<string>',
                    'logicalStackName' => '<string>',
                    'resourceGroupName' => '<string>',
                    'terraformSourceName' => '<string>',
                ],
                'resourceType' => '<string>',
            ],
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

resourceDrifts
Required: Yes
Type: Array of ResourceDrift structures

Indicates all the resource drifts detected for an assessed entity.

Errors

InternalServerException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppAssessments

$result = $client->listAppAssessments([/* ... */]);
$promise = $client->listAppAssessmentsAsync([/* ... */]);

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

Parameter Syntax

$result = $client->listAppAssessments([
    'appArn' => '<string>',
    'assessmentName' => '<string>',
    'assessmentStatus' => ['<string>', ...],
    'complianceStatus' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
    'invoker' => 'User|System',
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'reverseOrder' => true || false,
]);

Parameter Details

Members
appArn
Type: string

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

assessmentName
Type: string

The name for the assessment.

assessmentStatus
Type: Array of strings

The current status of the assessment for the resiliency policy.

complianceStatus
Type: string

The current status of compliance for the resiliency policy.

invoker
Type: string

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

maxResults
Type: int

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.

nextToken
Type: string

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

reverseOrder
Type: boolean

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

Result Syntax

[
    'assessmentSummaries' => [
        [
            'appArn' => '<string>',
            'appVersion' => '<string>',
            'assessmentArn' => '<string>',
            'assessmentName' => '<string>',
            'assessmentStatus' => 'Pending|InProgress|Failed|Success',
            'complianceStatus' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
            'cost' => [
                'amount' => <float>,
                'currency' => '<string>',
                'frequency' => 'Hourly|Daily|Monthly|Yearly',
            ],
            'driftStatus' => 'NotChecked|NotDetected|Detected',
            'endTime' => <DateTime>,
            'invoker' => 'User|System',
            'message' => '<string>',
            'resiliencyScore' => <float>,
            'startTime' => <DateTime>,
            'versionName' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
assessmentSummaries
Required: Yes
Type: Array of AppAssessmentSummary structures

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.

nextToken
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppComponentCompliances

$result = $client->listAppComponentCompliances([/* ... */]);
$promise = $client->listAppComponentCompliancesAsync([/* ... */]);

Lists the compliances for an Resilience Hub Application Component.

Parameter Syntax

$result = $client->listAppComponentCompliances([
    'assessmentArn' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

maxResults
Type: int

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.

nextToken
Type: string

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

Result Syntax

[
    'componentCompliances' => [
        [
            'appComponentName' => '<string>',
            'compliance' => [
                '<DisruptionType>' => [
                    'achievableRpoInSecs' => <integer>,
                    'achievableRtoInSecs' => <integer>,
                    'complianceStatus' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
                    'currentRpoInSecs' => <integer>,
                    'currentRtoInSecs' => <integer>,
                    'message' => '<string>',
                    'rpoDescription' => '<string>',
                    'rpoReferenceId' => '<string>',
                    'rtoDescription' => '<string>',
                    'rtoReferenceId' => '<string>',
                ],
                // ...
            ],
            'cost' => [
                'amount' => <float>,
                'currency' => '<string>',
                'frequency' => 'Hourly|Daily|Monthly|Yearly',
            ],
            'message' => '<string>',
            'resiliencyScore' => [
                'componentScore' => [
                    '<ResiliencyScoreType>' => [
                        'excludedCount' => <integer>,
                        'outstandingCount' => <integer>,
                        'possibleScore' => <float>,
                        'score' => <float>,
                    ],
                    // ...
                ],
                'disruptionScore' => [<float>, ...],
                'score' => <float>,
            ],
            'status' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
componentCompliances
Required: Yes
Type: Array of AppComponentCompliance structures

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

nextToken
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppComponentRecommendations

$result = $client->listAppComponentRecommendations([/* ... */]);
$promise = $client->listAppComponentRecommendationsAsync([/* ... */]);

Lists the recommendations for an Resilience Hub Application Component.

Parameter Syntax

$result = $client->listAppComponentRecommendations([
    'assessmentArn' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

maxResults
Type: int

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.

nextToken
Type: string

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

Result Syntax

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

Result Details

Members
componentRecommendations
Required: Yes
Type: Array of ComponentRecommendation structures

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

nextToken
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppInputSources

$result = $client->listAppInputSources([/* ... */]);
$promise = $client->listAppInputSourcesAsync([/* ... */]);

Lists all the input sources of the Resilience Hub application. For more information about the input sources supported by Resilience Hub, see Discover the structure and describe your Resilience Hub application.

Parameter Syntax

$result = $client->listAppInputSources([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

maxResults
Type: int

Maximum number of input sources to be displayed per Resilience Hub application.

nextToken
Type: string

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

Result Syntax

[
    'appInputSources' => [
        [
            'eksSourceClusterNamespace' => [
                'eksClusterArn' => '<string>',
                'namespace' => '<string>',
            ],
            'importType' => 'CfnStack|Resource|AppRegistryApp|ResourceGroup|Terraform|EKS',
            'resourceCount' => <integer>,
            'sourceArn' => '<string>',
            'sourceName' => '<string>',
            'terraformSource' => [
                's3StateFileUrl' => '<string>',
            ],
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
appInputSources
Required: Yes
Type: Array of AppInputSource structures

The list of Resilience Hub application input sources.

nextToken
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppVersionAppComponents

$result = $client->listAppVersionAppComponents([/* ... */]);
$promise = $client->listAppVersionAppComponentsAsync([/* ... */]);

Lists all the Application Components in the Resilience Hub application.

Parameter Syntax

$result = $client->listAppVersionAppComponents([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Version of the Application Component.

maxResults
Type: int

Maximum number of Application Components to be displayed per Resilience Hub application version.

nextToken
Type: string

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

Result Syntax

[
    'appArn' => '<string>',
    'appComponents' => [
        [
            'additionalInfo' => [
                '<String128WithoutWhitespace>' => ['<string>', ...],
                // ...
            ],
            'id' => '<string>',
            'name' => '<string>',
            'type' => '<string>',
        ],
        // ...
    ],
    'appVersion' => '<string>',
    'nextToken' => '<string>',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appComponents
Type: Array of AppComponent structures

Defines an Application Component.

appVersion
Required: Yes
Type: string

Resilience Hub application version.

nextToken
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppVersionResourceMappings

$result = $client->listAppVersionResourceMappings([/* ... */]);
$promise = $client->listAppVersionResourceMappingsAsync([/* ... */]);

Lists how the resources in an application version are mapped/sourced from. Mappings can be physical resource identifiers, CloudFormation stacks, resource-groups, or an application registry app.

Parameter Syntax

$result = $client->listAppVersionResourceMappings([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

maxResults
Type: int

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.

nextToken
Type: string

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

Result Syntax

[
    'nextToken' => '<string>',
    'resourceMappings' => [
        [
            'appRegistryAppName' => '<string>',
            'eksSourceName' => '<string>',
            'logicalStackName' => '<string>',
            'mappingType' => 'CfnStack|Resource|AppRegistryApp|ResourceGroup|Terraform|EKS',
            'physicalResourceId' => [
                'awsAccountId' => '<string>',
                'awsRegion' => '<string>',
                'identifier' => '<string>',
                'type' => 'Arn|Native',
            ],
            'resourceGroupName' => '<string>',
            'resourceName' => '<string>',
            'terraformSourceName' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

resourceMappings
Required: Yes
Type: Array of ResourceMapping structures

Mappings used to map logical resources from the template to physical resources. You can use the mapping type CFN_STACK if the application template uses a logical stack name. Or you can map individual resources by using the mapping type RESOURCE. We recommend using the mapping type CFN_STACK if the application is backed by a CloudFormation stack.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppVersionResources

$result = $client->listAppVersionResources([/* ... */]);
$promise = $client->listAppVersionResourcesAsync([/* ... */]);

Lists all the resources in an Resilience Hub application.

Parameter Syntax

$result = $client->listAppVersionResources([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'resolutionId' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

maxResults
Type: int

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.

nextToken
Type: string

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

resolutionId
Type: string

The identifier for a specific resolution.

Result Syntax

[
    'nextToken' => '<string>',
    'physicalResources' => [
        [
            'additionalInfo' => [
                '<String128WithoutWhitespace>' => ['<string>', ...],
                // ...
            ],
            'appComponents' => [
                [
                    'additionalInfo' => [
                        '<String128WithoutWhitespace>' => ['<string>', ...],
                        // ...
                    ],
                    'id' => '<string>',
                    'name' => '<string>',
                    'type' => '<string>',
                ],
                // ...
            ],
            'excluded' => true || false,
            'logicalResourceId' => [
                'eksSourceName' => '<string>',
                'identifier' => '<string>',
                'logicalStackName' => '<string>',
                'resourceGroupName' => '<string>',
                'terraformSourceName' => '<string>',
            ],
            'parentResourceName' => '<string>',
            'physicalResourceId' => [
                'awsAccountId' => '<string>',
                'awsRegion' => '<string>',
                'identifier' => '<string>',
                'type' => 'Arn|Native',
            ],
            'resourceName' => '<string>',
            'resourceType' => '<string>',
            'sourceType' => 'AppTemplate|Discovered',
        ],
        // ...
    ],
    'resolutionId' => '<string>',
]

Result Details

Members
nextToken
Type: string

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

physicalResources
Required: Yes
Type: Array of PhysicalResource structures

The physical resources in the application version.

resolutionId
Required: Yes
Type: string

The ID for a specific resolution.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListAppVersions

$result = $client->listAppVersions([/* ... */]);
$promise = $client->listAppVersionsAsync([/* ... */]);

Lists the different versions for the Resilience Hub applications.

Parameter Syntax

$result = $client->listAppVersions([
    'appArn' => '<string>', // REQUIRED
    'endTime' => <integer || string || DateTime>,
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'startTime' => <integer || string || DateTime>,
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

endTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

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

maxResults
Type: int

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.

nextToken
Type: string

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

startTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

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

Result Syntax

[
    'appVersions' => [
        [
            'appVersion' => '<string>',
            'creationTime' => <DateTime>,
            'identifier' => <integer>,
            'versionName' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
appVersions
Required: Yes
Type: Array of AppVersionSummary structures

The version of the application.

nextToken
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListApps

$result = $client->listApps([/* ... */]);
$promise = $client->listAppsAsync([/* ... */]);

Lists your Resilience Hub applications.

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.

Parameter Syntax

$result = $client->listApps([
    'appArn' => '<string>',
    'fromLastAssessmentTime' => <integer || string || DateTime>,
    'maxResults' => <integer>,
    'name' => '<string>',
    'nextToken' => '<string>',
    'reverseOrder' => true || false,
    'toLastAssessmentTime' => <integer || string || DateTime>,
]);

Parameter Details

Members
appArn
Type: string

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

fromLastAssessmentTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

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

maxResults
Type: int

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.

name
Type: string

The name for the one of the listed applications.

nextToken
Type: string

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

reverseOrder
Type: boolean

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

toLastAssessmentTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

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

Result Syntax

[
    'appSummaries' => [
        [
            'appArn' => '<string>',
            'assessmentSchedule' => 'Disabled|Daily',
            'complianceStatus' => 'PolicyBreached|PolicyMet|NotAssessed|ChangesDetected|NotApplicable|MissingPolicy',
            'creationTime' => <DateTime>,
            'description' => '<string>',
            'driftStatus' => 'NotChecked|NotDetected|Detected',
            'lastAppComplianceEvaluationTime' => <DateTime>,
            'name' => '<string>',
            'resiliencyScore' => <float>,
            'rpoInSecs' => <integer>,
            'rtoInSecs' => <integer>,
            'status' => 'Active|Deleting',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
appSummaries
Required: Yes
Type: Array of AppSummary structures

Summaries for the Resilience Hub application.

nextToken
Type: string

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

Errors

InternalServerException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListRecommendationTemplates

$result = $client->listRecommendationTemplates([/* ... */]);
$promise = $client->listRecommendationTemplatesAsync([/* ... */]);

Lists the recommendation templates for the Resilience Hub applications.

Parameter Syntax

$result = $client->listRecommendationTemplates([
    'assessmentArn' => '<string>',
    'maxResults' => <integer>,
    'name' => '<string>',
    'nextToken' => '<string>',
    'recommendationTemplateArn' => '<string>',
    'reverseOrder' => true || false,
    'status' => ['<string>', ...],
]);

Parameter Details

Members
assessmentArn
Type: string

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

maxResults
Type: int

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.

name
Type: string

The name for one of the listed recommendation templates.

nextToken
Type: string

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

recommendationTemplateArn
Type: string

The Amazon Resource Name (ARN) for a recommendation template.

reverseOrder
Type: boolean

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

status
Type: Array of strings

Status of the action.

Result Syntax

[
    'nextToken' => '<string>',
    'recommendationTemplates' => [
        [
            'appArn' => '<string>',
            'assessmentArn' => '<string>',
            'endTime' => <DateTime>,
            'format' => 'CfnYaml|CfnJson',
            'message' => '<string>',
            'name' => '<string>',
            'needsReplacements' => true || false,
            'recommendationIds' => ['<string>', ...],
            'recommendationTemplateArn' => '<string>',
            'recommendationTypes' => ['<string>', ...],
            'startTime' => <DateTime>,
            'status' => 'Pending|InProgress|Failed|Success',
            'tags' => ['<string>', ...],
            'templatesLocation' => [
                'bucket' => '<string>',
                'prefix' => '<string>',
            ],
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

recommendationTemplates
Type: Array of RecommendationTemplate structures

The recommendation templates for the Resilience Hub applications.

Errors

InternalServerException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListResiliencyPolicies

$result = $client->listResiliencyPolicies([/* ... */]);
$promise = $client->listResiliencyPoliciesAsync([/* ... */]);

Lists the resiliency policies for the Resilience Hub applications.

Parameter Syntax

$result = $client->listResiliencyPolicies([
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'policyName' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

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.

nextToken
Type: string

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

policyName
Type: string

The name of the policy

Result Syntax

[
    'nextToken' => '<string>',
    'resiliencyPolicies' => [
        [
            'creationTime' => <DateTime>,
            'dataLocationConstraint' => 'AnyLocation|SameContinent|SameCountry',
            'estimatedCostTier' => 'L1|L2|L3|L4',
            'policy' => [
                '<DisruptionType>' => [
                    'rpoInSecs' => <integer>,
                    'rtoInSecs' => <integer>,
                ],
                // ...
            ],
            'policyArn' => '<string>',
            'policyDescription' => '<string>',
            'policyName' => '<string>',
            'tags' => ['<string>', ...],
            'tier' => 'MissionCritical|Critical|Important|CoreServices|NonCritical|NotApplicable',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

resiliencyPolicies
Required: Yes
Type: Array of ResiliencyPolicy structures

The resiliency policies for the Resilience Hub applications.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListResourceGroupingRecommendations

$result = $client->listResourceGroupingRecommendations([/* ... */]);
$promise = $client->listResourceGroupingRecommendationsAsync([/* ... */]);

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

Parameter Syntax

$result = $client->listResourceGroupingRecommendations([
    'appArn' => '<string>',
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
appArn
Type: string

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

maxResults
Type: int

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

nextToken
Type: string

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

Result Syntax

[
    'groupingRecommendations' => [
        [
            'confidenceLevel' => 'High|Medium',
            'creationTime' => <DateTime>,
            'groupingAppComponent' => [
                'appComponentId' => '<string>',
                'appComponentName' => '<string>',
                'appComponentType' => '<string>',
            ],
            'groupingRecommendationId' => '<string>',
            'recommendationReasons' => ['<string>', ...],
            'rejectionReason' => 'DistinctBusinessPurpose|SeparateDataConcern|DistinctUserGroupHandling|Other',
            'resources' => [
                [
                    'logicalResourceId' => [
                        'eksSourceName' => '<string>',
                        'identifier' => '<string>',
                        'logicalStackName' => '<string>',
                        'resourceGroupName' => '<string>',
                        'terraformSourceName' => '<string>',
                    ],
                    'physicalResourceId' => [
                        'awsAccountId' => '<string>',
                        'awsRegion' => '<string>',
                        'identifier' => '<string>',
                        'type' => 'Arn|Native',
                    ],
                    'resourceName' => '<string>',
                    'resourceType' => '<string>',
                    'sourceAppComponentIds' => ['<string>', ...],
                ],
                // ...
            ],
            'score' => <float>,
            'status' => 'Accepted|Rejected|PendingDecision',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
groupingRecommendations
Required: Yes
Type: Array of GroupingRecommendation structures

List of resource grouping recommendations generated by Resilience Hub.

nextToken
Type: string

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListSopRecommendations

$result = $client->listSopRecommendations([/* ... */]);
$promise = $client->listSopRecommendationsAsync([/* ... */]);

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

Parameter Syntax

$result = $client->listSopRecommendations([
    'assessmentArn' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

maxResults
Type: int

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.

nextToken
Type: string

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

Result 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>',
            'recommendationStatus' => 'Implemented|Inactive|NotImplemented|Excluded',
            'referenceId' => '<string>',
            'serviceType' => 'SSM',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

sopRecommendations
Required: Yes
Type: Array of SopRecommendation structures

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListSuggestedResiliencyPolicies

$result = $client->listSuggestedResiliencyPolicies([/* ... */]);
$promise = $client->listSuggestedResiliencyPoliciesAsync([/* ... */]);

Lists the suggested resiliency policies for the Resilience Hub applications.

Parameter Syntax

$result = $client->listSuggestedResiliencyPolicies([
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

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.

nextToken
Type: string

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

Result Syntax

[
    'nextToken' => '<string>',
    'resiliencyPolicies' => [
        [
            'creationTime' => <DateTime>,
            'dataLocationConstraint' => 'AnyLocation|SameContinent|SameCountry',
            'estimatedCostTier' => 'L1|L2|L3|L4',
            'policy' => [
                '<DisruptionType>' => [
                    'rpoInSecs' => <integer>,
                    'rtoInSecs' => <integer>,
                ],
                // ...
            ],
            'policyArn' => '<string>',
            'policyDescription' => '<string>',
            'policyName' => '<string>',
            'tags' => ['<string>', ...],
            'tier' => 'MissionCritical|Critical|Important|CoreServices|NonCritical|NotApplicable',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

resiliencyPolicies
Required: Yes
Type: Array of ResiliencyPolicy structures

The suggested resiliency policies for the Resilience Hub applications.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListTagsForResource

$result = $client->listTagsForResource([/* ... */]);
$promise = $client->listTagsForResourceAsync([/* ... */]);

Lists the tags for your resources in your Resilience Hub applications.

Parameter Syntax

$result = $client->listTagsForResource([
    'resourceArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
resourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) for a specific resource in your Resilience Hub application.

Result Syntax

[
    'tags' => ['<string>', ...],
]

Result Details

Members
tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListTestRecommendations

$result = $client->listTestRecommendations([/* ... */]);
$promise = $client->listTestRecommendationsAsync([/* ... */]);

Lists the test recommendations for the Resilience Hub application.

Parameter Syntax

$result = $client->listTestRecommendations([
    'assessmentArn' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
assessmentArn
Required: Yes
Type: string

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

maxResults
Type: int

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.

nextToken
Type: string

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

Result 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>',
            'recommendationStatus' => 'Implemented|Inactive|NotImplemented|Excluded',
            'referenceId' => '<string>',
            'risk' => 'Small|Medium|High',
            'type' => 'Software|Hardware|AZ|Region',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

testRecommendations
Required: Yes
Type: Array of TestRecommendation structures

The test recommendations for the Resilience Hub application.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ListUnsupportedAppVersionResources

$result = $client->listUnsupportedAppVersionResources([/* ... */]);
$promise = $client->listUnsupportedAppVersionResourcesAsync([/* ... */]);

Lists the resources that are not currently supported in Resilience Hub. An unsupported resource is a resource that exists in the object that was used to create an app, but is not supported by Resilience Hub.

Parameter Syntax

$result = $client->listUnsupportedAppVersionResources([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'resolutionId' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

maxResults
Type: int

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.

nextToken
Type: string

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

resolutionId
Type: string

The identifier for a specific resolution.

Result Syntax

[
    'nextToken' => '<string>',
    'resolutionId' => '<string>',
    'unsupportedResources' => [
        [
            'logicalResourceId' => [
                'eksSourceName' => '<string>',
                'identifier' => '<string>',
                'logicalStackName' => '<string>',
                'resourceGroupName' => '<string>',
                'terraformSourceName' => '<string>',
            ],
            'physicalResourceId' => [
                'awsAccountId' => '<string>',
                'awsRegion' => '<string>',
                'identifier' => '<string>',
                'type' => 'Arn|Native',
            ],
            'resourceType' => '<string>',
            'unsupportedResourceStatus' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

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

resolutionId
Required: Yes
Type: string

The identifier for a specific resolution.

unsupportedResources
Required: Yes
Type: Array of UnsupportedResource structures

The unsupported resources for the application.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

PublishAppVersion

$result = $client->publishAppVersion([/* ... */]);
$promise = $client->publishAppVersionAsync([/* ... */]);

Publishes a new version of a specific Resilience Hub application.

Parameter Syntax

$result = $client->publishAppVersion([
    'appArn' => '<string>', // REQUIRED
    'versionName' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

versionName
Type: string

Name of the application version.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'identifier' => <integer>,
    'versionName' => '<string>',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Type: string

The version of the application.

identifier
Type: long (int|float)

Identifier of the application version.

versionName
Type: string

Name of the application version.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

PutDraftAppVersionTemplate

$result = $client->putDraftAppVersionTemplate([/* ... */]);
$promise = $client->putDraftAppVersionTemplateAsync([/* ... */]);

Adds or updates the app template for an Resilience Hub application draft version.

Parameter Syntax

$result = $client->putDraftAppVersionTemplate([
    'appArn' => '<string>', // REQUIRED
    'appTemplateBody' => '<string>', // REQUIRED
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appTemplateBody
Required: Yes
Type: string

A JSON string that provides information about your application structure. To learn more about the appTemplateBody template, see the sample template provided in the Examples section.

The appTemplateBody JSON string has the following structure:

  • resources

    The list of logical resources that must be included in the Resilience Hub application.

    Type: Array

    Don't add the resources that you want to exclude.

    Each resources array item includes the following fields:

    • logicalResourceId

      Logical identifier of the resource.

      Type: Object

      Each logicalResourceId object includes the following fields:

      • identifier

        Identifier of the resource.

        Type: String

      • logicalStackName

        The name of the CloudFormation stack this resource belongs to.

        Type: String

      • resourceGroupName

        The name of the resource group this resource belongs to.

        Type: String

      • terraformSourceName

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

        Type: String

      • eksSourceName

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

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

        Type: String

    • type

      The type of resource.

      Type: string

    • name

      The name of the resource.

      Type: String

    • additionalInfo

      Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

      Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

      Key: "failover-regions"

      Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

  • appComponents

    List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.

    Type: Array

    Each appComponents array item includes the following fields:

    • name

      Name of the Application Component.

      Type: String

    • type

      Type of Application Component. For more information about the types of Application Component, see Grouping resources in an AppComponent.

      Type: String

    • resourceNames

      The list of included resources that are assigned to the Application Component.

      Type: Array of strings

    • additionalInfo

      Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

      Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

      Key: "failover-regions"

      Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

  • excludedResources

    The list of logical resource identifiers to be excluded from the application.

    Type: Array

    Don't add the resources that you want to include.

    Each excludedResources array item includes the following fields:

    • logicalResourceIds

      Logical identifier of the resource.

      Type: Object

      You can configure only one of the following fields:

      • logicalStackName

      • resourceGroupName

      • terraformSourceName

      • eksSourceName

      Each logicalResourceIds object includes the following fields:

      • identifier

        Identifier of the resource.

        Type: String

      • logicalStackName

        The name of the CloudFormation stack this resource belongs to.

        Type: String

      • resourceGroupName

        The name of the resource group this resource belongs to.

        Type: String

      • terraformSourceName

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

        Type: String

      • eksSourceName

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

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

        Type: String

  • version

    Resilience Hub application version.

  • additionalInfo

    Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

    Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

    Key: "failover-regions"

    Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
]

Result Details

Members
appArn
Type: string

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

appVersion
Type: string

The version of the application.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

RejectResourceGroupingRecommendations

$result = $client->rejectResourceGroupingRecommendations([/* ... */]);
$promise = $client->rejectResourceGroupingRecommendationsAsync([/* ... */]);

Rejects resource grouping recommendations.

Parameter Syntax

$result = $client->rejectResourceGroupingRecommendations([
    'appArn' => '<string>', // REQUIRED
    'entries' => [ // REQUIRED
        [
            'groupingRecommendationId' => '<string>', // REQUIRED
            'rejectionReason' => 'DistinctBusinessPurpose|SeparateDataConcern|DistinctUserGroupHandling|Other',
        ],
        // ...
    ],
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

entries
Required: Yes
Type: Array of RejectGroupingRecommendationEntry structures

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

Result Syntax

[
    'appArn' => '<string>',
    'failedEntries' => [
        [
            'errorMessage' => '<string>',
            'groupingRecommendationId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
appArn
Required: Yes
Type: string

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

failedEntries
Required: Yes
Type: Array of FailedGroupingRecommendationEntry structures

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

RemoveDraftAppVersionResourceMappings

$result = $client->removeDraftAppVersionResourceMappings([/* ... */]);
$promise = $client->removeDraftAppVersionResourceMappingsAsync([/* ... */]);

Removes resource mappings from a draft application version.

Parameter Syntax

$result = $client->removeDraftAppVersionResourceMappings([
    'appArn' => '<string>', // REQUIRED
    'appRegistryAppNames' => ['<string>', ...],
    'eksSourceNames' => ['<string>', ...],
    'logicalStackNames' => ['<string>', ...],
    'resourceGroupNames' => ['<string>', ...],
    'resourceNames' => ['<string>', ...],
    'terraformSourceNames' => ['<string>', ...],
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appRegistryAppNames
Type: Array of strings

The names of the registered applications you want to remove from the resource mappings.

eksSourceNames
Type: Array of strings

The names of the Amazon Elastic Kubernetes Service clusters and namespaces you want to remove from the resource mappings.

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

logicalStackNames
Type: Array of strings

The names of the CloudFormation stacks you want to remove from the resource mappings.

resourceGroupNames
Type: Array of strings

The names of the resource groups you want to remove from the resource mappings.

resourceNames
Type: Array of strings

The names of the resources you want to remove from the resource mappings.

terraformSourceNames
Type: Array of strings

The names of the Terraform sources you want to remove from the resource mappings.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
]

Result Details

Members
appArn
Type: string

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

appVersion
Type: string

The version of the application.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

ResolveAppVersionResources

$result = $client->resolveAppVersionResources([/* ... */]);
$promise = $client->resolveAppVersionResourcesAsync([/* ... */]);

Resolves the resources for an application version.

Parameter Syntax

$result = $client->resolveAppVersionResources([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'resolutionId' => '<string>',
    'status' => 'Pending|InProgress|Failed|Success',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

resolutionId
Required: Yes
Type: string

The identifier for a specific resolution.

status
Required: Yes
Type: string

Status of the action.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

StartAppAssessment

$result = $client->startAppAssessment([/* ... */]);
$promise = $client->startAppAssessmentAsync([/* ... */]);

Creates a new application assessment for an application.

Parameter Syntax

$result = $client->startAppAssessment([
    'appArn' => '<string>', // REQUIRED
    'appVersion' => '<string>', // REQUIRED
    'assessmentName' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

The version of the application.

assessmentName
Required: Yes
Type: string

The name for the assessment.

clientToken
Type: string

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.

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

Result Syntax

[
    'assessment' => [
        'appArn' => '<string>',
        'appVersion' => '<string>',
        'assessmentArn' => '<string>',
        'assessmentName' => '<string>',
        'assessmentStatus' => 'Pending|InProgress|Failed|Success',
        'compliance' => [
            '<DisruptionType>' => [
                'achievableRpoInSecs' => <integer>,
                'achievableRtoInSecs' => <integer>,
                'complianceStatus' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
                'currentRpoInSecs' => <integer>,
                'currentRtoInSecs' => <integer>,
                'message' => '<string>',
                'rpoDescription' => '<string>',
                'rpoReferenceId' => '<string>',
                'rtoDescription' => '<string>',
                'rtoReferenceId' => '<string>',
            ],
            // ...
        ],
        'complianceStatus' => 'PolicyBreached|PolicyMet|NotApplicable|MissingPolicy',
        'cost' => [
            'amount' => <float>,
            'currency' => '<string>',
            'frequency' => 'Hourly|Daily|Monthly|Yearly',
        ],
        'driftStatus' => 'NotChecked|NotDetected|Detected',
        'endTime' => <DateTime>,
        'invoker' => 'User|System',
        'message' => '<string>',
        'policy' => [
            'creationTime' => <DateTime>,
            'dataLocationConstraint' => 'AnyLocation|SameContinent|SameCountry',
            'estimatedCostTier' => 'L1|L2|L3|L4',
            'policy' => [
                '<DisruptionType>' => [
                    'rpoInSecs' => <integer>,
                    'rtoInSecs' => <integer>,
                ],
                // ...
            ],
            'policyArn' => '<string>',
            'policyDescription' => '<string>',
            'policyName' => '<string>',
            'tags' => ['<string>', ...],
            'tier' => 'MissionCritical|Critical|Important|CoreServices|NonCritical|NotApplicable',
        ],
        'resiliencyScore' => [
            'componentScore' => [
                '<ResiliencyScoreType>' => [
                    'excludedCount' => <integer>,
                    'outstandingCount' => <integer>,
                    'possibleScore' => <float>,
                    'score' => <float>,
                ],
                // ...
            ],
            'disruptionScore' => [<float>, ...],
            'score' => <float>,
        ],
        'resourceErrorsDetails' => [
            'hasMoreErrors' => true || false,
            'resourceErrors' => [
                [
                    'logicalResourceId' => '<string>',
                    'physicalResourceId' => '<string>',
                    'reason' => '<string>',
                ],
                // ...
            ],
        ],
        'startTime' => <DateTime>,
        'summary' => [
            'riskRecommendations' => [
                [
                    'appComponents' => ['<string>', ...],
                    'recommendation' => '<string>',
                    'risk' => '<string>',
                ],
                // ...
            ],
            'summary' => '<string>',
        ],
        'tags' => ['<string>', ...],
        'versionName' => '<string>',
    ],
]

Result Details

Members
assessment
Required: Yes
Type: AppAssessment structure

The assessment created.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ServiceQuotaExceededException:

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

StartResourceGroupingRecommendationTask

$result = $client->startResourceGroupingRecommendationTask([/* ... */]);
$promise = $client->startResourceGroupingRecommendationTaskAsync([/* ... */]);

Starts grouping recommendation task.

Parameter Syntax

$result = $client->startResourceGroupingRecommendationTask([
    'appArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

Result Syntax

[
    'appArn' => '<string>',
    'errorMessage' => '<string>',
    'groupingId' => '<string>',
    'status' => 'Pending|InProgress|Failed|Success',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

errorMessage
Type: string

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

groupingId
Required: Yes
Type: string

Indicates the identifier of the grouping recommendation task.

status
Required: Yes
Type: string

Status of the action.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

TagResource

$result = $client->tagResource([/* ... */]);
$promise = $client->tagResourceAsync([/* ... */]);

Applies one or more tags to a resource.

Parameter Syntax

$result = $client->tagResource([
    'resourceArn' => '<string>', // REQUIRED
    'tags' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
resourceArn
Required: Yes
Type: string

Amazon Resource Name (ARN) of the resource.

tags
Required: Yes
Type: Associative array of custom strings keys (TagKey) to strings

The tags to assign to the resource. Each tag consists of a key/value pair.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

UntagResource

$result = $client->untagResource([/* ... */]);
$promise = $client->untagResourceAsync([/* ... */]);

Removes one or more tags from a resource.

Parameter Syntax

$result = $client->untagResource([
    'resourceArn' => '<string>', // REQUIRED
    'tagKeys' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
resourceArn
Required: Yes
Type: string

Amazon Resource Name (ARN) of the resource.

tagKeys
Required: Yes
Type: Array of strings

The keys of the tags you want to remove.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

UpdateApp

$result = $client->updateApp([/* ... */]);
$promise = $client->updateAppAsync([/* ... */]);

Updates an application.

Parameter Syntax

$result = $client->updateApp([
    'appArn' => '<string>', // REQUIRED
    'assessmentSchedule' => 'Disabled|Daily',
    'clearResiliencyPolicyArn' => true || false,
    'description' => '<string>',
    'eventSubscriptions' => [
        [
            'eventType' => 'ScheduledAssessmentFailure|DriftDetected', // REQUIRED
            'name' => '<string>', // REQUIRED
            'snsTopicArn' => '<string>',
        ],
        // ...
    ],
    'permissionModel' => [
        'crossAccountRoleArns' => ['<string>', ...],
        'invokerRoleName' => '<string>',
        'type' => 'LegacyIAMUser|RoleBased', // REQUIRED
    ],
    'policyArn' => '<string>',
]);

Parameter Details

Members
appArn
Required: Yes
Type: string

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

assessmentSchedule
Type: string

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

clearResiliencyPolicyArn
Type: boolean

Specifies if the resiliency policy ARN should be cleared.

description
Type: string

The optional description for an app.

eventSubscriptions
Type: Array of EventSubscription structures

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.

permissionModel
Type: PermissionModel structure

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

policyArn
Type: string

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

Result Syntax

[
    'app' => [
        'appArn' => '<string>',
        'assessmentSchedule' => 'Disabled|Daily',
        'complianceStatus' => 'PolicyBreached|PolicyMet|NotAssessed|ChangesDetected|NotApplicable|MissingPolicy',
        'creationTime' => <DateTime>,
        'description' => '<string>',
        'driftStatus' => 'NotChecked|NotDetected|Detected',
        'eventSubscriptions' => [
            [
                'eventType' => 'ScheduledAssessmentFailure|DriftDetected',
                'name' => '<string>',
                'snsTopicArn' => '<string>',
            ],
            // ...
        ],
        'lastAppComplianceEvaluationTime' => <DateTime>,
        'lastDriftEvaluationTime' => <DateTime>,
        'lastResiliencyScoreEvaluationTime' => <DateTime>,
        'name' => '<string>',
        'permissionModel' => [
            'crossAccountRoleArns' => ['<string>', ...],
            'invokerRoleName' => '<string>',
            'type' => 'LegacyIAMUser|RoleBased',
        ],
        'policyArn' => '<string>',
        'resiliencyScore' => <float>,
        'rpoInSecs' => <integer>,
        'rtoInSecs' => <integer>,
        'status' => 'Active|Deleting',
        'tags' => ['<string>', ...],
    ],
]

Result Details

Members
app
Required: Yes
Type: App structure

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

UpdateAppVersion

$result = $client->updateAppVersion([/* ... */]);
$promise = $client->updateAppVersionAsync([/* ... */]);

Updates the Resilience Hub application version.

This API updates the Resilience Hub application draft version. To use this information for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

Parameter Syntax

$result = $client->updateAppVersion([
    'additionalInfo' => [
        '<String128WithoutWhitespace>' => ['<string>', ...],
        // ...
    ],
    'appArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
additionalInfo
Type: Associative array of custom strings keys (String128WithoutWhitespace) to stringss

Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

Key: "failover-regions"

Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

appArn
Required: Yes
Type: string

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

Result Syntax

[
    'additionalInfo' => [
        '<String128WithoutWhitespace>' => ['<string>', ...],
        // ...
    ],
    'appArn' => '<string>',
    'appVersion' => '<string>',
]

Result Details

Members
additionalInfo
Type: Associative array of custom strings keys (String128WithoutWhitespace) to stringss

Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

Currently, this parameter supports only failover region and account.

appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

UpdateAppVersionAppComponent

$result = $client->updateAppVersionAppComponent([/* ... */]);
$promise = $client->updateAppVersionAppComponentAsync([/* ... */]);

Updates an existing Application Component in the Resilience Hub application.

This API updates the Resilience Hub application draft version. To use this Application Component for running assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

Parameter Syntax

$result = $client->updateAppVersionAppComponent([
    'additionalInfo' => [
        '<String128WithoutWhitespace>' => ['<string>', ...],
        // ...
    ],
    'appArn' => '<string>', // REQUIRED
    'id' => '<string>', // REQUIRED
    'name' => '<string>',
    'type' => '<string>',
]);

Parameter Details

Members
additionalInfo
Type: Associative array of custom strings keys (String128WithoutWhitespace) to stringss

Currently, there is no supported additional information for Application Components.

appArn
Required: Yes
Type: string

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

id
Required: Yes
Type: string

Identifier of the Application Component.

name
Type: string

Name of the Application Component.

type
Type: string

Type of Application Component. For more information about the types of Application Component, see Grouping resources in an AppComponent.

Result Syntax

[
    'appArn' => '<string>',
    'appComponent' => [
        'additionalInfo' => [
            '<String128WithoutWhitespace>' => ['<string>', ...],
            // ...
        ],
        'id' => '<string>',
        'name' => '<string>',
        'type' => '<string>',
    ],
    'appVersion' => '<string>',
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appComponent
Type: AppComponent structure

List of Application Components that belong to this resource.

appVersion
Required: Yes
Type: string

Resilience Hub application version.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

UpdateAppVersionResource

$result = $client->updateAppVersionResource([/* ... */]);
$promise = $client->updateAppVersionResourceAsync([/* ... */]);

Updates the resource details in the Resilience Hub application.

  • This action has no effect outside Resilience Hub.

  • This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.

  • To update application version with new physicalResourceID, you must call ResolveAppVersionResources API.

Parameter Syntax

$result = $client->updateAppVersionResource([
    'additionalInfo' => [
        '<String128WithoutWhitespace>' => ['<string>', ...],
        // ...
    ],
    'appArn' => '<string>', // REQUIRED
    'appComponents' => ['<string>', ...],
    'awsAccountId' => '<string>',
    'awsRegion' => '<string>',
    'excluded' => true || false,
    'logicalResourceId' => [
        'eksSourceName' => '<string>',
        'identifier' => '<string>', // REQUIRED
        'logicalStackName' => '<string>',
        'resourceGroupName' => '<string>',
        'terraformSourceName' => '<string>',
    ],
    'physicalResourceId' => '<string>',
    'resourceName' => '<string>',
    'resourceType' => '<string>',
]);

Parameter Details

Members
additionalInfo
Type: Associative array of custom strings keys (String128WithoutWhitespace) to stringss

Currently, there is no supported additional information for resources.

appArn
Required: Yes
Type: string

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

appComponents
Type: Array of strings

List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.

awsAccountId
Type: string

Amazon Web Services account that owns the physical resource.

awsRegion
Type: string

Amazon Web Services region that owns the physical resource.

excluded
Type: boolean

Indicates if a resource is excluded from an Resilience Hub application.

You can exclude only imported resources from an Resilience Hub application.

logicalResourceId
Type: LogicalResourceId structure

Logical identifier of the resource.

physicalResourceId
Type: string

Physical identifier of the resource.

resourceName
Type: string

Name of the resource.

resourceType
Type: string

Type of resource.

Result Syntax

[
    'appArn' => '<string>',
    'appVersion' => '<string>',
    'physicalResource' => [
        'additionalInfo' => [
            '<String128WithoutWhitespace>' => ['<string>', ...],
            // ...
        ],
        'appComponents' => [
            [
                'additionalInfo' => [
                    '<String128WithoutWhitespace>' => ['<string>', ...],
                    // ...
                ],
                'id' => '<string>',
                'name' => '<string>',
                'type' => '<string>',
            ],
            // ...
        ],
        'excluded' => true || false,
        'logicalResourceId' => [
            'eksSourceName' => '<string>',
            'identifier' => '<string>',
            'logicalStackName' => '<string>',
            'resourceGroupName' => '<string>',
            'terraformSourceName' => '<string>',
        ],
        'parentResourceName' => '<string>',
        'physicalResourceId' => [
            'awsAccountId' => '<string>',
            'awsRegion' => '<string>',
            'identifier' => '<string>',
            'type' => 'Arn|Native',
        ],
        'resourceName' => '<string>',
        'resourceType' => '<string>',
        'sourceType' => 'AppTemplate|Discovered',
    ],
]

Result Details

Members
appArn
Required: Yes
Type: string

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

appVersion
Required: Yes
Type: string

Resilience Hub application version.

physicalResource
Type: PhysicalResource structure

Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or a Resilience Hub-native identifier.

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ServiceQuotaExceededException:

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

UpdateResiliencyPolicy

$result = $client->updateResiliencyPolicy([/* ... */]);
$promise = $client->updateResiliencyPolicyAsync([/* ... */]);

Updates a resiliency policy.

Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs of your resiliency policy. But, while assessing your application, the lowest possible assessment result is near zero. Hence, if you provide value zero for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload RPO result will be near zero and the Compliance status for your application will be set to Policy breached.

Parameter Syntax

$result = $client->updateResiliencyPolicy([
    'dataLocationConstraint' => 'AnyLocation|SameContinent|SameCountry',
    'policy' => [
        '<DisruptionType>' => [
            'rpoInSecs' => <integer>, // REQUIRED
            'rtoInSecs' => <integer>, // REQUIRED
        ],
        // ...
    ],
    'policyArn' => '<string>', // REQUIRED
    'policyDescription' => '<string>',
    'policyName' => '<string>',
    'tier' => 'MissionCritical|Critical|Important|CoreServices|NonCritical|NotApplicable',
]);

Parameter Details

Members
dataLocationConstraint
Type: string

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

policy
Type: Associative array of custom strings keys (DisruptionType) to FailurePolicy structures

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

policyArn
Required: Yes
Type: string

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

policyDescription
Type: string

The description for the policy.

policyName
Type: string

The name of the policy

tier
Type: string

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

Result Syntax

[
    'policy' => [
        'creationTime' => <DateTime>,
        'dataLocationConstraint' => 'AnyLocation|SameContinent|SameCountry',
        'estimatedCostTier' => 'L1|L2|L3|L4',
        'policy' => [
            '<DisruptionType>' => [
                'rpoInSecs' => <integer>,
                'rtoInSecs' => <integer>,
            ],
            // ...
        ],
        'policyArn' => '<string>',
        'policyDescription' => '<string>',
        'policyName' => '<string>',
        'tags' => ['<string>', ...],
        'tier' => 'MissionCritical|Critical|Important|CoreServices|NonCritical|NotApplicable',
    ],
]

Result Details

Members
policy
Required: Yes
Type: ResiliencyPolicy structure

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

Errors

InternalServerException:

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

ResourceNotFoundException:

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

ConflictException:

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

ThrottlingException:

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

ValidationException:

This exception occurs when a request is not valid.

AccessDeniedException:

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

Shapes

AcceptGroupingRecommendationEntry

Description

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

Members
groupingRecommendationId
Required: Yes
Type: string

Indicates the identifier of the grouping recommendation.

AccessDeniedException

Description

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

Members
message
Type: string

AlarmRecommendation

Description

Defines a recommendation for a CloudWatch alarm.

Members
appComponentName
Type: string

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

appComponentNames
Type: Array of strings

List of Application Component names for the CloudWatch alarm recommendation.

description
Type: string

Description of the alarm recommendation.

items
Type: Array of RecommendationItem structures

List of CloudWatch alarm recommendations.

name
Required: Yes
Type: string

Name of the alarm recommendation.

prerequisite
Type: string

The prerequisite for the alarm recommendation.

recommendationId
Required: Yes
Type: string

Identifier of the alarm recommendation.

recommendationStatus
Type: string

Status of the recommended Amazon CloudWatch alarm.

referenceId
Required: Yes
Type: string

Reference identifier of the alarm recommendation.

type
Required: Yes
Type: string

Type of alarm recommendation.

App

Description

Defines an Resilience Hub application.

Members
appArn
Required: Yes
Type: string

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

assessmentSchedule
Type: string

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

complianceStatus
Type: string

Current status of compliance for the resiliency policy.

creationTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

Date and time when the app was created.

description
Type: string

Optional description for an application.

driftStatus
Type: string

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

eventSubscriptions
Type: Array of EventSubscription structures

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.

lastAppComplianceEvaluationTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

Date and time the most recent compliance evaluation.

lastDriftEvaluationTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

Indicates the last time that a drift was evaluated.

lastResiliencyScoreEvaluationTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

Date and time the most recent resiliency score evaluation.

name
Required: Yes
Type: string

Name for the application.

permissionModel
Type: PermissionModel structure

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

policyArn
Type: string

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

resiliencyScore
Type: double

Current resiliency score for the application.

rpoInSecs
Type: int

Recovery Point Objective (RPO) in seconds.

rtoInSecs
Type: int

Recovery Time Objective (RTO) in seconds.

status
Type: string

Status of the application.

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

AppAssessment

Description

Defines an application assessment.

Members
appArn
Type: string

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

appVersion
Type: string

Version of an application.

assessmentArn
Required: Yes
Type: string

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

assessmentName
Type: string

Name of the assessment.

assessmentStatus
Required: Yes
Type: string

Current status of the assessment for the resiliency policy.

compliance
Type: Associative array of custom strings keys (DisruptionType) to DisruptionCompliance structures

Application compliance against the resiliency policy.

complianceStatus
Type: string

Current status of the compliance for the resiliency policy.

cost
Type: Cost structure

Cost for the application.

driftStatus
Type: string

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

endTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

End time for the action.

invoker
Required: Yes
Type: string

The entity that invoked the assessment.

message
Type: string

Error or warning message from the assessment execution

policy
Type: ResiliencyPolicy structure

Resiliency policy of an application.

resiliencyScore
Type: ResiliencyScore structure

Current resiliency score for an application.

resourceErrorsDetails
Type: ResourceErrorsDetails structure

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

startTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

Starting time for the action.

summary
Type: AssessmentSummary structure

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

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

versionName
Type: string

Version name of the published application.

AppAssessmentSummary

Description

Defines an application assessment summary.

Members
appArn
Type: string

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

appVersion
Type: string

Version of an application.

assessmentArn
Required: Yes
Type: string

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

assessmentName
Type: string

Name of the assessment.

assessmentStatus
Required: Yes
Type: string

Current status of the assessment for the resiliency policy.

complianceStatus
Type: string

Current status of compliance for the resiliency policy.

cost
Type: Cost structure

Cost for an application.

driftStatus
Type: string

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

endTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

End time for the action.

invoker
Type: string

Entity that invoked the assessment.

message
Type: string

Message from the assessment run.

resiliencyScore
Type: double

Current resiliency score for the application.

startTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

Starting time for the action.

versionName
Type: string

Name of an application version.

AppComponent

Description

Defines an Application Component.

Members
additionalInfo
Type: Associative array of custom strings keys (String128WithoutWhitespace) to stringss

Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

Key: "failover-regions"

Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

id
Type: string

Identifier of the Application Component.

name
Required: Yes
Type: string

Name of the Application Component.

type
Required: Yes
Type: string

The type of Application Component.

AppComponentCompliance

Description

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

Members
appComponentName
Type: string

Name of the Application Component.

compliance
Type: Associative array of custom strings keys (DisruptionType) to DisruptionCompliance structures

The compliance of the Application Component against the resiliency policy.

cost
Type: Cost structure

The cost for the application.

message
Type: string

The compliance message.

resiliencyScore
Type: ResiliencyScore structure

The current resiliency score for the application.

status
Type: string

Status of the action.

AppInputSource

Description

The list of Resilience Hub application input sources.

Members
eksSourceClusterNamespace
Type: EksSourceClusterNamespace structure

The namespace on your Amazon Elastic Kubernetes Service cluster.

importType
Required: Yes
Type: string

The resource type of the input source.

resourceCount
Type: int

The number of resources.

sourceArn
Type: string

The Amazon Resource Name (ARN) of the input source. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

sourceName
Type: string

The name of the input source.

terraformSource
Type: TerraformSource structure

The name of the Terraform s3 state file.

AppSummary

Description

Defines an application summary.

Members
appArn
Required: Yes
Type: string

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

assessmentSchedule
Type: string

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

complianceStatus
Type: string

The current status of compliance for the resiliency policy.

creationTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

Date and time when the app was created.

description
Type: string

The optional description for an app.

driftStatus
Type: string

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

lastAppComplianceEvaluationTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

Date and time of the most recent compliance evaluation.

name
Required: Yes
Type: string

The name of the application.

resiliencyScore
Type: double

The current resiliency score for the application.

rpoInSecs
Type: int

Recovery Point Objective (RPO) in seconds.

rtoInSecs
Type: int

Recovery Time Objective (RTO) in seconds.

status
Type: string

Status of the application.

AppVersionSummary

Description

Version of an application.

Members
appVersion
Required: Yes
Type: string

Version of an application.

creationTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

Creation time of the application version.

identifier
Type: long (int|float)

Identifier of the application version.

versionName
Type: string

Name of the application version.

AssessmentRiskRecommendation

Description

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

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

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

Members
appComponents
Type: Array of strings

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

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

recommendation
Type: string

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

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

risk
Type: string

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

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

AssessmentSummary

Description

Indicates the AI-generated summary for the Resilience Hub assessment, providing a concise overview that highlights the top risks and recommendations.

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

Members
riskRecommendations
Type: Array of AssessmentRiskRecommendation structures

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

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

summary
Type: string

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

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

BatchUpdateRecommendationStatusFailedEntry

Description

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

Members
entryId
Required: Yes
Type: string

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

The entryIds of a batch request need to be unique within a request.

errorMessage
Required: Yes
Type: string

Indicates the error that occurred while excluding an operational recommendation.

BatchUpdateRecommendationStatusSuccessfulEntry

Description

List of operational recommendations that were successfully included or excluded.

Members
entryId
Required: Yes
Type: string

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

The entryIds of a batch request need to be unique within a request.

excludeReason
Type: string

Indicates the reason for excluding an operational recommendation.

excluded
Required: Yes
Type: boolean

Indicates if the operational recommendation was successfully excluded.

item
Required: Yes
Type: UpdateRecommendationStatusItem structure

The operational recommendation item.

referenceId
Required: Yes
Type: string

Reference identifier of the operational recommendation.

ComplianceDrift

Description

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

Members
actualReferenceId
Type: string

Assessment identifier that is associated with this drift item.

actualValue
Type: Associative array of custom strings keys (DisruptionType) to DisruptionCompliance structures

Actual compliance value of the entity.

appId
Type: string

Identifier of your application.

appVersion
Type: string

Published version of your application on which drift was detected.

diffType
Type: 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
Type: string

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

entityId
Type: 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
Type: string

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

expectedReferenceId
Type: 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
Type: Associative array of custom strings keys (DisruptionType) to DisruptionCompliance structures

The expected compliance value of an entity.

ComponentRecommendation

Description

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

Members
appComponentName
Required: Yes
Type: string

Name of the Application Component.

configRecommendations
Required: Yes
Type: Array of ConfigRecommendation structures

List of recommendations.

recommendationStatus
Required: Yes
Type: string

Status of the recommendation.

ConfigRecommendation

Description

Defines a recommendation configuration.

Members
appComponentName
Type: string

Name of the Application Component.

compliance
Type: Associative array of custom strings keys (DisruptionType) to DisruptionCompliance structures

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

cost
Type: Cost structure

The cost for the application.

description
Type: string

The optional description for an app.

haArchitecture
Type: string

The architecture type.

name
Required: Yes
Type: string

The name of the recommendation configuration.

optimizationType
Required: Yes
Type: string

The type of optimization.

recommendationCompliance
Type: Associative array of custom strings keys (DisruptionType) to RecommendationDisruptionCompliance structures

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

referenceId
Required: Yes
Type: string

Reference identifier for the recommendation configuration.

suggestedChanges
Type: Array of strings

List of the suggested configuration changes.

ConflictException

Description

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

Members
message
Type: string
resourceId
Type: string

The identifier of the resource that the exception applies to.

resourceType
Type: string

The type of the resource that the exception applies to.

Cost

Description

Defines a cost object.

Members
amount
Required: Yes
Type: double

The cost amount.

currency
Required: Yes
Type: string

The cost currency, for example USD.

frequency
Required: Yes
Type: string

The cost frequency.

DisruptionCompliance

Description

Defines the compliance against the resiliency policy for a disruption.

Members
achievableRpoInSecs
Type: int

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

achievableRtoInSecs
Type: int

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

complianceStatus
Required: Yes
Type: string

The current status of compliance for the resiliency policy.

currentRpoInSecs
Type: int

The current RPO, in seconds.

currentRtoInSecs
Type: int

The current RTO, in seconds.

message
Type: string

The disruption compliance message.

rpoDescription
Type: string

The RPO description.

rpoReferenceId
Type: string

Reference identifier of the RPO .

rtoDescription
Type: string

The RTO description.

rtoReferenceId
Type: string

Reference identifier of the RTO.

EksSource

Description

The input source of the Amazon Elastic Kubernetes Service cluster.

Members
eksClusterArn
Required: Yes
Type: string

Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

namespaces
Required: Yes
Type: Array of strings

The list of namespaces located on your Amazon Elastic Kubernetes Service cluster.

EksSourceClusterNamespace

Description

The input source of the namespace that is located on your Amazon Elastic Kubernetes Service cluster.

Members
eksClusterArn
Required: Yes
Type: string

Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.

namespace
Required: Yes
Type: string

Name of the namespace that is located on your Amazon Elastic Kubernetes Service cluster.

EventSubscription

Description

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.

Members
eventType
Required: Yes
Type: 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
Required: Yes
Type: string

Unique name to identify an event subscription.

snsTopicArn
Type: string

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

FailedGroupingRecommendationEntry

Description

Indicates the accepted grouping recommendation whose implementation failed.

Members
errorMessage
Required: Yes
Type: string

Indicates the error that occurred while implementing a grouping recommendation.

groupingRecommendationId
Required: Yes
Type: string

Indicates the identifier of the grouping recommendation.

FailurePolicy

Description

Defines a failure policy.

Members
rpoInSecs
Required: Yes
Type: int

Recovery Point Objective (RPO) in seconds.

rtoInSecs
Required: Yes
Type: int

Recovery Time Objective (RTO) in seconds.

GroupingAppComponent

Description

Creates a new recommended Application Component (AppComponent).

Members
appComponentId
Required: Yes
Type: string

Indicates the identifier of an AppComponent.

appComponentName
Required: Yes
Type: string

Indicates the name of an AppComponent.

appComponentType
Required: Yes
Type: string

Indicates the type of an AppComponent.

GroupingRecommendation

Description

Creates a new grouping recommendation.

Members
confidenceLevel
Required: Yes
Type: string

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

creationTime
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

Indicates the creation time of the grouping recommendation.

groupingAppComponent
Required: Yes
Type: GroupingAppComponent structure

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

groupingRecommendationId
Required: Yes
Type: string

Indicates all the reasons available for rejecting a grouping recommendation.

recommendationReasons
Required: Yes
Type: Array of strings

Indicates all the reasons available for rejecting a grouping recommendation.

rejectionReason
Type: string

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

resources
Required: Yes
Type: Array of GroupingResource structures

Indicates the resources that are grouped in a recommended AppComponent.

score
Required: Yes
Type: double

Indicates the confidence level of the grouping recommendation.

status
Required: Yes
Type: string

Indicates the status of grouping resources into AppComponents.

GroupingResource

Description

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

Members
logicalResourceId
Required: Yes
Type: LogicalResourceId structure

Indicates the logical identifier of the resource.

physicalResourceId
Required: Yes
Type: PhysicalResourceId structure

Indicates the physical identifier of the resource.

resourceName
Required: Yes
Type: string

Indicates the resource name.

resourceType
Required: Yes
Type: string

Indicates the resource type.

sourceAppComponentIds
Required: Yes
Type: Array of strings

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

InternalServerException

Description

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

Members
message
Type: string

LogicalResourceId

Description

Defines a logical resource identifier.

Members
eksSourceName
Type: string

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

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

identifier
Required: Yes
Type: string

Identifier of the resource.

logicalStackName
Type: string

The name of the CloudFormation stack this resource belongs to.

resourceGroupName
Type: string

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

terraformSourceName
Type: string

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

PermissionModel

Description

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

Members
crossAccountRoleArns
Type: Array of strings

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.

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

invokerRoleName
Type: 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.

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

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

type
Required: Yes
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.

PhysicalResource

Description

Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or an Resilience Hub-native identifier.

Members
additionalInfo
Type: Associative array of custom strings keys (String128WithoutWhitespace) to stringss

Additional configuration parameters for an Resilience Hub application. If you want to implement additionalInfo through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.

Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

Key: "failover-regions"

Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

appComponents
Type: Array of AppComponent structures

The application components that belong to this resource.

excluded
Type: boolean

Indicates if a resource is included or excluded from the assessment.

logicalResourceId
Required: Yes
Type: LogicalResourceId structure

Logical identifier of the resource.

parentResourceName
Type: string

Name of the parent resource.

physicalResourceId
Required: Yes
Type: PhysicalResourceId structure

Identifier of the physical resource.

resourceName
Type: string

The name of the resource.

resourceType
Required: Yes
Type: string

Type of resource.

sourceType
Type: string

Type of input source.

PhysicalResourceId

Description

Defines a physical resource identifier.

Members
awsAccountId
Type: string

The Amazon Web Services account that owns the physical resource.

awsRegion
Type: string

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

identifier
Required: Yes
Type: string

Identifier of the physical resource.

type
Required: Yes
Type: string

Specifies the type of physical resource identifier.

Arn

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

  • AWS::ECS::Service

  • AWS::EFS::FileSystem

  • AWS::ElasticLoadBalancingV2::LoadBalancer

  • AWS::Lambda::Function

  • AWS::SNS::Topic

Native

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

  • AWS::ApiGateway::RestApi

  • AWS::ApiGatewayV2::Api

  • AWS::AutoScaling::AutoScalingGroup

  • AWS::DocDB::DBCluster

  • AWS::DocDB::DBGlobalCluster

  • AWS::DocDB::DBInstance

  • AWS::DynamoDB::GlobalTable

  • AWS::DynamoDB::Table

  • AWS::EC2::EC2Fleet

  • AWS::EC2::Instance

  • AWS::EC2::NatGateway

  • AWS::EC2::Volume

  • AWS::ElasticLoadBalancing::LoadBalancer

  • AWS::RDS::DBCluster

  • AWS::RDS::DBInstance

  • AWS::RDS::GlobalCluster

  • AWS::Route53::RecordSet

  • AWS::S3::Bucket

  • AWS::SQS::Queue

RecommendationDisruptionCompliance

Description

Defines a disruption compliance recommendation.

Members
expectedComplianceStatus
Required: Yes
Type: string

The expected compliance status after applying the recommended configuration change.

expectedRpoDescription
Type: string

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

expectedRpoInSecs
Type: int

The expected RPO after applying the recommended configuration change.

expectedRtoDescription
Type: string

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

expectedRtoInSecs
Type: int

The expected RTO after applying the recommended configuration change.

RecommendationItem

Description

Defines a recommendation.

Members
alreadyImplemented
Type: boolean

Specifies if the recommendation has already been implemented.

excludeReason
Type: string

Indicates the reason for excluding an operational recommendation.

excluded
Type: boolean

Indicates if an operational recommendation item is excluded.

resourceId
Type: string

Identifier of the resource.

targetAccountId
Type: string

Identifier of the target account.

targetRegion
Type: string

The target region.

RecommendationTemplate

Description

Defines a recommendation template created with the CreateRecommendationTemplate action.

Members
appArn
Type: string

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

assessmentArn
Required: Yes
Type: string

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

endTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

The end time for the action.

format
Required: Yes
Type: string

Format of the recommendation template.

CfnJson

The template is CloudFormation JSON.

CfnYaml

The template is CloudFormation YAML.

message
Type: string

Message for the recommendation template.

name
Required: Yes
Type: string

Name for the recommendation template.

needsReplacements
Type: boolean

Indicates if replacements are needed.

recommendationIds
Type: Array of strings

Identifiers for the recommendations used in the recommendation template.

recommendationTemplateArn
Required: Yes
Type: string

Amazon Resource Name (ARN) for the recommendation template.

recommendationTypes
Required: Yes
Type: Array of strings

An array of strings that specify the recommendation template type or types.

Alarm

The template is an AlarmRecommendation template.

Sop

The template is a SopRecommendation template.

Test

The template is a TestRecommendation template.

startTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

The start time for the action.

status
Required: Yes
Type: string

Status of the action.

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

templatesLocation
Type: S3Location structure

The file location of the template.

RejectGroupingRecommendationEntry

Description

Indicates the rejected grouping recommendation.

Members
groupingRecommendationId
Required: Yes
Type: string

Indicates the identifier of the grouping recommendation.

rejectionReason
Type: string

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

ResiliencyPolicy

Description

Defines a resiliency policy.

Resilience Hub allows you to provide a value of zero for rtoInSecs and rpoInSecs of your resiliency policy. But, while assessing your application, the lowest possible assessment result is near zero. Hence, if you provide value zero for rtoInSecs and rpoInSecs, the estimated workload RTO and estimated workload RPO result will be near zero and the Compliance status for your application will be set to Policy breached.

Members
creationTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

Date and time when the resiliency policy was created.

dataLocationConstraint
Type: string

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

estimatedCostTier
Type: string

Specifies the estimated cost tier of the resiliency policy.

policy
Type: Associative array of custom strings keys (DisruptionType) to FailurePolicy structures

The resiliency policy.

policyArn
Type: string

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

policyDescription
Type: string

The description for the policy.

policyName
Type: string

The name of the policy

tags
Type: Associative array of custom strings keys (TagKey) to strings

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.

tier
Type: string

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

ResiliencyScore

Description

The overall resiliency score, returned as an object that includes the disruption score and outage score.

Members
componentScore
Type: Associative array of custom strings keys (ResiliencyScoreType) to ScoringComponentResiliencyScore structures

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

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

disruptionScore
Required: Yes
Type: Associative array of custom strings keys (DisruptionType) to doubles

The disruption score for a valid key.

score
Required: Yes
Type: double

The outage score for a valid key.

ResourceDrift

Description

Indicates the resources that have drifted in the current application version.

Members
appArn
Type: string

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

appVersion
Type: string

Version of the application whose resources have drifted.

diffType
Type: string

Indicates if the resource was added or removed.

referenceId
Type: string

Reference identifier of the resource drift.

resourceIdentifier
Type: ResourceIdentifier structure

Identifier of the drifted resource.

ResourceError

Description

Defines application resource errors.

Members
logicalResourceId
Type: string

Identifier of the logical resource.

physicalResourceId
Type: string

Identifier of the physical resource.

reason
Type: string

This is the error message.

ResourceErrorsDetails

Description

A list of errors retrieving an application's resources.

Members
hasMoreErrors
Type: boolean

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

resourceErrors
Type: Array of ResourceError structures

A list of errors retrieving an application's resources.

ResourceIdentifier

Description

Defines a resource identifier for the drifted resource.

Members
logicalResourceId
Type: LogicalResourceId structure

Logical identifier of the drifted resource.

resourceType
Type: string

Type of the drifted resource.

ResourceMapping

Description

Defines a resource mapping.

Members
appRegistryAppName
Type: string

Name of the application this resource is mapped to when the mappingType is AppRegistryApp.

eksSourceName
Type: string

Name of the Amazon Elastic Kubernetes Service cluster and namespace that this resource is mapped to when the mappingType is EKS.

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

logicalStackName
Type: string

Name of the CloudFormation stack this resource is mapped to when the mappingType is CfnStack.

mappingType
Required: Yes
Type: string

Specifies the type of resource mapping.

physicalResourceId
Required: Yes
Type: PhysicalResourceId structure

Identifier of the physical resource.

resourceGroupName
Type: string

Name of the Resource Groups that this resource is mapped to when the mappingType is ResourceGroup.

resourceName
Type: string

Name of the resource that this resource is mapped to when the mappingType is Resource.

terraformSourceName
Type: string

Name of the Terraform source that this resource is mapped to when the mappingType is Terraform.

ResourceNotFoundException

Description

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

Members
message
Type: string
resourceId
Type: string

The identifier of the resource that the exception applies to.

resourceType
Type: string

The type of the resource that the exception applies to.

S3Location

Description

The location of the Amazon S3 bucket.

Members
bucket
Type: string

The name of the Amazon S3 bucket.

prefix
Type: string

The prefix for the Amazon S3 bucket.

ScoringComponentResiliencyScore

Description

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

Members
excludedCount
Type: long (int|float)

Number of recommendations that were excluded from the assessment.

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

outstandingCount
Type: long (int|float)

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

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

possibleScore
Type: double

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

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

score
Type: double

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

ServiceQuotaExceededException

Description

This exception occurs when you have exceeded your service quota. To perform the requested action, remove some of the relevant resources, or use Service Quotas to request a service quota increase.

Members
message
Type: string

SopRecommendation

Description

Defines a standard operating procedure (SOP) recommendation.

Members
appComponentName
Type: string

Name of the Application Component.

description
Type: string

Description of the SOP recommendation.

items
Type: Array of RecommendationItem structures

The recommendation items.

name
Type: string

Name of the SOP recommendation.

prerequisite
Type: string

Prerequisite for the SOP recommendation.

recommendationId
Required: Yes
Type: string

Identifier for the SOP recommendation.

recommendationStatus
Type: string

Status of the recommended standard operating procedure.

referenceId
Required: Yes
Type: string

Reference identifier for the SOP recommendation.

serviceType
Required: Yes
Type: string

The service type.

TerraformSource

Description

The Terraform s3 state file you need to import.

Members
s3StateFileUrl
Required: Yes
Type: string

The URL of the Terraform s3 state file you need to import.

TestRecommendation

Description

Defines a test recommendation.

Members
appComponentName
Type: string

Name of the Application Component.

dependsOnAlarms
Type: Array of strings

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

description
Type: string

Description for the test recommendation.

intent
Type: string

Intent of the test recommendation.

items
Type: Array of RecommendationItem structures

The test recommendation items.

name
Type: string

Name of the test recommendation.

prerequisite
Type: string

Prerequisite of the test recommendation.

recommendationId
Type: string

Identifier for the test recommendation.

recommendationStatus
Type: string

Status of the recommended test.

referenceId
Required: Yes
Type: string

Reference identifier for the test recommendation.

risk
Type: string

Level of risk for this test recommendation.

type
Type: string

Type of test recommendation.

ThrottlingException

Description

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

Members
message
Type: string
retryAfterSeconds
Type: int

The number of seconds to wait before retrying the operation.

UnsupportedResource

Description

Defines a resource that is not supported by Resilience Hub.

Members
logicalResourceId
Required: Yes
Type: LogicalResourceId structure

Logical resource identifier for the unsupported resource.

physicalResourceId
Required: Yes
Type: PhysicalResourceId structure

Physical resource identifier for the unsupported resource.

resourceType
Required: Yes
Type: string

The type of resource.

unsupportedResourceStatus
Type: string

The status of the unsupported resource.

UpdateRecommendationStatusItem

Description

Defines the operational recommendation item that needs a status update.

Members
resourceId
Type: string

Resource identifier of the operational recommendation item.

targetAccountId
Type: string

Identifier of the target Amazon Web Services account.

targetRegion
Type: string

Identifier of the target Amazon Web Services Region.

UpdateRecommendationStatusRequestEntry

Description

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

Members
entryId
Required: Yes
Type: string

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

The entryIds of a batch request need to be unique within a request.

excludeReason
Type: string

Indicates the reason for excluding an operational recommendation.

excluded
Required: Yes
Type: boolean

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

item
Required: Yes
Type: UpdateRecommendationStatusItem structure

The operational recommendation item.

referenceId
Required: Yes
Type: string

Reference identifier of the operational recommendation item.

ValidationException

Description

This exception occurs when a request is not valid.

Members
message
Type: string