From 8b83e9aa74824e9773a9ba48953f08e39742e0a8 Mon Sep 17 00:00:00 2001 From: awstools Date: Wed, 2 Aug 2023 18:12:30 +0000 Subject: [PATCH] feat(client-resiliencehub): Drift Detection capability added when applications policy has moved from a meet to breach state. Customers will be able to exclude operational recommendations and receive credit in their resilience score. Customers can now add ARH permissions to an existing or new role. --- clients/client-resiliencehub/README.md | 16 + .../client-resiliencehub/src/Resiliencehub.ts | 46 + .../src/ResiliencehubClient.ts | 12 + ...dDraftAppVersionResourceMappingsCommand.ts | 3 +- .../BatchUpdateRecommendationStatusCommand.ts | 203 +++ .../src/commands/CreateAppCommand.ts | 39 +- .../commands/DescribeAppAssessmentCommand.ts | 2 + .../src/commands/DescribeAppCommand.ts | 16 + ...ImportResourcesToDraftAppVersionCommand.ts | 4 + .../ListAlarmRecommendationsCommand.ts | 5 + ...istAppAssessmentComplianceDriftsCommand.ts | 213 +++ .../src/commands/ListAppAssessmentsCommand.ts | 2 + .../src/commands/ListAppVersionsCommand.ts | 5 + .../src/commands/ListAppsCommand.ts | 1 + .../commands/ListSopRecommendationsCommand.ts | 2 + .../ListTestRecommendationsCommand.ts | 2 + .../src/commands/PublishAppVersionCommand.ts | 3 + .../src/commands/StartAppAssessmentCommand.ts | 2 + .../src/commands/UpdateAppCommand.ts | 30 + .../src/commands/index.ts | 2 + .../src/models/models_0.ts | 1604 ++++++++++++----- ...tAppAssessmentComplianceDriftsPaginator.ts | 50 + .../src/pagination/index.ts | 1 + .../src/protocols/Aws_restJson1.ts | 280 ++- .../sdk-codegen/aws-models/resiliencehub.json | 1388 ++++++++++---- 25 files changed, 3202 insertions(+), 729 deletions(-) create mode 100644 clients/client-resiliencehub/src/commands/BatchUpdateRecommendationStatusCommand.ts create mode 100644 clients/client-resiliencehub/src/commands/ListAppAssessmentComplianceDriftsCommand.ts create mode 100644 clients/client-resiliencehub/src/pagination/ListAppAssessmentComplianceDriftsPaginator.ts diff --git a/clients/client-resiliencehub/README.md b/clients/client-resiliencehub/README.md index 88373c879337..e2fe1ba8e81e 100644 --- a/clients/client-resiliencehub/README.md +++ b/clients/client-resiliencehub/README.md @@ -214,6 +214,14 @@ AddDraftAppVersionResourceMappings [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/classes/adddraftappversionresourcemappingscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/interfaces/adddraftappversionresourcemappingscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/interfaces/adddraftappversionresourcemappingscommandoutput.html) + +
+ +BatchUpdateRecommendationStatus + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/classes/batchupdaterecommendationstatuscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/interfaces/batchupdaterecommendationstatuscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/interfaces/batchupdaterecommendationstatuscommandoutput.html) +
@@ -398,6 +406,14 @@ ListAlarmRecommendations [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/classes/listalarmrecommendationscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/interfaces/listalarmrecommendationscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/interfaces/listalarmrecommendationscommandoutput.html) +
+
+ +ListAppAssessmentComplianceDrifts + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/classes/listappassessmentcompliancedriftscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/interfaces/listappassessmentcompliancedriftscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-resiliencehub/interfaces/listappassessmentcompliancedriftscommandoutput.html) +
diff --git a/clients/client-resiliencehub/src/Resiliencehub.ts b/clients/client-resiliencehub/src/Resiliencehub.ts index 22010b166e55..3b8748019e32 100644 --- a/clients/client-resiliencehub/src/Resiliencehub.ts +++ b/clients/client-resiliencehub/src/Resiliencehub.ts @@ -7,6 +7,11 @@ import { AddDraftAppVersionResourceMappingsCommandInput, AddDraftAppVersionResourceMappingsCommandOutput, } from "./commands/AddDraftAppVersionResourceMappingsCommand"; +import { + BatchUpdateRecommendationStatusCommand, + BatchUpdateRecommendationStatusCommandInput, + BatchUpdateRecommendationStatusCommandOutput, +} from "./commands/BatchUpdateRecommendationStatusCommand"; import { CreateAppCommand, CreateAppCommandInput, CreateAppCommandOutput } from "./commands/CreateAppCommand"; import { CreateAppVersionAppComponentCommand, @@ -110,6 +115,11 @@ import { ListAlarmRecommendationsCommandInput, ListAlarmRecommendationsCommandOutput, } from "./commands/ListAlarmRecommendationsCommand"; +import { + ListAppAssessmentComplianceDriftsCommand, + ListAppAssessmentComplianceDriftsCommandInput, + ListAppAssessmentComplianceDriftsCommandOutput, +} from "./commands/ListAppAssessmentComplianceDriftsCommand"; import { ListAppAssessmentsCommand, ListAppAssessmentsCommandInput, @@ -242,6 +252,7 @@ import { ResiliencehubClient, ResiliencehubClientConfig } from "./ResiliencehubC const commands = { AddDraftAppVersionResourceMappingsCommand, + BatchUpdateRecommendationStatusCommand, CreateAppCommand, CreateAppVersionAppComponentCommand, CreateAppVersionResourceCommand, @@ -265,6 +276,7 @@ const commands = { DescribeResiliencyPolicyCommand, ImportResourcesToDraftAppVersionCommand, ListAlarmRecommendationsCommand, + ListAppAssessmentComplianceDriftsCommand, ListAppAssessmentsCommand, ListAppComponentCompliancesCommand, ListAppComponentRecommendationsCommand, @@ -313,6 +325,23 @@ export interface Resiliencehub { cb: (err: any, data?: AddDraftAppVersionResourceMappingsCommandOutput) => void ): void; + /** + * @see {@link BatchUpdateRecommendationStatusCommand} + */ + batchUpdateRecommendationStatus( + args: BatchUpdateRecommendationStatusCommandInput, + options?: __HttpHandlerOptions + ): Promise; + batchUpdateRecommendationStatus( + args: BatchUpdateRecommendationStatusCommandInput, + cb: (err: any, data?: BatchUpdateRecommendationStatusCommandOutput) => void + ): void; + batchUpdateRecommendationStatus( + args: BatchUpdateRecommendationStatusCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: BatchUpdateRecommendationStatusCommandOutput) => void + ): void; + /** * @see {@link CreateAppCommand} */ @@ -686,6 +715,23 @@ export interface Resiliencehub { cb: (err: any, data?: ListAlarmRecommendationsCommandOutput) => void ): void; + /** + * @see {@link ListAppAssessmentComplianceDriftsCommand} + */ + listAppAssessmentComplianceDrifts( + args: ListAppAssessmentComplianceDriftsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listAppAssessmentComplianceDrifts( + args: ListAppAssessmentComplianceDriftsCommandInput, + cb: (err: any, data?: ListAppAssessmentComplianceDriftsCommandOutput) => void + ): void; + listAppAssessmentComplianceDrifts( + args: ListAppAssessmentComplianceDriftsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListAppAssessmentComplianceDriftsCommandOutput) => void + ): void; + /** * @see {@link ListAppAssessmentsCommand} */ diff --git a/clients/client-resiliencehub/src/ResiliencehubClient.ts b/clients/client-resiliencehub/src/ResiliencehubClient.ts index 715f26dd1575..7988d9933fec 100644 --- a/clients/client-resiliencehub/src/ResiliencehubClient.ts +++ b/clients/client-resiliencehub/src/ResiliencehubClient.ts @@ -53,6 +53,10 @@ import { AddDraftAppVersionResourceMappingsCommandInput, AddDraftAppVersionResourceMappingsCommandOutput, } from "./commands/AddDraftAppVersionResourceMappingsCommand"; +import { + BatchUpdateRecommendationStatusCommandInput, + BatchUpdateRecommendationStatusCommandOutput, +} from "./commands/BatchUpdateRecommendationStatusCommand"; import { CreateAppCommandInput, CreateAppCommandOutput } from "./commands/CreateAppCommand"; import { CreateAppVersionAppComponentCommandInput, @@ -133,6 +137,10 @@ import { ListAlarmRecommendationsCommandInput, ListAlarmRecommendationsCommandOutput, } from "./commands/ListAlarmRecommendationsCommand"; +import { + ListAppAssessmentComplianceDriftsCommandInput, + ListAppAssessmentComplianceDriftsCommandOutput, +} from "./commands/ListAppAssessmentComplianceDriftsCommand"; import { ListAppAssessmentsCommandInput, ListAppAssessmentsCommandOutput } from "./commands/ListAppAssessmentsCommand"; import { ListAppComponentCompliancesCommandInput, @@ -233,6 +241,7 @@ export { __Client }; */ export type ServiceInputTypes = | AddDraftAppVersionResourceMappingsCommandInput + | BatchUpdateRecommendationStatusCommandInput | CreateAppCommandInput | CreateAppVersionAppComponentCommandInput | CreateAppVersionResourceCommandInput @@ -256,6 +265,7 @@ export type ServiceInputTypes = | DescribeResiliencyPolicyCommandInput | ImportResourcesToDraftAppVersionCommandInput | ListAlarmRecommendationsCommandInput + | ListAppAssessmentComplianceDriftsCommandInput | ListAppAssessmentsCommandInput | ListAppComponentCompliancesCommandInput | ListAppComponentRecommendationsCommandInput @@ -290,6 +300,7 @@ export type ServiceInputTypes = */ export type ServiceOutputTypes = | AddDraftAppVersionResourceMappingsCommandOutput + | BatchUpdateRecommendationStatusCommandOutput | CreateAppCommandOutput | CreateAppVersionAppComponentCommandOutput | CreateAppVersionResourceCommandOutput @@ -313,6 +324,7 @@ export type ServiceOutputTypes = | DescribeResiliencyPolicyCommandOutput | ImportResourcesToDraftAppVersionCommandOutput | ListAlarmRecommendationsCommandOutput + | ListAppAssessmentComplianceDriftsCommandOutput | ListAppAssessmentsCommandOutput | ListAppComponentCompliancesCommandOutput | ListAppComponentRecommendationsCommandOutput diff --git a/clients/client-resiliencehub/src/commands/AddDraftAppVersionResourceMappingsCommand.ts b/clients/client-resiliencehub/src/commands/AddDraftAppVersionResourceMappingsCommand.ts index accbce185331..56a3cf2e4f6e 100644 --- a/clients/client-resiliencehub/src/commands/AddDraftAppVersionResourceMappingsCommand.ts +++ b/clients/client-resiliencehub/src/commands/AddDraftAppVersionResourceMappingsCommand.ts @@ -44,7 +44,8 @@ export interface AddDraftAppVersionResourceMappingsCommandOutput /** * @public - *

Adds the resource mapping for the draft application version. You can also update an existing resource mapping to a new physical resource.

+ *

Adds the resource mapping for the draft application version. You can also update an + * existing resource mapping to a new physical resource.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-resiliencehub/src/commands/BatchUpdateRecommendationStatusCommand.ts b/clients/client-resiliencehub/src/commands/BatchUpdateRecommendationStatusCommand.ts new file mode 100644 index 000000000000..4f334f3dd7b0 --- /dev/null +++ b/clients/client-resiliencehub/src/commands/BatchUpdateRecommendationStatusCommand.ts @@ -0,0 +1,203 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { BatchUpdateRecommendationStatusRequest, BatchUpdateRecommendationStatusResponse } from "../models/models_0"; +import { + de_BatchUpdateRecommendationStatusCommand, + se_BatchUpdateRecommendationStatusCommand, +} from "../protocols/Aws_restJson1"; +import { ResiliencehubClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ResiliencehubClient"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link BatchUpdateRecommendationStatusCommand}. + */ +export interface BatchUpdateRecommendationStatusCommandInput extends BatchUpdateRecommendationStatusRequest {} +/** + * @public + * + * The output of {@link BatchUpdateRecommendationStatusCommand}. + */ +export interface BatchUpdateRecommendationStatusCommandOutput + extends BatchUpdateRecommendationStatusResponse, + __MetadataBearer {} + +/** + * @public + *

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

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ResiliencehubClient, BatchUpdateRecommendationStatusCommand } from "@aws-sdk/client-resiliencehub"; // ES Modules import + * // const { ResiliencehubClient, BatchUpdateRecommendationStatusCommand } = require("@aws-sdk/client-resiliencehub"); // CommonJS import + * const client = new ResiliencehubClient(config); + * const input = { // BatchUpdateRecommendationStatusRequest + * appArn: "STRING_VALUE", // required + * requestEntries: [ // UpdateRecommendationStatusRequestEntries // required + * { // UpdateRecommendationStatusRequestEntry + * entryId: "STRING_VALUE", // required + * referenceId: "STRING_VALUE", // required + * item: { // UpdateRecommendationStatusItem + * resourceId: "STRING_VALUE", + * targetAccountId: "STRING_VALUE", + * targetRegion: "STRING_VALUE", + * }, + * excluded: true || false, // required + * excludeReason: "STRING_VALUE", + * }, + * ], + * }; + * const command = new BatchUpdateRecommendationStatusCommand(input); + * const response = await client.send(command); + * // { // BatchUpdateRecommendationStatusResponse + * // appArn: "STRING_VALUE", // required + * // successfulEntries: [ // BatchUpdateRecommendationStatusSuccessfulEntries // required + * // { // BatchUpdateRecommendationStatusSuccessfulEntry + * // entryId: "STRING_VALUE", // required + * // referenceId: "STRING_VALUE", // required + * // item: { // UpdateRecommendationStatusItem + * // resourceId: "STRING_VALUE", + * // targetAccountId: "STRING_VALUE", + * // targetRegion: "STRING_VALUE", + * // }, + * // excluded: true || false, // required + * // excludeReason: "STRING_VALUE", + * // }, + * // ], + * // failedEntries: [ // BatchUpdateRecommendationStatusFailedEntries // required + * // { // BatchUpdateRecommendationStatusFailedEntry + * // entryId: "STRING_VALUE", // required + * // errorMessage: "STRING_VALUE", // required + * // }, + * // ], + * // }; + * + * ``` + * + * @param BatchUpdateRecommendationStatusCommandInput - {@link BatchUpdateRecommendationStatusCommandInput} + * @returns {@link BatchUpdateRecommendationStatusCommandOutput} + * @see {@link BatchUpdateRecommendationStatusCommandInput} for command's `input` shape. + * @see {@link BatchUpdateRecommendationStatusCommandOutput} for command's `response` shape. + * @see {@link ResiliencehubClientResolvedConfig | config} for ResiliencehubClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

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.

+ * + * @throws {@link InternalServerException} (server fault) + *

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

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

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

+ * + * @throws {@link ThrottlingException} (client fault) + *

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

+ * + * @throws {@link ValidationException} (client fault) + *

This exception occurs when a request is not valid.

+ * + * @throws {@link ResiliencehubServiceException} + *

Base exception class for all service exceptions from Resiliencehub service.

+ * + */ +export class BatchUpdateRecommendationStatusCommand extends $Command< + BatchUpdateRecommendationStatusCommandInput, + BatchUpdateRecommendationStatusCommandOutput, + ResiliencehubClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: BatchUpdateRecommendationStatusCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ResiliencehubClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, BatchUpdateRecommendationStatusCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ResiliencehubClient"; + const commandName = "BatchUpdateRecommendationStatusCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize( + input: BatchUpdateRecommendationStatusCommandInput, + context: __SerdeContext + ): Promise<__HttpRequest> { + return se_BatchUpdateRecommendationStatusCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_BatchUpdateRecommendationStatusCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-resiliencehub/src/commands/CreateAppCommand.ts b/clients/client-resiliencehub/src/commands/CreateAppCommand.ts index eeb81f9a46a8..02272eed1021 100644 --- a/clients/client-resiliencehub/src/commands/CreateAppCommand.ts +++ b/clients/client-resiliencehub/src/commands/CreateAppCommand.ts @@ -42,10 +42,11 @@ export interface CreateAppCommandOutput extends CreateAppResponse, __MetadataBea /** * @public *

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 an 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. For - * more information about the number of resources supported per application, see Service Quotas.

+ * 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 @@ -66,6 +67,20 @@ export interface CreateAppCommandOutput extends CreateAppResponse, __MetadataBea * }, * clientToken: "STRING_VALUE", * assessmentSchedule: "STRING_VALUE", + * permissionModel: { // PermissionModel + * type: "STRING_VALUE", // required + * invokerRoleName: "STRING_VALUE", + * crossAccountRoleArns: [ // IamRoleArnList + * "STRING_VALUE", + * ], + * }, + * eventSubscriptions: [ // EventSubscriptionList + * { // EventSubscription + * name: "STRING_VALUE", // required + * eventType: "STRING_VALUE", // required + * snsTopicArn: "STRING_VALUE", + * }, + * ], * }; * const command = new CreateAppCommand(input); * const response = await client.send(command); @@ -85,6 +100,22 @@ export interface CreateAppCommandOutput extends CreateAppResponse, __MetadataBea * // "": "STRING_VALUE", * // }, * // assessmentSchedule: "STRING_VALUE", + * // permissionModel: { // PermissionModel + * // type: "STRING_VALUE", // required + * // invokerRoleName: "STRING_VALUE", + * // crossAccountRoleArns: [ // IamRoleArnList + * // "STRING_VALUE", + * // ], + * // }, + * // eventSubscriptions: [ // EventSubscriptionList + * // { // EventSubscription + * // name: "STRING_VALUE", // required + * // eventType: "STRING_VALUE", // required + * // snsTopicArn: "STRING_VALUE", + * // }, + * // ], + * // driftStatus: "STRING_VALUE", + * // lastDriftEvaluationTime: new Date("TIMESTAMP"), * // }, * // }; * diff --git a/clients/client-resiliencehub/src/commands/DescribeAppAssessmentCommand.ts b/clients/client-resiliencehub/src/commands/DescribeAppAssessmentCommand.ts index 02658609a362..e5ec889340ba 100644 --- a/clients/client-resiliencehub/src/commands/DescribeAppAssessmentCommand.ts +++ b/clients/client-resiliencehub/src/commands/DescribeAppAssessmentCommand.ts @@ -120,6 +120,8 @@ export interface DescribeAppAssessmentCommandOutput extends DescribeAppAssessmen * // ], * // hasMoreErrors: true || false, * // }, + * // versionName: "STRING_VALUE", + * // driftStatus: "STRING_VALUE", * // }, * // }; * diff --git a/clients/client-resiliencehub/src/commands/DescribeAppCommand.ts b/clients/client-resiliencehub/src/commands/DescribeAppCommand.ts index 5963f97db2e9..a02c3c6fa9f1 100644 --- a/clients/client-resiliencehub/src/commands/DescribeAppCommand.ts +++ b/clients/client-resiliencehub/src/commands/DescribeAppCommand.ts @@ -64,6 +64,22 @@ export interface DescribeAppCommandOutput extends DescribeAppResponse, __Metadat * // "": "STRING_VALUE", * // }, * // assessmentSchedule: "STRING_VALUE", + * // permissionModel: { // PermissionModel + * // type: "STRING_VALUE", // required + * // invokerRoleName: "STRING_VALUE", + * // crossAccountRoleArns: [ // IamRoleArnList + * // "STRING_VALUE", + * // ], + * // }, + * // eventSubscriptions: [ // EventSubscriptionList + * // { // EventSubscription + * // name: "STRING_VALUE", // required + * // eventType: "STRING_VALUE", // required + * // snsTopicArn: "STRING_VALUE", + * // }, + * // ], + * // driftStatus: "STRING_VALUE", + * // lastDriftEvaluationTime: new Date("TIMESTAMP"), * // }, * // }; * diff --git a/clients/client-resiliencehub/src/commands/ImportResourcesToDraftAppVersionCommand.ts b/clients/client-resiliencehub/src/commands/ImportResourcesToDraftAppVersionCommand.ts index 04a93def4248..e69ce91d9066 100644 --- a/clients/client-resiliencehub/src/commands/ImportResourcesToDraftAppVersionCommand.ts +++ b/clients/client-resiliencehub/src/commands/ImportResourcesToDraftAppVersionCommand.ts @@ -119,6 +119,10 @@ export interface ImportResourcesToDraftAppVersionCommandOutput * @throws {@link ResourceNotFoundException} (client fault) *

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

* + * @throws {@link ServiceQuotaExceededException} (client fault) + *

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.

+ * * @throws {@link ThrottlingException} (client fault) *

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

* diff --git a/clients/client-resiliencehub/src/commands/ListAlarmRecommendationsCommand.ts b/clients/client-resiliencehub/src/commands/ListAlarmRecommendationsCommand.ts index 768486dcf8e0..6a178f6acd99 100644 --- a/clients/client-resiliencehub/src/commands/ListAlarmRecommendationsCommand.ts +++ b/clients/client-resiliencehub/src/commands/ListAlarmRecommendationsCommand.ts @@ -65,9 +65,14 @@ export interface ListAlarmRecommendationsCommandOutput extends ListAlarmRecommen * // targetAccountId: "STRING_VALUE", * // targetRegion: "STRING_VALUE", * // alreadyImplemented: true || false, + * // excluded: true || false, + * // excludeReason: "STRING_VALUE", * // }, * // ], * // prerequisite: "STRING_VALUE", + * // appComponentNames: [ // AppComponentNameList + * // "STRING_VALUE", + * // ], * // }, * // ], * // nextToken: "STRING_VALUE", diff --git a/clients/client-resiliencehub/src/commands/ListAppAssessmentComplianceDriftsCommand.ts b/clients/client-resiliencehub/src/commands/ListAppAssessmentComplianceDriftsCommand.ts new file mode 100644 index 000000000000..665b5d1c0b8f --- /dev/null +++ b/clients/client-resiliencehub/src/commands/ListAppAssessmentComplianceDriftsCommand.ts @@ -0,0 +1,213 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { + ListAppAssessmentComplianceDriftsRequest, + ListAppAssessmentComplianceDriftsResponse, +} from "../models/models_0"; +import { + de_ListAppAssessmentComplianceDriftsCommand, + se_ListAppAssessmentComplianceDriftsCommand, +} from "../protocols/Aws_restJson1"; +import { ResiliencehubClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ResiliencehubClient"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListAppAssessmentComplianceDriftsCommand}. + */ +export interface ListAppAssessmentComplianceDriftsCommandInput extends ListAppAssessmentComplianceDriftsRequest {} +/** + * @public + * + * The output of {@link ListAppAssessmentComplianceDriftsCommand}. + */ +export interface ListAppAssessmentComplianceDriftsCommandOutput + extends ListAppAssessmentComplianceDriftsResponse, + __MetadataBearer {} + +/** + * @public + *

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

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ResiliencehubClient, ListAppAssessmentComplianceDriftsCommand } from "@aws-sdk/client-resiliencehub"; // ES Modules import + * // const { ResiliencehubClient, ListAppAssessmentComplianceDriftsCommand } = require("@aws-sdk/client-resiliencehub"); // CommonJS import + * const client = new ResiliencehubClient(config); + * const input = { // ListAppAssessmentComplianceDriftsRequest + * assessmentArn: "STRING_VALUE", // required + * nextToken: "STRING_VALUE", + * maxResults: Number("int"), + * }; + * const command = new ListAppAssessmentComplianceDriftsCommand(input); + * const response = await client.send(command); + * // { // ListAppAssessmentComplianceDriftsResponse + * // complianceDrifts: [ // ComplianceDriftList // required + * // { // ComplianceDrift + * // entityId: "STRING_VALUE", + * // entityType: "STRING_VALUE", + * // driftType: "STRING_VALUE", + * // appId: "STRING_VALUE", + * // appVersion: "STRING_VALUE", + * // expectedReferenceId: "STRING_VALUE", + * // expectedValue: { // AssessmentCompliance + * // "": { // DisruptionCompliance + * // achievableRtoInSecs: Number("int"), + * // currentRtoInSecs: Number("int"), + * // rtoReferenceId: "STRING_VALUE", + * // rtoDescription: "STRING_VALUE", + * // currentRpoInSecs: Number("int"), + * // rpoReferenceId: "STRING_VALUE", + * // rpoDescription: "STRING_VALUE", + * // complianceStatus: "STRING_VALUE", // required + * // achievableRpoInSecs: Number("int"), + * // message: "STRING_VALUE", + * // }, + * // }, + * // actualReferenceId: "STRING_VALUE", + * // actualValue: { + * // "": { + * // achievableRtoInSecs: Number("int"), + * // currentRtoInSecs: Number("int"), + * // rtoReferenceId: "STRING_VALUE", + * // rtoDescription: "STRING_VALUE", + * // currentRpoInSecs: Number("int"), + * // rpoReferenceId: "STRING_VALUE", + * // rpoDescription: "STRING_VALUE", + * // complianceStatus: "STRING_VALUE", // required + * // achievableRpoInSecs: Number("int"), + * // message: "STRING_VALUE", + * // }, + * // }, + * // diffType: "STRING_VALUE", + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListAppAssessmentComplianceDriftsCommandInput - {@link ListAppAssessmentComplianceDriftsCommandInput} + * @returns {@link ListAppAssessmentComplianceDriftsCommandOutput} + * @see {@link ListAppAssessmentComplianceDriftsCommandInput} for command's `input` shape. + * @see {@link ListAppAssessmentComplianceDriftsCommandOutput} for command's `response` shape. + * @see {@link ResiliencehubClientResolvedConfig | config} for ResiliencehubClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

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.

+ * + * @throws {@link InternalServerException} (server fault) + *

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

+ * + * @throws {@link ThrottlingException} (client fault) + *

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

+ * + * @throws {@link ValidationException} (client fault) + *

This exception occurs when a request is not valid.

+ * + * @throws {@link ResiliencehubServiceException} + *

Base exception class for all service exceptions from Resiliencehub service.

+ * + */ +export class ListAppAssessmentComplianceDriftsCommand extends $Command< + ListAppAssessmentComplianceDriftsCommandInput, + ListAppAssessmentComplianceDriftsCommandOutput, + ResiliencehubClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: ListAppAssessmentComplianceDriftsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ResiliencehubClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListAppAssessmentComplianceDriftsCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ResiliencehubClient"; + const commandName = "ListAppAssessmentComplianceDriftsCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize( + input: ListAppAssessmentComplianceDriftsCommandInput, + context: __SerdeContext + ): Promise<__HttpRequest> { + return se_ListAppAssessmentComplianceDriftsCommand(input, context); + } + + /** + * @internal + */ + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return de_ListAppAssessmentComplianceDriftsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-resiliencehub/src/commands/ListAppAssessmentsCommand.ts b/clients/client-resiliencehub/src/commands/ListAppAssessmentsCommand.ts index 4cc588b31e4d..e37ce3340838 100644 --- a/clients/client-resiliencehub/src/commands/ListAppAssessmentsCommand.ts +++ b/clients/client-resiliencehub/src/commands/ListAppAssessmentsCommand.ts @@ -78,6 +78,8 @@ export interface ListAppAssessmentsCommandOutput extends ListAppAssessmentsRespo * // frequency: "STRING_VALUE", // required * // }, * // resiliencyScore: Number("double"), + * // versionName: "STRING_VALUE", + * // driftStatus: "STRING_VALUE", * // }, * // ], * // }; diff --git a/clients/client-resiliencehub/src/commands/ListAppVersionsCommand.ts b/clients/client-resiliencehub/src/commands/ListAppVersionsCommand.ts index 1f3d7b5dd373..3b508c9f95d2 100644 --- a/clients/client-resiliencehub/src/commands/ListAppVersionsCommand.ts +++ b/clients/client-resiliencehub/src/commands/ListAppVersionsCommand.ts @@ -47,6 +47,8 @@ export interface ListAppVersionsCommandOutput extends ListAppVersionsResponse, _ * appArn: "STRING_VALUE", // required * nextToken: "STRING_VALUE", * maxResults: Number("int"), + * startTime: new Date("TIMESTAMP"), + * endTime: new Date("TIMESTAMP"), * }; * const command = new ListAppVersionsCommand(input); * const response = await client.send(command); @@ -54,6 +56,9 @@ export interface ListAppVersionsCommandOutput extends ListAppVersionsResponse, _ * // appVersions: [ // AppVersionList // required * // { // AppVersionSummary * // appVersion: "STRING_VALUE", // required + * // identifier: Number("long"), + * // creationTime: new Date("TIMESTAMP"), + * // versionName: "STRING_VALUE", * // }, * // ], * // nextToken: "STRING_VALUE", diff --git a/clients/client-resiliencehub/src/commands/ListAppsCommand.ts b/clients/client-resiliencehub/src/commands/ListAppsCommand.ts index a1b1415089d1..c7c785db5b2d 100644 --- a/clients/client-resiliencehub/src/commands/ListAppsCommand.ts +++ b/clients/client-resiliencehub/src/commands/ListAppsCommand.ts @@ -71,6 +71,7 @@ export interface ListAppsCommandOutput extends ListAppsResponse, __MetadataBeare * // resiliencyScore: Number("double"), * // assessmentSchedule: "STRING_VALUE", * // status: "STRING_VALUE", + * // driftStatus: "STRING_VALUE", * // }, * // ], * // nextToken: "STRING_VALUE", diff --git a/clients/client-resiliencehub/src/commands/ListSopRecommendationsCommand.ts b/clients/client-resiliencehub/src/commands/ListSopRecommendationsCommand.ts index e05b3824437f..2a1f8101629f 100644 --- a/clients/client-resiliencehub/src/commands/ListSopRecommendationsCommand.ts +++ b/clients/client-resiliencehub/src/commands/ListSopRecommendationsCommand.ts @@ -66,6 +66,8 @@ export interface ListSopRecommendationsCommandOutput extends ListSopRecommendati * // targetAccountId: "STRING_VALUE", * // targetRegion: "STRING_VALUE", * // alreadyImplemented: true || false, + * // excluded: true || false, + * // excludeReason: "STRING_VALUE", * // }, * // ], * // referenceId: "STRING_VALUE", // required diff --git a/clients/client-resiliencehub/src/commands/ListTestRecommendationsCommand.ts b/clients/client-resiliencehub/src/commands/ListTestRecommendationsCommand.ts index c8c5db3497e6..85398cb81168 100644 --- a/clients/client-resiliencehub/src/commands/ListTestRecommendationsCommand.ts +++ b/clients/client-resiliencehub/src/commands/ListTestRecommendationsCommand.ts @@ -68,6 +68,8 @@ export interface ListTestRecommendationsCommandOutput extends ListTestRecommenda * // targetAccountId: "STRING_VALUE", * // targetRegion: "STRING_VALUE", * // alreadyImplemented: true || false, + * // excluded: true || false, + * // excludeReason: "STRING_VALUE", * // }, * // ], * // prerequisite: "STRING_VALUE", diff --git a/clients/client-resiliencehub/src/commands/PublishAppVersionCommand.ts b/clients/client-resiliencehub/src/commands/PublishAppVersionCommand.ts index 1e9d19f8e4f1..771df476e602 100644 --- a/clients/client-resiliencehub/src/commands/PublishAppVersionCommand.ts +++ b/clients/client-resiliencehub/src/commands/PublishAppVersionCommand.ts @@ -45,12 +45,15 @@ export interface PublishAppVersionCommandOutput extends PublishAppVersionRespons * const client = new ResiliencehubClient(config); * const input = { // PublishAppVersionRequest * appArn: "STRING_VALUE", // required + * versionName: "STRING_VALUE", * }; * const command = new PublishAppVersionCommand(input); * const response = await client.send(command); * // { // PublishAppVersionResponse * // appArn: "STRING_VALUE", // required * // appVersion: "STRING_VALUE", + * // identifier: Number("long"), + * // versionName: "STRING_VALUE", * // }; * * ``` diff --git a/clients/client-resiliencehub/src/commands/StartAppAssessmentCommand.ts b/clients/client-resiliencehub/src/commands/StartAppAssessmentCommand.ts index ca86660d2f39..c08663f5411b 100644 --- a/clients/client-resiliencehub/src/commands/StartAppAssessmentCommand.ts +++ b/clients/client-resiliencehub/src/commands/StartAppAssessmentCommand.ts @@ -127,6 +127,8 @@ export interface StartAppAssessmentCommandOutput extends StartAppAssessmentRespo * // ], * // hasMoreErrors: true || false, * // }, + * // versionName: "STRING_VALUE", + * // driftStatus: "STRING_VALUE", * // }, * // }; * diff --git a/clients/client-resiliencehub/src/commands/UpdateAppCommand.ts b/clients/client-resiliencehub/src/commands/UpdateAppCommand.ts index f85d8082c6c4..e3e7f35da52c 100644 --- a/clients/client-resiliencehub/src/commands/UpdateAppCommand.ts +++ b/clients/client-resiliencehub/src/commands/UpdateAppCommand.ts @@ -49,6 +49,20 @@ export interface UpdateAppCommandOutput extends UpdateAppResponse, __MetadataBea * policyArn: "STRING_VALUE", * clearResiliencyPolicyArn: true || false, * assessmentSchedule: "STRING_VALUE", + * permissionModel: { // PermissionModel + * type: "STRING_VALUE", // required + * invokerRoleName: "STRING_VALUE", + * crossAccountRoleArns: [ // IamRoleArnList + * "STRING_VALUE", + * ], + * }, + * eventSubscriptions: [ // EventSubscriptionList + * { // EventSubscription + * name: "STRING_VALUE", // required + * eventType: "STRING_VALUE", // required + * snsTopicArn: "STRING_VALUE", + * }, + * ], * }; * const command = new UpdateAppCommand(input); * const response = await client.send(command); @@ -68,6 +82,22 @@ export interface UpdateAppCommandOutput extends UpdateAppResponse, __MetadataBea * // "": "STRING_VALUE", * // }, * // assessmentSchedule: "STRING_VALUE", + * // permissionModel: { // PermissionModel + * // type: "STRING_VALUE", // required + * // invokerRoleName: "STRING_VALUE", + * // crossAccountRoleArns: [ // IamRoleArnList + * // "STRING_VALUE", + * // ], + * // }, + * // eventSubscriptions: [ // EventSubscriptionList + * // { // EventSubscription + * // name: "STRING_VALUE", // required + * // eventType: "STRING_VALUE", // required + * // snsTopicArn: "STRING_VALUE", + * // }, + * // ], + * // driftStatus: "STRING_VALUE", + * // lastDriftEvaluationTime: new Date("TIMESTAMP"), * // }, * // }; * diff --git a/clients/client-resiliencehub/src/commands/index.ts b/clients/client-resiliencehub/src/commands/index.ts index 2ec7d37ed582..d4b948f93298 100644 --- a/clients/client-resiliencehub/src/commands/index.ts +++ b/clients/client-resiliencehub/src/commands/index.ts @@ -1,5 +1,6 @@ // smithy-typescript generated code export * from "./AddDraftAppVersionResourceMappingsCommand"; +export * from "./BatchUpdateRecommendationStatusCommand"; export * from "./CreateAppCommand"; export * from "./CreateAppVersionAppComponentCommand"; export * from "./CreateAppVersionResourceCommand"; @@ -23,6 +24,7 @@ export * from "./DescribeDraftAppVersionResourcesImportStatusCommand"; export * from "./DescribeResiliencyPolicyCommand"; export * from "./ImportResourcesToDraftAppVersionCommand"; export * from "./ListAlarmRecommendationsCommand"; +export * from "./ListAppAssessmentComplianceDriftsCommand"; export * from "./ListAppAssessmentsCommand"; export * from "./ListAppComponentCompliancesCommand"; export * from "./ListAppComponentRecommendationsCommand"; diff --git a/clients/client-resiliencehub/src/models/models_0.ts b/clients/client-resiliencehub/src/models/models_0.ts index a9f1966c628e..408303c0184c 100644 --- a/clients/client-resiliencehub/src/models/models_0.ts +++ b/clients/client-resiliencehub/src/models/models_0.ts @@ -64,7 +64,8 @@ export type PhysicalIdentifierType = (typeof PhysicalIdentifierType)[keyof typeo export interface PhysicalResourceId { /** * @public - *

The identifier of the physical resource.

+ *

Identifier + * of the physical resource.

*/ identifier: string | undefined; @@ -74,11 +75,137 @@ export interface PhysicalResourceId { *
*
Arn
*
- *

The resource identifier is an Amazon Resource Name (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.

+ *

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 + *

    + *
  • + *
*
*
*/ @@ -104,7 +231,10 @@ export interface PhysicalResourceId { export interface ResourceMapping { /** * @public - *

The name of the resource this resource is mapped to.

+ *

Name + * of the resource that + * the + * resource is mapped to.

*/ resourceName?: string; @@ -122,7 +252,11 @@ export interface ResourceMapping { /** * @public - *

The name of the resource group this resource is mapped to.

+ *

Name + * of the resource group + * that + * the + * resource is mapped to.

*/ resourceGroupName?: string; @@ -156,21 +290,20 @@ export interface ResourceMapping { /** * @public - *

The identifier of this resource.

+ *

Identifier + * of the physical resource.

*/ physicalResourceId: PhysicalResourceId | undefined; /** * @public - *

- * The short name of the Terraform source. - *

+ *

The short name of the Terraform source.

*/ terraformSourceName?: string; /** * @public - *

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

+ *

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

* *

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

*
@@ -184,7 +317,7 @@ export interface ResourceMapping { export interface AddDraftAppVersionResourceMappingsRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -209,7 +342,7 @@ export interface AddDraftAppVersionResourceMappingsRequest { export interface AddDraftAppVersionResourceMappingsResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -225,11 +358,9 @@ export interface AddDraftAppVersionResourceMappingsResponse { /** * @public - *

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.

+ *

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.

*/ resourceMappings: ResourceMapping[] | undefined; } @@ -373,6 +504,22 @@ export class ValidationException extends __BaseException { } } +/** + * @public + * @enum + */ +export const ExcludeRecommendationReason = { + ALREADY_IMPLEMENTED: "AlreadyImplemented", + COMPLEXITY_OF_IMPLEMENTATION: "ComplexityOfImplementation", + NOT_RELEVANT: "NotRelevant", +} as const; + +/** + * @public + */ +export type ExcludeRecommendationReason = + (typeof ExcludeRecommendationReason)[keyof typeof ExcludeRecommendationReason]; + /** * @public *

Defines a recommendation.

@@ -380,13 +527,14 @@ export class ValidationException extends __BaseException { export interface RecommendationItem { /** * @public - *

The resource identifier.

+ *

Identifier of the resource.

*/ resourceId?: string; /** * @public - *

The target account identifier.

+ *

Identifier + * of the target account.

*/ targetAccountId?: string; @@ -401,6 +549,18 @@ export interface RecommendationItem { *

Specifies if the recommendation has already been implemented.

*/ alreadyImplemented?: boolean; + + /** + * @public + *

Indicates if an operational recommendation item is excluded.

+ */ + excluded?: boolean; + + /** + * @public + *

Indicates the reason for excluding an operational recommendation.

+ */ + excludeReason?: ExcludeRecommendationReason | string; } /** @@ -427,43 +587,50 @@ export type AlarmType = (typeof AlarmType)[keyof typeof AlarmType]; export interface AlarmRecommendation { /** * @public - *

The identifier of the alarm recommendation.

+ *

Identifier + * of the alarm recommendation.

*/ recommendationId: string | undefined; /** * @public - *

The reference identifier of the alarm recommendation.

+ *

Reference + * identifier of the alarm recommendation.

*/ referenceId: string | undefined; /** * @public - *

The name of the alarm recommendation.

+ *

Name of the alarm recommendation.

*/ name: string | undefined; /** * @public - *

The description of the recommendation.

+ *

Description of the alarm recommendation.

*/ description?: string; /** * @public - *

The type of alarm recommendation.

+ *

Type of alarm recommendation.

*/ type: AlarmType | string | undefined; /** * @public - *

The Application Component for the CloudWatch alarm recommendation.

+ * @deprecated + * + *

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

*/ appComponentName?: string; /** * @public - *

The list of CloudWatch alarm recommendations.

+ *

List of CloudWatch alarm recommendations.

*/ items?: RecommendationItem[]; @@ -472,6 +639,12 @@ export interface AlarmRecommendation { *

The prerequisite for the alarm recommendation.

*/ prerequisite?: string; + + /** + * @public + *

List of Application Component names for the CloudWatch alarm recommendation.

+ */ + appComponentNames?: string[]; } /** @@ -504,6 +677,134 @@ export const AppComplianceStatusType = { */ export type AppComplianceStatusType = (typeof AppComplianceStatusType)[keyof typeof AppComplianceStatusType]; +/** + * @public + * @enum + */ +export const AppDriftStatusType = { + DETECTED: "Detected", + NOT_CHECKED: "NotChecked", + NOT_DETECTED: "NotDetected", +} as const; + +/** + * @public + */ +export type AppDriftStatusType = (typeof AppDriftStatusType)[keyof typeof AppDriftStatusType]; + +/** + * @public + * @enum + */ +export const EventType = { + DRIFT_DETECTED: "DriftDetected", + SCHEDULED_ASSESSMENT_FAILURE: "ScheduledAssessmentFailure", +} as const; + +/** + * @public + */ +export type EventType = (typeof EventType)[keyof typeof EventType]; + +/** + * @public + *

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.

+ */ +export interface EventSubscription { + /** + * @public + *

Unique name to identify an event subscription.

+ */ + name: string | undefined; + + /** + * @public + *

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.

+ */ + eventType: EventType | string | undefined; + + /** + * @public + *

Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. The format for this ARN is: + * arn:partition:resiliencehub:region:account:app/app-id. + * For more information about ARNs, + * see + * Amazon Resource Names (ARNs) in the + * AWS General Reference guide.

+ */ + snsTopicArn?: string; +} + +/** + * @public + * @enum + */ +export const PermissionModelType = { + LEGACY_IAM_USER: "LegacyIAMUser", + ROLE_BASED: "RoleBased", +} as const; + +/** + * @public + */ +export type PermissionModelType = (typeof PermissionModelType)[keyof typeof PermissionModelType]; + +/** + * @public + *

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

+ */ +export interface PermissionModel { + /** + * @public + *

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

+ */ + type: PermissionModelType | string | undefined; + + /** + * @public + *

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.

+ *
+ */ + invokerRoleName?: string; + + /** + * @public + *

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.

    + *
  • + *
+ *
+ */ + crossAccountRoleArns?: string[]; +} + /** * @public * @enum @@ -525,7 +826,7 @@ export type AppStatusType = (typeof AppStatusType)[keyof typeof AppStatusType]; export interface App { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -535,19 +836,22 @@ export interface App { /** * @public - *

The name for the application.

+ *

Name + * for the application.

*/ name: string | undefined; /** * @public - *

The optional description for an app.

+ *

Optional + * description for an + * application.

*/ description?: string; /** * @public - *

The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: + *

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 @@ -557,54 +861,89 @@ export interface App { /** * @public - *

The timestamp for when the app was created.

+ *

Timestamp + * for when the app was created.

*/ creationTime: Date | undefined; /** * @public - *

The status of the application.

+ *

Status of the application.

*/ status?: AppStatusType | string; /** * @public - *

The current status of compliance for the resiliency policy.

+ *

Current + * status of compliance for the resiliency policy.

*/ complianceStatus?: AppComplianceStatusType | string; /** * @public - *

The timestamp for the most recent compliance evaluation.

+ *

Timestamp + * for the most recent compliance evaluation.

*/ lastAppComplianceEvaluationTime?: Date; /** * @public - *

The current resiliency score for the application.

+ *

Current + * resiliency score for the application.

*/ resiliencyScore?: number; /** * @public - *

The timestamp for the most recent resiliency score evaluation.

+ *

Timestamp + * for the most recent resiliency score evaluation.

*/ lastResiliencyScoreEvaluationTime?: Date; /** * @public - *

The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. + *

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.

*/ tags?: Record; /** * @public - *

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

+ *

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

*/ assessmentSchedule?: AppAssessmentScheduleType | string; + + /** + * @public + *

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

+ */ + permissionModel?: PermissionModel; + + /** + * @public + *

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.

+ */ + eventSubscriptions?: EventSubscription[]; + + /** + * @public + *

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

+ */ + driftStatus?: AppDriftStatusType | string; + + /** + * @public + *

Indicates the last time + * that + * a drift was evaluated.

+ */ + lastDriftEvaluationTime?: Date; } /** @@ -672,7 +1011,8 @@ export interface DisruptionCompliance { /** * @public - *

The RTO reference identifier.

+ *

Reference + * identifier of the RTO.

*/ rtoReferenceId?: string; @@ -690,7 +1030,11 @@ export interface DisruptionCompliance { /** * @public - *

The RPO reference identifier.

+ *

Reference + * identifier of + * the + * RPO + * .

*/ rpoReferenceId?: string; @@ -759,6 +1103,21 @@ export interface Cost { frequency: CostFrequency | string | undefined; } +/** + * @public + * @enum + */ +export const DriftStatus = { + DETECTED: "Detected", + NOT_CHECKED: "NotChecked", + NOT_DETECTED: "NotDetected", +} as const; + +/** + * @public + */ +export type DriftStatus = (typeof DriftStatus)[keyof typeof DriftStatus]; + /** * @public * @enum @@ -832,6 +1191,7 @@ export const ResiliencyPolicyTier = { IMPORTANT: "Important", MISSION_CRITICAL: "MissionCritical", NON_CRITICAL: "NonCritical", + NOT_APPLICABLE: "NotApplicable", } as const; /** @@ -846,7 +1206,7 @@ export type ResiliencyPolicyTier = (typeof ResiliencyPolicyTier)[keyof typeof Re export interface ResiliencyPolicy { /** * @public - *

The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: + *

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 @@ -900,7 +1260,7 @@ export interface ResiliencyPolicy { /** * @public - *

The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. + *

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.

*/ tags?: Record; @@ -927,56 +1287,45 @@ export interface ResiliencyScore { /** * @public - *

- * Defines application resource errors. - *

+ *

Defines application resource errors.

*/ export interface ResourceError { /** * @public - *

- * This is the identifier of the resource. - *

+ *

Identifier + * of the + * logical resource.

*/ logicalResourceId?: string; /** * @public - *

- * This is the identifier of the physical resource. - *

+ *

Identifier + * of the physical resource.

*/ physicalResourceId?: string; /** * @public - *

- * This is the error message. - *

+ *

This is the error message.

*/ reason?: string; } /** * @public - *

- * A list of errors retrieving an application's resources. - *

+ *

A list of errors retrieving an application's resources.

*/ export interface ResourceErrorsDetails { /** * @public - *

- * A list of errors retrieving an application's resources. - *

+ *

A list of errors retrieving an application's resources.

*/ resourceErrors?: ResourceError[]; /** * @public - *

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

+ *

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

*/ hasMoreErrors?: boolean; } @@ -988,7 +1337,7 @@ export interface ResourceErrorsDetails { export interface AppAssessment { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -998,7 +1347,7 @@ export interface AppAssessment { /** * @public - *

The version of the application.

+ *

Version of an application.

*/ appVersion?: string; @@ -1010,43 +1359,44 @@ export interface AppAssessment { /** * @public - *

The cost for the application.

+ *

Cost for the application.

*/ cost?: Cost; /** * @public - *

The current resiliency score for the application.

+ *

Current resiliency score for an application.

*/ resiliencyScore?: ResiliencyScore; /** * @public - *

The application compliance against the resiliency policy.

+ *

Application + * compliance against the resiliency policy.

*/ compliance?: Record; /** * @public - *

The current status of the compliance for the resiliency policy.

+ *

Current status of the compliance for the resiliency policy.

*/ complianceStatus?: ComplianceStatus | string; /** * @public - *

The current status of the assessment for the resiliency policy.

+ *

Current status of the assessment for the resiliency policy.

*/ assessmentStatus: AssessmentStatus | string | undefined; /** * @public - *

The starting time for the action.

+ *

Starting time for the action.

*/ startTime?: Date; /** * @public - *

The end time for the action.

+ *

End time for the action.

*/ endTime?: Date; @@ -1058,13 +1408,13 @@ export interface AppAssessment { /** * @public - *

The name of the assessment.

+ *

Name of the assessment.

*/ assessmentName?: string; /** * @public - *

The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

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 @@ -1074,24 +1424,36 @@ export interface AppAssessment { /** * @public - *

The resiliency policy.

+ *

Resiliency policy of an application.

*/ policy?: ResiliencyPolicy; /** * @public - *

The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. + *

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.

*/ tags?: Record; /** * @public - *

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

+ *

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

*/ resourceErrorsDetails?: ResourceErrorsDetails; + + /** + * @public + *

Version name of the published application.

+ */ + versionName?: string; + + /** + * @public + *

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

+ */ + driftStatus?: DriftStatus | string; } /** @@ -1101,7 +1463,7 @@ export interface AppAssessment { export interface AppAssessmentSummary { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -1111,49 +1473,49 @@ export interface AppAssessmentSummary { /** * @public - *

The version of the application.

+ *

Version of an application.

*/ appVersion?: string; /** * @public - *

The current status of the assessment for the resiliency policy.

+ *

Current status of the assessment for the resiliency policy.

*/ assessmentStatus: AssessmentStatus | string | undefined; /** * @public - *

The entity that invoked the assessment.

+ *

Entity that invoked the assessment.

*/ invoker?: AssessmentInvoker | string; /** * @public - *

The starting time for the action.

+ *

Starting time for the action.

*/ startTime?: Date; /** * @public - *

The end time for the action.

+ *

End time for the action.

*/ endTime?: Date; /** * @public - *

The message from the assessment run.

+ *

Message from the assessment run.

*/ message?: string; /** * @public - *

The name of the assessment.

+ *

Name of the assessment.

*/ assessmentName?: string; /** * @public - *

The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

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 @@ -1163,21 +1525,34 @@ export interface AppAssessmentSummary { /** * @public - *

The current status of compliance for the resiliency policy.

+ *

TCurrent status of compliance for the resiliency policy.

*/ complianceStatus?: ComplianceStatus | string; /** * @public - *

The cost for the application.

+ *

Cost for an application.

*/ cost?: Cost; /** * @public - *

The current resiliency score for the application.

+ *

Current resiliency score for the application.

*/ resiliencyScore?: number; + + /** + * @public + *

Name of an application version.

+ */ + versionName?: string; + + /** + * @public + *

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

+ */ + driftStatus?: DriftStatus | string; } /** @@ -1187,7 +1562,7 @@ export interface AppAssessmentSummary { export interface AppComponent { /** * @public - *

The name of the Application Component.

+ *

Name of the Application Component.

*/ name: string | undefined; @@ -1199,7 +1574,8 @@ export interface AppComponent { /** * @public - *

Unique identifier of the Application Component.

+ *

Identifier + * of the Application Component.

*/ id?: string; @@ -1230,126 +1606,281 @@ export interface AppComponentCompliance { /** * @public - *

The name of the Application Component.

+ *

Name of the Application Component.

*/ appComponentName?: string; /** * @public - *

The compliance of the Application Component against the resiliency policy.

+ *

The compliance of the Application Component against the resiliency policy.

+ */ + compliance?: Record; + + /** + * @public + *

The compliance message.

+ */ + message?: string; + + /** + * @public + *

Status of the action.

+ */ + status?: ComplianceStatus | string; + + /** + * @public + *

The current resiliency score for the application.

+ */ + resiliencyScore?: ResiliencyScore; +} + +/** + * @public + *

The input source of the namespace that is located on your Amazon Elastic Kubernetes Service + * cluster.

+ */ +export interface EksSourceClusterNamespace { + /** + * @public + *

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

+ */ + eksClusterArn: string | undefined; + + /** + * @public + *

Name of the namespace that is located on your Amazon Elastic Kubernetes Service cluster.

+ */ + namespace: string | undefined; +} + +/** + * @public + *

The Terraform s3 state file you need to import.

+ */ +export interface TerraformSource { + /** + * @public + *

The URL of the Terraform s3 state file you need to import.

+ */ + s3StateFileUrl: string | undefined; +} + +/** + * @public + *

The list of Resilience Hub application input sources.

+ */ +export interface AppInputSource { + /** + * @public + *

The name of the input source.

+ */ + sourceName?: string; + + /** + * @public + *

The resource type of the input source.

+ */ + importType: ResourceMappingType | string | undefined; + + /** + * @public + *

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

+ */ + sourceArn?: string; + + /** + * @public + *

The name of the Terraform s3 state file.

+ */ + terraformSource?: TerraformSource; + + /** + * @public + *

The number of resources.

+ */ + resourceCount?: number; + + /** + * @public + *

The namespace on your Amazon Elastic Kubernetes Service cluster.

+ */ + eksSourceClusterNamespace?: EksSourceClusterNamespace; +} + +/** + * @public + *

Defines an application summary.

+ */ +export interface AppSummary { + /** + * @public + *

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

+ */ + appArn: string | undefined; + + /** + * @public + *

The name of the application.

+ */ + name: string | undefined; + + /** + * @public + *

The optional description for an app.

+ */ + description?: string; + + /** + * @public + *

The timestamp for when the app was created.

+ */ + creationTime: Date | undefined; + + /** + * @public + *

The current status of compliance for the resiliency policy.

+ */ + complianceStatus?: AppComplianceStatusType | string; + + /** + * @public + *

The current resiliency score for the application.

+ */ + resiliencyScore?: number; + + /** + * @public + *

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

+ */ + assessmentSchedule?: AppAssessmentScheduleType | string; + + /** + * @public + *

Status of the application.

+ */ + status?: AppStatusType | string; + + /** + * @public + *

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

+ */ + driftStatus?: AppDriftStatusType | string; +} + +/** + * @public + *

Version of an application.

+ */ +export interface AppVersionSummary { + /** + * @public + *

Version of an application.

*/ - compliance?: Record; + appVersion: string | undefined; /** * @public - *

The compliance message.

+ *

Identifier of the application version.

*/ - message?: string; + identifier?: number; /** * @public - *

The status of the action.

+ *

Creation time of the application version.

*/ - status?: ComplianceStatus | string; + creationTime?: Date; /** * @public - *

The current resiliency score for the application.

+ *

Name of the application version.

*/ - resiliencyScore?: ResiliencyScore; + versionName?: string; } /** * @public - *

The input source of the namespace that is located on your Amazon Elastic Kubernetes Service cluster.

+ *

Defines the operational recommendation item that needs a status update.

*/ -export interface EksSourceClusterNamespace { +export interface UpdateRecommendationStatusItem { /** * @public - *

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

+ *

Resource identifier of the operational recommendation item.

*/ - eksClusterArn: string | undefined; + resourceId?: string; /** * @public - *

Name of the namespace that is located on your Amazon Elastic Kubernetes Service cluster.

+ *

Identifier of the target Amazon Web Services account.

*/ - namespace: string | undefined; -} + targetAccountId?: string; -/** - * @public - *

- * The Terraform s3 state file you need to import. - *

- */ -export interface TerraformSource { /** * @public - *

- * The URL of the Terraform s3 state file you need to import. - *

+ *

Identifier of the target Amazon Web Services Region.

*/ - s3StateFileUrl: string | undefined; + targetRegion?: string; } /** * @public - *

The list of Resilience Hub application input sources.

+ *

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

*/ -export interface AppInputSource { - /** - * @public - *

The name of the input source.

- */ - sourceName?: string; - +export interface UpdateRecommendationStatusRequestEntry { /** * @public - *

The resource type of the input source.

+ *

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.

+ *
*/ - importType: ResourceMappingType | string | undefined; + entryId: string | undefined; /** * @public - *

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

+ *

Reference identifier of the operational recommendation item.

*/ - sourceArn?: string; + referenceId: string | undefined; /** * @public - *

The name of the Terraform s3 state file.

+ *

The operational recommendation item.

*/ - terraformSource?: TerraformSource; + item: UpdateRecommendationStatusItem | undefined; /** * @public - *

The number of resources.

+ *

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

*/ - resourceCount?: number; + excluded: boolean | undefined; /** * @public - *

The namespace on your Amazon Elastic Kubernetes Service cluster.

+ *

Indicates the reason for excluding an operational recommendation.

*/ - eksSourceClusterNamespace?: EksSourceClusterNamespace; + excludeReason?: ExcludeRecommendationReason | string; } /** * @public - *

Defines an application summary.

*/ -export interface AppSummary { +export interface BatchUpdateRecommendationStatusRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -1359,59 +1890,100 @@ export interface AppSummary { /** * @public - *

The name of the application.

+ *

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

*/ - name: string | undefined; + requestEntries: UpdateRecommendationStatusRequestEntry[] | undefined; +} +/** + * @public + *

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

+ */ +export interface BatchUpdateRecommendationStatusFailedEntry { /** * @public - *

The optional description for an app.

+ *

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.

+ *
*/ - description?: string; + entryId: string | undefined; /** * @public - *

The timestamp for when the app was created.

+ *

Indicates the error that occurred while excluding an operational recommendation.

*/ - creationTime: Date | undefined; + errorMessage: string | undefined; +} +/** + * @public + *

List + * of operational recommendations that were successfully included or excluded.

+ */ +export interface BatchUpdateRecommendationStatusSuccessfulEntry { /** * @public - *

The current status of compliance for the resiliency policy.

+ *

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.

+ *
*/ - complianceStatus?: AppComplianceStatusType | string; + entryId: string | undefined; /** * @public - *

The current resiliency score for the application.

+ *

Reference identifier of the operational recommendation.

*/ - resiliencyScore?: number; + referenceId: string | undefined; /** * @public - *

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

+ *

The operational recommendation item.

*/ - assessmentSchedule?: AppAssessmentScheduleType | string; + item: UpdateRecommendationStatusItem | undefined; /** * @public - *

The status of the application.

+ *

Indicates + * if + * the operational recommendation was successfully excluded.

*/ - status?: AppStatusType | string; + excluded: boolean | undefined; + + /** + * @public + *

Indicates the reason for excluding an operational recommendation.

+ */ + excludeReason?: ExcludeRecommendationReason | string; } /** * @public - *

The version of the application.

*/ -export interface AppVersionSummary { +export interface BatchUpdateRecommendationStatusResponse { /** * @public - *

The version of the application.

+ *

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

*/ - appVersion: string | undefined; + appArn: string | undefined; + + /** + * @public + *

A list of items that were included or excluded.

+ */ + successfulEntries: BatchUpdateRecommendationStatusSuccessfulEntry[] | undefined; + + /** + * @public + *

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

+ */ + failedEntries: BatchUpdateRecommendationStatusFailedEntry[] | undefined; } /** @@ -1420,7 +1992,7 @@ export interface AppVersionSummary { export interface CreateAppRequest { /** * @public - *

The name for the application.

+ *

Name of the application.

*/ name: string | undefined; @@ -1432,7 +2004,7 @@ export interface CreateAppRequest { /** * @public - *

The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: + *

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 @@ -1442,7 +2014,7 @@ export interface CreateAppRequest { /** * @public - *

The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. + *

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.

*/ tags?: Record; @@ -1461,6 +2033,19 @@ export interface CreateAppRequest { *

*/ assessmentSchedule?: AppAssessmentScheduleType | string; + + /** + * @public + *

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

+ */ + permissionModel?: PermissionModel; + + /** + * @public + *

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.

+ */ + eventSubscriptions?: EventSubscription[]; } /** @@ -1502,7 +2087,7 @@ export class ServiceQuotaExceededException extends __BaseException { export interface CreateAppVersionAppComponentRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -1512,19 +2097,19 @@ export interface CreateAppVersionAppComponentRequest { /** * @public - *

The identifier of the Application Component.

+ *

Identifier of the Application Component.

*/ id?: string; /** * @public - *

The name of the Application Component.

+ *

Name of the Application Component.

*/ name: string | undefined; /** * @public - *

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

+ *

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

*/ type: string | undefined; @@ -1548,7 +2133,7 @@ export interface CreateAppVersionAppComponentRequest { export interface CreateAppVersionAppComponentResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -1558,13 +2143,13 @@ export interface CreateAppVersionAppComponentResponse { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; /** * @public - *

The list of Application Components that belong to this resource.

+ *

List of Application Components that belong to this resource.

*/ appComponent?: AppComponent; } @@ -1576,7 +2161,8 @@ export interface CreateAppVersionAppComponentResponse { export interface LogicalResourceId { /** * @public - *

The identifier of the resource.

+ *

Identifier + * of the resource.

*/ identifier: string | undefined; @@ -1594,15 +2180,13 @@ export interface LogicalResourceId { /** * @public - *

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

+ *

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

*/ terraformSourceName?: string; /** * @public - *

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

+ *

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

* *

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

*
@@ -1616,7 +2200,7 @@ export interface LogicalResourceId { export interface CreateAppVersionResourceRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -1626,43 +2210,43 @@ export interface CreateAppVersionResourceRequest { /** * @public - *

The name of the resource.

+ *

Name of the resource.

*/ resourceName?: string; /** * @public - *

The logical identifier of the resource.

+ *

Logical identifier of the resource.

*/ logicalResourceId: LogicalResourceId | undefined; /** * @public - *

The physical identifier of the resource.

+ *

Physical identifier of the resource.

*/ physicalResourceId: string | undefined; /** * @public - *

The Amazon Web Services region that owns the physical resource.

+ *

Amazon Web Services region that owns the physical resource.

*/ awsRegion?: string; /** * @public - *

The Amazon Web Services account that owns the physical resource.

+ *

Amazon Web Services account that owns the physical resource.

*/ awsAccountId?: string; /** * @public - *

The type of resource.

+ *

Type of resource.

*/ resourceType: string | undefined; /** * @public - *

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

+ *

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.

*/ appComponents: string[] | undefined; @@ -1697,8 +2281,7 @@ export type ResourceSourceType = (typeof ResourceSourceType)[keyof typeof Resour /** * @public *

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.

+ * account. It can be identified using an Amazon Resource Name (ARN) or an Resilience Hub-native identifier.

*/ export interface PhysicalResource { /** @@ -1709,13 +2292,16 @@ export interface PhysicalResource { /** * @public - *

The logical identifier of the resource.

+ *

Logical + * identifier of the resource.

*/ logicalResourceId: LogicalResourceId | undefined; /** * @public - *

The physical identifier of the resource.

+ *

Identifier + * of the physical + * resource.

*/ physicalResourceId: PhysicalResourceId | undefined; @@ -1752,13 +2338,13 @@ export interface PhysicalResource { /** * @public - *

The type of input source.

+ *

Type of input source.

*/ sourceType?: ResourceSourceType | string; /** * @public - *

The name of the parent resource.

+ *

Name of the parent resource.

*/ parentResourceName?: string; } @@ -1769,7 +2355,7 @@ export interface PhysicalResource { export interface CreateAppVersionResourceResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -1779,7 +2365,7 @@ export interface CreateAppVersionResourceResponse { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; @@ -1867,7 +2453,7 @@ export interface CreateRecommendationTemplateRequest { /** * @public - *

The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

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 @@ -1890,7 +2476,7 @@ export interface CreateRecommendationTemplateRequest { /** * @public - *

The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. + *

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.

*/ tags?: Record; @@ -1950,7 +2536,7 @@ export interface RecommendationTemplate { /** * @public - *

The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

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 @@ -1960,7 +2546,7 @@ export interface RecommendationTemplate { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -1996,7 +2582,7 @@ export interface RecommendationTemplate { /** * @public - *

The format of the recommendation template.

+ *

Format of the recommendation template.

*
*
CfnJson
*
@@ -2012,25 +2598,25 @@ export interface RecommendationTemplate { /** * @public - *

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

+ *

Amazon Resource Name (ARN) for the recommendation template.

*/ recommendationTemplateArn: string | undefined; /** * @public - *

The message for the recommendation template.

+ *

Message for the recommendation template.

*/ message?: string; /** * @public - *

The status of the action.

+ *

Status of the action.

*/ status: RecommendationTemplateStatus | string | undefined; /** * @public - *

The name for the recommendation template.

+ *

Name for the recommendation template.

*/ name: string | undefined; @@ -2048,7 +2634,7 @@ export interface RecommendationTemplate { /** * @public - *

The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. + *

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.

*/ tags?: Record; @@ -2118,7 +2704,7 @@ export interface CreateResiliencyPolicyRequest { /** * @public - *

The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. + *

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.

*/ tags?: Record; @@ -2142,7 +2728,7 @@ export interface CreateResiliencyPolicyResponse { export interface DeleteAppRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2170,7 +2756,7 @@ export interface DeleteAppRequest { export interface DeleteAppResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2185,7 +2771,7 @@ export interface DeleteAppResponse { export interface DeleteAppAssessmentRequest { /** * @public - *

The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

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 @@ -2207,7 +2793,7 @@ export interface DeleteAppAssessmentRequest { export interface DeleteAppAssessmentResponse { /** * @public - *

The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

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 @@ -2228,7 +2814,7 @@ export interface DeleteAppAssessmentResponse { export interface DeleteAppInputSourceRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2272,7 +2858,7 @@ export interface DeleteAppInputSourceRequest { export interface DeleteAppInputSourceResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2282,7 +2868,7 @@ export interface DeleteAppInputSourceResponse { /** * @public - *

The name of the input source from where the application resource is imported from.

+ *

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

*/ appInputSource?: AppInputSource; } @@ -2293,7 +2879,7 @@ export interface DeleteAppInputSourceResponse { export interface DeleteAppVersionAppComponentRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2303,7 +2889,7 @@ export interface DeleteAppVersionAppComponentRequest { /** * @public - *

The identifier of the Application Component.

+ *

Identifier of the Application Component.

*/ id: string | undefined; @@ -2321,7 +2907,7 @@ export interface DeleteAppVersionAppComponentRequest { export interface DeleteAppVersionAppComponentResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2331,13 +2917,13 @@ export interface DeleteAppVersionAppComponentResponse { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; /** * @public - *

The list of Application Components that belong to this resource.

+ *

List of Application Components that belong to this resource.

*/ appComponent?: AppComponent; } @@ -2348,7 +2934,7 @@ export interface DeleteAppVersionAppComponentResponse { export interface DeleteAppVersionResourceRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2358,31 +2944,31 @@ export interface DeleteAppVersionResourceRequest { /** * @public - *

The name of the resource.

+ *

Name of the resource.

*/ resourceName?: string; /** * @public - *

The logical identifier of the resource.

+ *

Logical identifier of the resource.

*/ logicalResourceId?: LogicalResourceId; /** * @public - *

The physical identifier of the resource.

+ *

Physical identifier of the resource.

*/ physicalResourceId?: string; /** * @public - *

The Amazon Web Services region that owns the physical resource.

+ *

Amazon Web Services region that owns the physical resource.

*/ awsRegion?: string; /** * @public - *

The Amazon Web Services account that owns the physical resource.

+ *

Amazon Web Services account that owns the physical resource.

*/ awsAccountId?: string; @@ -2400,7 +2986,7 @@ export interface DeleteAppVersionResourceRequest { export interface DeleteAppVersionResourceResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2410,7 +2996,7 @@ export interface DeleteAppVersionResourceResponse { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; @@ -2451,7 +3037,7 @@ export interface DeleteRecommendationTemplateResponse { /** * @public - *

The status of the action.

+ *

Status of the action.

*/ status: RecommendationTemplateStatus | string | undefined; } @@ -2462,7 +3048,7 @@ export interface DeleteRecommendationTemplateResponse { export interface DeleteResiliencyPolicyRequest { /** * @public - *

The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: + *

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 @@ -2484,7 +3070,7 @@ export interface DeleteResiliencyPolicyRequest { export interface DeleteResiliencyPolicyResponse { /** * @public - *

The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: + *

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 @@ -2499,7 +3085,7 @@ export interface DeleteResiliencyPolicyResponse { export interface DescribeAppRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2526,7 +3112,7 @@ export interface DescribeAppResponse { export interface DescribeAppAssessmentRequest { /** * @public - *

The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

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 @@ -2554,7 +3140,7 @@ export interface DescribeAppAssessmentResponse { export interface DescribeAppVersionRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2564,7 +3150,7 @@ export interface DescribeAppVersionRequest { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; } @@ -2575,7 +3161,7 @@ export interface DescribeAppVersionRequest { export interface DescribeAppVersionResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2585,7 +3171,7 @@ export interface DescribeAppVersionResponse { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; @@ -2605,7 +3191,7 @@ export interface DescribeAppVersionResponse { export interface DescribeAppVersionAppComponentRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2615,13 +3201,13 @@ export interface DescribeAppVersionAppComponentRequest { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; /** * @public - *

The identifier of the Application Component.

+ *

Identifier of the Application Component.

*/ id: string | undefined; } @@ -2632,7 +3218,7 @@ export interface DescribeAppVersionAppComponentRequest { export interface DescribeAppVersionAppComponentResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2642,13 +3228,13 @@ export interface DescribeAppVersionAppComponentResponse { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; /** * @public - *

The list of Application Components that belong to this resource.

+ *

List of Application Components that belong to this resource.

*/ appComponent?: AppComponent; } @@ -2659,7 +3245,7 @@ export interface DescribeAppVersionAppComponentResponse { export interface DescribeAppVersionResourceRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2669,37 +3255,37 @@ export interface DescribeAppVersionResourceRequest { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; /** * @public - *

The name of the resource.

+ *

Name of the resource.

*/ resourceName?: string; /** * @public - *

The logical identifier of the resource.

+ *

Logical identifier of the resource.

*/ logicalResourceId?: LogicalResourceId; /** * @public - *

The physical identifier of the resource.

+ *

Physical identifier of the resource.

*/ physicalResourceId?: string; /** * @public - *

The Amazon Web Services region that owns the physical resource.

+ *

Amazon Web Services region that owns the physical resource.

*/ awsRegion?: string; /** * @public - *

The Amazon Web Services account that owns the physical resource.

+ *

Amazon Web Services account that owns the physical resource.

*/ awsAccountId?: string; } @@ -2710,7 +3296,7 @@ export interface DescribeAppVersionResourceRequest { export interface DescribeAppVersionResourceResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2720,7 +3306,7 @@ export interface DescribeAppVersionResourceResponse { /** * @public - *

The Resilience Hub application version.

+ *

Resilience Hub application version.

*/ appVersion: string | undefined; @@ -2737,7 +3323,7 @@ export interface DescribeAppVersionResourceResponse { export interface DescribeAppVersionResourcesResolutionStatusRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2781,7 +3367,7 @@ export type ResourceResolutionStatusType = export interface DescribeAppVersionResourcesResolutionStatusResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2803,7 +3389,7 @@ export interface DescribeAppVersionResourcesResolutionStatusResponse { /** * @public - *

The status of the action.

+ *

Status of the action.

*/ status: ResourceResolutionStatusType | string | undefined; @@ -2820,7 +3406,7 @@ export interface DescribeAppVersionResourcesResolutionStatusResponse { export interface DescribeAppVersionTemplateRequest { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2841,7 +3427,7 @@ export interface DescribeAppVersionTemplateRequest { export interface DescribeAppVersionTemplateResponse { /** * @public - *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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 @@ -2868,9 +3454,8 @@ export interface DescribeAppVersionTemplateResponse { * resources * *

- *

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

+ *

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.

@@ -2883,7 +3468,7 @@ export interface DescribeAppVersionTemplateResponse { * logicalResourceId * *

- *

The logical identifier of the resource.

+ *

Logical identifier of the resource.

*

Type: Object

*

Each logicalResourceId object includes the following fields:

*
    @@ -2891,7 +3476,7 @@ export interface DescribeAppVersionTemplateResponse { *

    * identifier *

    - *

    The identifier of the resource.

    + *

    Identifier of the resource.

    *

    Type: String

    * *
  • @@ -2919,7 +3504,7 @@ export interface DescribeAppVersionTemplateResponse { *

    * eksSourceName *

    - *

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

    + *

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

    * *

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

    *
    @@ -2966,7 +3551,7 @@ export interface DescribeAppVersionTemplateResponse { * appComponents * *

    - *

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

    + *

    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:

    *
      @@ -2974,14 +3559,14 @@ export interface DescribeAppVersionTemplateResponse { *

      * name *

      - *

      The name of the Application Component.

      + *

      Name of the Application Component.

      *

      Type: String

      * *
    • *

      * type *

      - *

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

      + *

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

      *

      Type: String

      *
    • *
    • @@ -3025,7 +3610,7 @@ export interface DescribeAppVersionTemplateResponse { * logicalResourceIds * *

      - *

      The logical identifier of the resource.

      + *

      Logical identifier of the resource.

      *

      Type: Object

      * *

      You can configure only one of the following fields:

      @@ -3058,7 +3643,7 @@ export interface DescribeAppVersionTemplateResponse { *

      * identifier *

      - *

      The identifier of the resource.

      + *

      Identifier of the resource.

      *

      Type: String

      *
    • *
    • @@ -3086,7 +3671,7 @@ export interface DescribeAppVersionTemplateResponse { *

      * eksSourceName *

      - *

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

      + *

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

      * *

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

      *
      @@ -3102,7 +3687,7 @@ export interface DescribeAppVersionTemplateResponse { * version * *

      - *

      The Resilience Hub application version.

      + *

      Resilience Hub application version.

      *
    • *
    • *

      @@ -3128,7 +3713,7 @@ export interface DescribeAppVersionTemplateResponse { export interface DescribeDraftAppVersionResourcesImportStatusRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3159,7 +3744,7 @@ export type ResourceImportStatusType = (typeof ResourceImportStatusType)[keyof t export interface DescribeDraftAppVersionResourcesImportStatusResponse { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3175,7 +3760,7 @@ export interface DescribeDraftAppVersionResourcesImportStatusResponse { /** * @public - *

      The status of the action.

      + *

      Status of the action.

      */ status: ResourceImportStatusType | string | undefined; @@ -3198,7 +3783,7 @@ export interface DescribeDraftAppVersionResourcesImportStatusResponse { export interface DescribeResiliencyPolicyRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: + *

      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 @@ -3227,7 +3812,7 @@ export interface DescribeResiliencyPolicyResponse { export interface EksSource { /** * @public - *

      The Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: + *

      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 @@ -3262,7 +3847,7 @@ export type ResourceImportStrategyType = (typeof ResourceImportStrategyType)[key export interface ImportResourcesToDraftAppVersionRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3302,7 +3887,7 @@ export interface ImportResourcesToDraftAppVersionRequest { export interface ImportResourcesToDraftAppVersionResponse { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3324,7 +3909,7 @@ export interface ImportResourcesToDraftAppVersionResponse { /** * @public - *

      The status of the action.

      + *

      Status of the action.

      */ status: ResourceImportStatusType | string | undefined; @@ -3349,7 +3934,7 @@ export interface ImportResourcesToDraftAppVersionResponse { export interface ListAlarmRecommendationsRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

      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 @@ -3365,7 +3950,7 @@ export interface ListAlarmRecommendationsRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -3385,7 +3970,160 @@ export interface ListAlarmRecommendationsResponse { /** * @public - *

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

      + *

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

      + */ + nextToken?: string; +} + +/** + * @public + */ +export interface ListAppAssessmentComplianceDriftsRequest { + /** + * @public + *

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

      + */ + assessmentArn: string | undefined; + + /** + * @public + *

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

      + */ + nextToken?: string; + + /** + * @public + *

      Indicates the maximum number of applications requested.

      + */ + maxResults?: number; +} + +/** + * @public + * @enum + */ +export const DifferenceType = { + NOT_EQUAL: "NotEqual", +} as const; + +/** + * @public + */ +export type DifferenceType = (typeof DifferenceType)[keyof typeof DifferenceType]; + +/** + * @public + * @enum + */ +export const DriftType = { + APPLICATION_COMPLIANCE: "ApplicationCompliance", +} as const; + +/** + * @public + */ +export type DriftType = (typeof DriftType)[keyof typeof DriftType]; + +/** + * @public + *

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

      + */ +export interface ComplianceDrift { + /** + * @public + *

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

      + */ + entityId?: string; + + /** + * @public + *

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

      + */ + entityType?: string; + + /** + * @public + *

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

      + */ + driftType?: DriftType | string; + + /** + * @public + *

      Identifier + * of your application.

      + */ + appId?: string; + + /** + * @public + *

      Published version of your application on which drift was detected.

      + */ + appVersion?: string; + + /** + * @public + *

      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.

      + */ + expectedReferenceId?: string; + + /** + * @public + *

      The expected compliance value of an entity.

      + */ + expectedValue?: Record; + + /** + * @public + *

      Assessment identifier that is associated with this drift item.

      + */ + actualReferenceId?: string; + + /** + * @public + *

      Actual + * compliance value of the entity.

      + */ + actualValue?: Record; + + /** + * @public + *

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

      + */ + diffType?: DifferenceType | string; +} + +/** + * @public + */ +export interface ListAppAssessmentComplianceDriftsResponse { + /** + * @public + *

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

      + */ + complianceDrifts: ComplianceDrift[] | undefined; + + /** + * @public + *

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

      */ nextToken?: string; } @@ -3396,7 +4134,7 @@ export interface ListAlarmRecommendationsResponse { export interface ListAppAssessmentsRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3444,7 +4182,7 @@ export interface ListAppAssessmentsRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -3456,7 +4194,7 @@ export interface ListAppAssessmentsRequest { export interface ListAppAssessmentsResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; @@ -3481,14 +4219,14 @@ export interface ListAppComponentCompliancesRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; /** * @public - *

      The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

      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 @@ -3511,7 +4249,7 @@ export interface ListAppComponentCompliancesResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -3522,7 +4260,7 @@ export interface ListAppComponentCompliancesResponse { export interface ListAppComponentRecommendationsRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

      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 @@ -3538,7 +4276,7 @@ export interface ListAppComponentRecommendationsRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -3620,7 +4358,7 @@ export interface RecommendationDisruptionCompliance { /** * @public - *

      Defines a configuration recommendation.

      + *

      Defines a recommendation configuration.

      */ export interface ConfigRecommendation { /** @@ -3631,7 +4369,7 @@ export interface ConfigRecommendation { /** * @public - *

      The name of the Application Component.

      + *

      Name of the Application Component.

      */ appComponentName?: string; @@ -3681,7 +4419,8 @@ export interface ConfigRecommendation { /** * @public - *

      The reference identifier for the recommendation configuration.

      + *

      Reference + * identifier for the recommendation configuration.

      */ referenceId: string | undefined; } @@ -3704,26 +4443,26 @@ export type RecommendationComplianceStatus = /** * @public - *

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

      + *

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

      */ export interface ComponentRecommendation { /** * @public - *

      The name of the Application Component.

      + *

      Name of the Application Component.

      */ appComponentName: string | undefined; /** * @public - *

      The recommendation status.

      + *

      Status of the recommendation.

      */ recommendationStatus: RecommendationComplianceStatus | string | undefined; /** * @public - *

      The list of recommendations.

      + *

      List of recommendations.

      */ configRecommendations: ConfigRecommendation[] | undefined; } @@ -3742,7 +4481,7 @@ export interface ListAppComponentRecommendationsResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -3753,7 +4492,7 @@ export interface ListAppComponentRecommendationsResponse { export interface ListAppInputSourcesRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3763,7 +4502,7 @@ export interface ListAppInputSourcesRequest { /** * @public - *

      The Resilience Hub application version.

      + *

      Resilience Hub application version.

      */ appVersion: string | undefined; @@ -3792,7 +4531,7 @@ export interface ListAppInputSourcesResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -3809,7 +4548,7 @@ export interface ListAppsRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -3822,7 +4561,7 @@ export interface ListAppsRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3843,7 +4582,7 @@ export interface ListAppsResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -3854,7 +4593,7 @@ export interface ListAppsResponse { export interface ListAppVersionAppComponentsRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3864,7 +4603,7 @@ export interface ListAppVersionAppComponentsRequest { /** * @public - *

      The version of the Application Component.

      + *

      Version of the Application Component.

      */ appVersion: string | undefined; @@ -3887,7 +4626,7 @@ export interface ListAppVersionAppComponentsRequest { export interface ListAppVersionAppComponentsResponse { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3897,7 +4636,7 @@ export interface ListAppVersionAppComponentsResponse { /** * @public - *

      The Resilience Hub application version.

      + *

      Resilience Hub application version.

      */ appVersion: string | undefined; @@ -3909,7 +4648,7 @@ export interface ListAppVersionAppComponentsResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -3920,7 +4659,7 @@ export interface ListAppVersionAppComponentsResponse { export interface ListAppVersionResourceMappingsRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -3942,7 +4681,7 @@ export interface ListAppVersionResourceMappingsRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -3964,7 +4703,7 @@ export interface ListAppVersionResourceMappingsResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -3975,7 +4714,7 @@ export interface ListAppVersionResourceMappingsResponse { export interface ListAppVersionResourcesRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -4003,7 +4742,7 @@ export interface ListAppVersionResourcesRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -4027,7 +4766,7 @@ export interface ListAppVersionResourcesResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -4038,7 +4777,7 @@ export interface ListAppVersionResourcesResponse { export interface ListAppVersionsRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -4054,10 +4793,22 @@ export interface ListAppVersionsRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; + + /** + * @public + *

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

      + */ + startTime?: Date; + + /** + * @public + *

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

      + */ + endTime?: Date; } /** @@ -4072,7 +4823,7 @@ export interface ListAppVersionsResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -4083,7 +4834,7 @@ export interface ListAppVersionsResponse { export interface ListRecommendationTemplatesRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

      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 @@ -4100,7 +4851,7 @@ export interface ListRecommendationTemplatesRequest { /** * @public - *

      The status of the action.

      + *

      Status of the action.

      */ status?: (RecommendationTemplateStatus | string)[]; @@ -4124,7 +4875,7 @@ export interface ListRecommendationTemplatesRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -4136,7 +4887,7 @@ export interface ListRecommendationTemplatesRequest { export interface ListRecommendationTemplatesResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; @@ -4165,7 +4916,7 @@ export interface ListResiliencyPoliciesRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -4183,7 +4934,7 @@ export interface ListResiliencyPoliciesResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -4200,14 +4951,14 @@ export interface ListSopRecommendationsRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; /** * @public - *

      The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

      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 @@ -4242,13 +4993,13 @@ export interface SopRecommendation { /** * @public - *

      The name of the Application Component.

      + *

      Name of the Application Component.

      */ appComponentName?: string; /** * @public - *

      The description of the SOP recommendation.

      + *

      Description of the SOP recommendation.

      */ description?: string; @@ -4260,7 +5011,7 @@ export interface SopRecommendation { /** * @public - *

      The name of the SOP recommendation.

      + *

      Name of the SOP recommendation.

      */ name?: string; @@ -4272,13 +5023,14 @@ export interface SopRecommendation { /** * @public - *

      The reference identifier for the SOP recommendation.

      + *

      Reference + * identifier for the SOP recommendation.

      */ referenceId: string | undefined; /** * @public - *

      The prerequisite for the SOP recommendation.

      + *

      Prerequisite for the SOP recommendation.

      */ prerequisite?: string; } @@ -4289,7 +5041,7 @@ export interface SopRecommendation { export interface ListSopRecommendationsResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; @@ -4313,7 +5065,7 @@ export interface ListSuggestedResiliencyPoliciesRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -4331,7 +5083,7 @@ export interface ListSuggestedResiliencyPoliciesResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -4354,7 +5106,7 @@ export interface ListTagsForResourceRequest { export interface ListTagsForResourceResponse { /** * @public - *

      The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. + *

      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.

      */ tags?: Record; @@ -4372,14 +5124,14 @@ export interface ListTestRecommendationsRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; /** * @public - *

      The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: + *

      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 @@ -4432,43 +5184,44 @@ export interface TestRecommendation { /** * @public - *

      The reference identifier for the test recommendation.

      + *

      Reference + * identifier for the test recommendation.

      */ referenceId: string | undefined; /** * @public - *

      The name of the Application Component.

      + *

      Name of the Application Component.

      */ appComponentName?: string; /** * @public - *

      The name of the test recommendation.

      + *

      Name of the test recommendation.

      */ name?: string; /** * @public - *

      The intent of the test recommendation.

      + *

      Intent of the test recommendation.

      */ intent?: string; /** * @public - *

      The level of risk for this test recommendation.

      + *

      Level of risk for this test recommendation.

      */ risk?: TestRisk | string; /** * @public - *

      The type of test recommendation.

      + *

      Type of test recommendation.

      */ type?: TestType | string; /** * @public - *

      The description for the test recommendation.

      + *

      Description for the test recommendation.

      */ description?: string; @@ -4480,15 +5233,14 @@ export interface TestRecommendation { /** * @public - *

      The prerequisite of the test recommendation.

      + *

      Prerequisite of the test recommendation.

      */ prerequisite?: string; /** * @public - *

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

      + *

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

      */ dependsOnAlarms?: string[]; } @@ -4499,7 +5251,7 @@ export interface TestRecommendation { export interface ListTestRecommendationsResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; @@ -4516,7 +5268,7 @@ export interface ListTestRecommendationsResponse { export interface ListUnsupportedAppVersionResourcesRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -4544,7 +5296,7 @@ export interface ListUnsupportedAppVersionResourcesRequest { /** * @public - *

      The maximum number of results to include in the response. If more results exist than the specified + *

      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.

      */ maxResults?: number; @@ -4557,13 +5309,15 @@ export interface ListUnsupportedAppVersionResourcesRequest { export interface UnsupportedResource { /** * @public - *

      The logical resource identifier for the unsupported resource.

      + *

      Logical + * resource identifier for the unsupported resource.

      */ logicalResourceId: LogicalResourceId | undefined; /** * @public - *

      The physical resource identifier for the unsupported resource.

      + *

      Physical + * resource identifier for the unsupported resource.

      */ physicalResourceId: PhysicalResourceId | undefined; @@ -4599,7 +5353,7 @@ export interface ListUnsupportedAppVersionResourcesResponse { /** * @public - *

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

      + *

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

      */ nextToken?: string; } @@ -4610,13 +5364,19 @@ export interface ListUnsupportedAppVersionResourcesResponse { export interface PublishAppVersionRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

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

      */ appArn: string | undefined; + + /** + * @public + *

      Name of the application version.

      + */ + versionName?: string; } /** @@ -4625,7 +5385,7 @@ export interface PublishAppVersionRequest { export interface PublishAppVersionResponse { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -4638,6 +5398,18 @@ export interface PublishAppVersionResponse { *

      The version of the application.

      */ appVersion?: string; + + /** + * @public + *

      Identifier of the application version.

      + */ + identifier?: number; + + /** + * @public + *

      Name of the application version.

      + */ + versionName?: string; } /** @@ -4646,7 +5418,7 @@ export interface PublishAppVersionResponse { export interface PutDraftAppVersionTemplateRequest { /** * @public - *

      The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

      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 @@ -4667,9 +5439,8 @@ export interface PutDraftAppVersionTemplateRequest { * resources * *

      - *

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

      + *

      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.

      @@ -4682,7 +5453,7 @@ export interface PutDraftAppVersionTemplateRequest { * logicalResourceId * *

      - *

      The logical identifier of the resource.

      + *

      Logical identifier of the resource.

      *

      Type: Object

      *

      Each logicalResourceId object includes the following fields:

      *
        @@ -4690,7 +5461,7 @@ export interface PutDraftAppVersionTemplateRequest { *

        * identifier *

        - *

        The identifier of the resource.

        + *

        Identifier of the resource.

        *

        Type: String

        * *
      • @@ -4718,7 +5489,7 @@ export interface PutDraftAppVersionTemplateRequest { *

        * eksSourceName *

        - *

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

        + *

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

        * *

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

        *
        @@ -4765,7 +5536,7 @@ export interface PutDraftAppVersionTemplateRequest { * appComponents * *

        - *

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

        + *

        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:

        *
          @@ -4773,14 +5544,14 @@ export interface PutDraftAppVersionTemplateRequest { *

          * name *

          - *

          The name of the Application Component.

          + *

          Name of the Application Component.

          *

          Type: String

          * *
        • *

          * type *

          - *

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

          + *

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

          *

          Type: String

          *
        • *
        • @@ -4824,7 +5595,7 @@ export interface PutDraftAppVersionTemplateRequest { * logicalResourceIds * *

          - *

          The logical identifier of the resource.

          + *

          Logical identifier of the resource.

          *

          Type: Object

          * *

          You can configure only one of the following fields:

          @@ -4857,7 +5628,7 @@ export interface PutDraftAppVersionTemplateRequest { *

          * identifier *

          - *

          The identifier of the resource.

          + *

          Identifier of the resource.

          *

          Type: String

          *
        • *
        • @@ -4885,7 +5656,7 @@ export interface PutDraftAppVersionTemplateRequest { *

          * eksSourceName *

          - *

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

          + *

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

          * *

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

          *
          @@ -4901,7 +5672,7 @@ export interface PutDraftAppVersionTemplateRequest { * version * *

          - *

          The Resilience Hub application version.

          + *

          Resilience Hub application version.

          *
        • *
        • *

          @@ -4927,7 +5698,7 @@ export interface PutDraftAppVersionTemplateRequest { export interface PutDraftAppVersionTemplateResponse { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -4948,7 +5719,7 @@ export interface PutDraftAppVersionTemplateResponse { export interface RemoveDraftAppVersionResourceMappingsRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5002,7 +5773,7 @@ export interface RemoveDraftAppVersionResourceMappingsRequest { export interface RemoveDraftAppVersionResourceMappingsResponse { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5023,7 +5794,7 @@ export interface RemoveDraftAppVersionResourceMappingsResponse { export interface ResolveAppVersionResourcesRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5044,7 +5815,7 @@ export interface ResolveAppVersionResourcesRequest { export interface ResolveAppVersionResourcesResponse { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5066,7 +5837,7 @@ export interface ResolveAppVersionResourcesResponse { /** * @public - *

          The status of the action.

          + *

          Status of the action.

          */ status: ResourceResolutionStatusType | string | undefined; } @@ -5077,7 +5848,7 @@ export interface ResolveAppVersionResourcesResponse { export interface StartAppAssessmentRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5106,7 +5877,7 @@ export interface StartAppAssessmentRequest { /** * @public - *

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. + *

          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.

          */ tags?: Record; @@ -5129,7 +5900,7 @@ export interface StartAppAssessmentResponse { export interface TagResourceRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the resource.

          + *

          Amazon Resource Name (ARN) of the resource.

          */ resourceArn: string | undefined; @@ -5151,7 +5922,7 @@ export interface TagResourceResponse {} export interface UntagResourceRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the resource.

          + *

          Amazon Resource Name (ARN) of the resource.

          */ resourceArn: string | undefined; @@ -5173,7 +5944,7 @@ export interface UntagResourceResponse {} export interface UpdateAppRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5189,7 +5960,7 @@ export interface UpdateAppRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: + *

          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 @@ -5210,6 +5981,23 @@ export interface UpdateAppRequest { *

          */ assessmentSchedule?: AppAssessmentScheduleType | string; + + /** + * @public + *

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

          + */ + permissionModel?: PermissionModel; + + /** + * @public + *

          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.

          + */ + eventSubscriptions?: EventSubscription[]; } /** @@ -5230,7 +6018,7 @@ export interface UpdateAppResponse { export interface UpdateAppVersionRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5258,7 +6046,7 @@ export interface UpdateAppVersionRequest { export interface UpdateAppVersionResponse { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5268,7 +6056,7 @@ export interface UpdateAppVersionResponse { /** * @public - *

          The Resilience Hub application version.

          + *

          Resilience Hub application version.

          */ appVersion: string | undefined; @@ -5288,7 +6076,7 @@ export interface UpdateAppVersionResponse { export interface UpdateAppVersionAppComponentRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5298,19 +6086,19 @@ export interface UpdateAppVersionAppComponentRequest { /** * @public - *

          The identifier of the Application Component.

          + *

          Identifier of the Application Component.

          */ id: string | undefined; /** * @public - *

          The name of the Application Component.

          + *

          Name of the Application Component.

          */ name?: string; /** * @public - *

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

          + *

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

          */ type?: string; @@ -5327,7 +6115,7 @@ export interface UpdateAppVersionAppComponentRequest { export interface UpdateAppVersionAppComponentResponse { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5337,13 +6125,13 @@ export interface UpdateAppVersionAppComponentResponse { /** * @public - *

          The Resilience Hub application version.

          + *

          Resilience Hub application version.

          */ appVersion: string | undefined; /** * @public - *

          The list of Application Components that belong to this resource.

          + *

          List of Application Components that belong to this resource.

          */ appComponent?: AppComponent; } @@ -5354,7 +6142,7 @@ export interface UpdateAppVersionAppComponentResponse { export interface UpdateAppVersionResourceRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5364,43 +6152,43 @@ export interface UpdateAppVersionResourceRequest { /** * @public - *

          The name of the resource.

          + *

          Name of the resource.

          */ resourceName?: string; /** * @public - *

          The logical identifier of the resource.

          + *

          Logical identifier of the resource.

          */ logicalResourceId?: LogicalResourceId; /** * @public - *

          The physical identifier of the resource.

          + *

          Physical identifier of the resource.

          */ physicalResourceId?: string; /** * @public - *

          The Amazon Web Services region that owns the physical resource.

          + *

          Amazon Web Services region that owns the physical resource.

          */ awsRegion?: string; /** * @public - *

          The Amazon Web Services account that owns the physical resource.

          + *

          Amazon Web Services account that owns the physical resource.

          */ awsAccountId?: string; /** * @public - *

          The type of resource.

          + *

          Type of resource.

          */ resourceType?: string; /** * @public - *

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

          + *

          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.

          */ appComponents?: string[]; @@ -5426,7 +6214,7 @@ export interface UpdateAppVersionResourceRequest { export interface UpdateAppVersionResourceResponse { /** * @public - *

          The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: + *

          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 @@ -5436,7 +6224,7 @@ export interface UpdateAppVersionResourceResponse { /** * @public - *

          The Resilience Hub application version.

          + *

          Resilience Hub application version.

          */ appVersion: string | undefined; @@ -5453,7 +6241,7 @@ export interface UpdateAppVersionResourceResponse { export interface UpdateResiliencyPolicyRequest { /** * @public - *

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: + *

          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 diff --git a/clients/client-resiliencehub/src/pagination/ListAppAssessmentComplianceDriftsPaginator.ts b/clients/client-resiliencehub/src/pagination/ListAppAssessmentComplianceDriftsPaginator.ts new file mode 100644 index 000000000000..96c8ac3ff763 --- /dev/null +++ b/clients/client-resiliencehub/src/pagination/ListAppAssessmentComplianceDriftsPaginator.ts @@ -0,0 +1,50 @@ +// smithy-typescript generated code +import { Paginator } from "@smithy/types"; + +import { + ListAppAssessmentComplianceDriftsCommand, + ListAppAssessmentComplianceDriftsCommandInput, + ListAppAssessmentComplianceDriftsCommandOutput, +} from "../commands/ListAppAssessmentComplianceDriftsCommand"; +import { ResiliencehubClient } from "../ResiliencehubClient"; +import { ResiliencehubPaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: ResiliencehubClient, + input: ListAppAssessmentComplianceDriftsCommandInput, + ...args: any +): Promise => { + // @ts-ignore + return await client.send(new ListAppAssessmentComplianceDriftsCommand(input), ...args); +}; +/** + * @public + */ +export async function* paginateListAppAssessmentComplianceDrifts( + config: ResiliencehubPaginationConfiguration, + input: ListAppAssessmentComplianceDriftsCommandInput, + ...additionalArguments: any +): Paginator { + // ToDo: replace with actual type instead of typeof input.nextToken + let token: typeof input.nextToken | undefined = config.startingToken || undefined; + let hasNext = true; + let page: ListAppAssessmentComplianceDriftsCommandOutput; + while (hasNext) { + input.nextToken = token; + input["maxResults"] = config.pageSize; + if (config.client instanceof ResiliencehubClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected Resiliencehub | ResiliencehubClient"); + } + yield page; + const prevToken = token; + token = page.nextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + // @ts-ignore + return undefined; +} diff --git a/clients/client-resiliencehub/src/pagination/index.ts b/clients/client-resiliencehub/src/pagination/index.ts index cedd3edc2fe0..41dd9a8ca190 100644 --- a/clients/client-resiliencehub/src/pagination/index.ts +++ b/clients/client-resiliencehub/src/pagination/index.ts @@ -1,6 +1,7 @@ // smithy-typescript generated code export * from "./Interfaces"; export * from "./ListAlarmRecommendationsPaginator"; +export * from "./ListAppAssessmentComplianceDriftsPaginator"; export * from "./ListAppAssessmentsPaginator"; export * from "./ListAppComponentCompliancesPaginator"; export * from "./ListAppComponentRecommendationsPaginator"; diff --git a/clients/client-resiliencehub/src/protocols/Aws_restJson1.ts b/clients/client-resiliencehub/src/protocols/Aws_restJson1.ts index 4d534873f509..1a84ccf106d9 100644 --- a/clients/client-resiliencehub/src/protocols/Aws_restJson1.ts +++ b/clients/client-resiliencehub/src/protocols/Aws_restJson1.ts @@ -6,6 +6,7 @@ import { decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, + expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectObject as __expectObject, @@ -29,6 +30,10 @@ import { AddDraftAppVersionResourceMappingsCommandInput, AddDraftAppVersionResourceMappingsCommandOutput, } from "../commands/AddDraftAppVersionResourceMappingsCommand"; +import { + BatchUpdateRecommendationStatusCommandInput, + BatchUpdateRecommendationStatusCommandOutput, +} from "../commands/BatchUpdateRecommendationStatusCommand"; import { CreateAppCommandInput, CreateAppCommandOutput } from "../commands/CreateAppCommand"; import { CreateAppVersionAppComponentCommandInput, @@ -109,6 +114,10 @@ import { ListAlarmRecommendationsCommandInput, ListAlarmRecommendationsCommandOutput, } from "../commands/ListAlarmRecommendationsCommand"; +import { + ListAppAssessmentComplianceDriftsCommandInput, + ListAppAssessmentComplianceDriftsCommandOutput, +} from "../commands/ListAppAssessmentComplianceDriftsCommand"; import { ListAppAssessmentsCommandInput, ListAppAssessmentsCommandOutput } from "../commands/ListAppAssessmentsCommand"; import { ListAppComponentCompliancesCommandInput, @@ -201,6 +210,7 @@ import { AppAssessmentSummary, AppComponentCompliance, AppSummary, + AppVersionSummary, ComponentRecommendation, ConfigRecommendation, ConflictException, @@ -208,9 +218,11 @@ import { DisruptionType, EksSource, EksSourceClusterNamespace, + EventSubscription, FailurePolicy, InternalServerException, LogicalResourceId, + PermissionModel, PhysicalResourceId, RecommendationTemplate, RenderRecommendationType, @@ -221,6 +233,8 @@ import { ServiceQuotaExceededException, TerraformSource, ThrottlingException, + UpdateRecommendationStatusItem, + UpdateRecommendationStatusRequestEntry, ValidationException, } from "../models/models_0"; import { ResiliencehubServiceException as __BaseException } from "../models/ResiliencehubServiceException"; @@ -256,6 +270,37 @@ export const se_AddDraftAppVersionResourceMappingsCommand = async ( }); }; +/** + * serializeAws_restJson1BatchUpdateRecommendationStatusCommand + */ +export const se_BatchUpdateRecommendationStatusCommand = async ( + input: BatchUpdateRecommendationStatusCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + const resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/batch-update-recommendation-status"; + let body: any; + body = JSON.stringify( + take(input, { + appArn: [], + requestEntries: (_) => _json(_), + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1CreateAppCommand */ @@ -274,7 +319,9 @@ export const se_CreateAppCommand = async ( assessmentSchedule: [], clientToken: [true, (_) => _ ?? generateIdempotencyToken()], description: [], + eventSubscriptions: (_) => _json(_), name: [], + permissionModel: (_) => _json(_), policyArn: [], tags: (_) => _json(_), }) @@ -1010,6 +1057,38 @@ export const se_ListAlarmRecommendationsCommand = async ( }); }; +/** + * serializeAws_restJson1ListAppAssessmentComplianceDriftsCommand + */ +export const se_ListAppAssessmentComplianceDriftsCommand = async ( + input: ListAppAssessmentComplianceDriftsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + const resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/list-app-assessment-compliance-drifts"; + let body: any; + body = JSON.stringify( + take(input, { + assessmentArn: [], + maxResults: [], + nextToken: [], + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1ListAppAssessmentsCommand */ @@ -1288,8 +1367,10 @@ export const se_ListAppVersionsCommand = async ( body = JSON.stringify( take(input, { appArn: [], + endTime: (_) => Math.round(_.getTime() / 1000), maxResults: [], nextToken: [], + startTime: (_) => Math.round(_.getTime() / 1000), }) ); return new __HttpRequest({ @@ -1530,6 +1611,7 @@ export const se_PublishAppVersionCommand = async ( body = JSON.stringify( take(input, { appArn: [], + versionName: [], }) ); return new __HttpRequest({ @@ -1754,6 +1836,8 @@ export const se_UpdateAppCommand = async ( assessmentSchedule: [], clearResiliencyPolicyArn: [], description: [], + eventSubscriptions: (_) => _json(_), + permissionModel: (_) => _json(_), policyArn: [], }) ); @@ -1970,6 +2054,67 @@ const de_AddDraftAppVersionResourceMappingsCommandError = async ( } }; +/** + * deserializeAws_restJson1BatchUpdateRecommendationStatusCommand + */ +export const de_BatchUpdateRecommendationStatusCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_BatchUpdateRecommendationStatusCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + appArn: __expectString, + failedEntries: _json, + successfulEntries: _json, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1BatchUpdateRecommendationStatusCommandError + */ +const de_BatchUpdateRecommendationStatusCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.resiliencehub#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.resiliencehub#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.resiliencehub#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.resiliencehub#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.resiliencehub#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1CreateAppCommand */ @@ -3335,6 +3480,9 @@ const de_ImportResourcesToDraftAppVersionCommandError = async ( case "ResourceNotFoundException": case "com.amazonaws.resiliencehub#ResourceNotFoundException": throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.resiliencehub#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.resiliencehub#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); @@ -3411,6 +3559,63 @@ const de_ListAlarmRecommendationsCommandError = async ( } }; +/** + * deserializeAws_restJson1ListAppAssessmentComplianceDriftsCommand + */ +export const de_ListAppAssessmentComplianceDriftsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListAppAssessmentComplianceDriftsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + complianceDrifts: _json, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListAppAssessmentComplianceDriftsCommandError + */ +const de_ListAppAssessmentComplianceDriftsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.resiliencehub#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServerException": + case "com.amazonaws.resiliencehub#InternalServerException": + throw await de_InternalServerExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.resiliencehub#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.resiliencehub#ValidationException": + throw await de_ValidationExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1ListAppAssessmentsCommand */ @@ -3912,7 +4117,7 @@ export const de_ListAppVersionsCommand = async ( }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); const doc = take(data, { - appVersions: _json, + appVersions: (_) => de_AppVersionList(_, context), nextToken: __expectString, }); Object.assign(contents, doc); @@ -4397,6 +4602,8 @@ export const de_PublishAppVersionCommand = async ( const doc = take(data, { appArn: __expectString, appVersion: __expectString, + identifier: __expectLong, + versionName: __expectString, }); Object.assign(contents, doc); return contents; @@ -5285,10 +5492,18 @@ const de_ValidationExceptionRes = async (parsedOutput: any, context: __SerdeCont // se_EntityNameList omitted. +// se_EventSubscription omitted. + +// se_EventSubscriptionList omitted. + // se_FailurePolicy omitted. +// se_IamRoleArnList omitted. + // se_LogicalResourceId omitted. +// se_PermissionModel omitted. + // se_PhysicalResourceId omitted. // se_RecommendationIdList omitted. @@ -5307,6 +5522,12 @@ const de_ValidationExceptionRes = async (parsedOutput: any, context: __SerdeCont // se_TerraformSourceList omitted. +// se_UpdateRecommendationStatusItem omitted. + +// se_UpdateRecommendationStatusRequestEntries omitted. + +// se_UpdateRecommendationStatusRequestEntry omitted. + // de_AdditionalInfoMap omitted. // de_AdditionalInfoValueList omitted. @@ -5327,9 +5548,13 @@ const de_App = (output: any, context: __SerdeContext): App => { complianceStatus: __expectString, creationTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), description: __expectString, + driftStatus: __expectString, + eventSubscriptions: _json, lastAppComplianceEvaluationTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + lastDriftEvaluationTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), lastResiliencyScoreEvaluationTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), name: __expectString, + permissionModel: _json, policyArn: __expectString, resiliencyScore: __limitedParseDouble, status: __expectString, @@ -5350,6 +5575,7 @@ const de_AppAssessment = (output: any, context: __SerdeContext): AppAssessment = compliance: _json, complianceStatus: __expectString, cost: (_: any) => de_Cost(_, context), + driftStatus: __expectString, endTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), invoker: __expectString, message: __expectString, @@ -5358,6 +5584,7 @@ const de_AppAssessment = (output: any, context: __SerdeContext): AppAssessment = resourceErrorsDetails: _json, startTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), tags: _json, + versionName: __expectString, }) as any; }; @@ -5373,11 +5600,13 @@ const de_AppAssessmentSummary = (output: any, context: __SerdeContext): AppAsses assessmentStatus: __expectString, complianceStatus: __expectString, cost: (_: any) => de_Cost(_, context), + driftStatus: __expectString, endTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), invoker: __expectString, message: __expectString, resiliencyScore: __limitedParseDouble, startTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + versionName: __expectString, }) as any; }; @@ -5411,6 +5640,8 @@ const de_AppComponentCompliance = (output: any, context: __SerdeContext): AppCom // de_AppComponentList omitted. +// de_AppComponentNameList omitted. + // de_AppInputSource omitted. // de_AppInputSourceList omitted. @@ -5425,6 +5656,7 @@ const de_AppSummary = (output: any, context: __SerdeContext): AppSummary => { complianceStatus: __expectString, creationTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), description: __expectString, + driftStatus: __expectString, name: __expectString, resiliencyScore: __limitedParseDouble, status: __expectString, @@ -5443,14 +5675,46 @@ const de_AppSummaryList = (output: any, context: __SerdeContext): AppSummary[] = return retVal; }; -// de_AppVersionList omitted. +/** + * deserializeAws_restJson1AppVersionList + */ +const de_AppVersionList = (output: any, context: __SerdeContext): AppVersionSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_AppVersionSummary(entry, context); + }); + return retVal; +}; -// de_AppVersionSummary omitted. +/** + * deserializeAws_restJson1AppVersionSummary + */ +const de_AppVersionSummary = (output: any, context: __SerdeContext): AppVersionSummary => { + return take(output, { + appVersion: __expectString, + creationTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + identifier: __expectLong, + versionName: __expectString, + }) as any; +}; // de_ArnList omitted. // de_AssessmentCompliance omitted. +// de_BatchUpdateRecommendationStatusFailedEntries omitted. + +// de_BatchUpdateRecommendationStatusFailedEntry omitted. + +// de_BatchUpdateRecommendationStatusSuccessfulEntries omitted. + +// de_BatchUpdateRecommendationStatusSuccessfulEntry omitted. + +// de_ComplianceDrift omitted. + +// de_ComplianceDriftList omitted. + /** * deserializeAws_restJson1ComponentCompliancesList */ @@ -5552,10 +5816,18 @@ const de_DisruptionResiliencyScore = (output: any, context: __SerdeContext): Rec // de_EksSourceList omitted. +// de_EventSubscription omitted. + +// de_EventSubscriptionList omitted. + // de_FailurePolicy omitted. +// de_IamRoleArnList omitted. + // de_LogicalResourceId omitted. +// de_PermissionModel omitted. + // de_PhysicalResource omitted. // de_PhysicalResourceId omitted. @@ -5679,6 +5951,8 @@ const de_ResiliencyScore = (output: any, context: __SerdeContext): ResiliencySco // de_UnsupportedResourceList omitted. +// de_UpdateRecommendationStatusItem omitted. + const deserializeMetadata = (output: __HttpResponse): __ResponseMetadata => ({ httpStatusCode: output.statusCode, requestId: diff --git a/codegen/sdk-codegen/aws-models/resiliencehub.json b/codegen/sdk-codegen/aws-models/resiliencehub.json index b0e64ba679b6..4b5ba5670404 100644 --- a/codegen/sdk-codegen/aws-models/resiliencehub.json +++ b/codegen/sdk-codegen/aws-models/resiliencehub.json @@ -43,7 +43,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Adds the resource mapping for the draft application version. You can also update an existing resource mapping to a new physical resource.

          ", + "smithy.api#documentation": "

          Adds the resource mapping for the draft application version. You can also update an\n existing resource mapping to a new physical resource.

          ", "smithy.api#http": { "method": "POST", "uri": "/add-draft-app-version-resource-mappings", @@ -57,7 +57,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -76,7 +76,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -90,7 +90,7 @@ "resourceMappings": { "target": "com.amazonaws.resiliencehub#ResourceMappingList", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } } @@ -123,47 +123,50 @@ "recommendationId": { "target": "com.amazonaws.resiliencehub#Uuid", "traits": { - "smithy.api#documentation": "

          The identifier of the alarm recommendation.

          ", + "smithy.api#documentation": "

          Identifier\n of the alarm recommendation.

          ", "smithy.api#required": {} } }, "referenceId": { "target": "com.amazonaws.resiliencehub#SpecReferenceId", "traits": { - "smithy.api#documentation": "

          The reference identifier of the alarm recommendation.

          ", + "smithy.api#documentation": "

          Reference\n identifier of the alarm recommendation.

          ", "smithy.api#required": {} } }, "name": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The name of the alarm recommendation.

          ", + "smithy.api#documentation": "

          Name of the alarm recommendation.

          ", "smithy.api#required": {} } }, "description": { "target": "com.amazonaws.resiliencehub#EntityDescription", "traits": { - "smithy.api#documentation": "

          The description of the recommendation.

          " + "smithy.api#documentation": "

          Description of the alarm recommendation.

          " } }, "type": { "target": "com.amazonaws.resiliencehub#AlarmType", "traits": { - "smithy.api#documentation": "

          The type of alarm recommendation.

          ", + "smithy.api#documentation": "

          Type of alarm recommendation.

          ", "smithy.api#required": {} } }, "appComponentName": { "target": "com.amazonaws.resiliencehub#EntityId", "traits": { - "smithy.api#documentation": "

          The Application Component for the CloudWatch alarm recommendation.

          " + "smithy.api#deprecated": { + "message": "An alarm recommendation can be attached to multiple Application Components, hence this property will be replaced by the new property 'appComponentNames'." + }, + "smithy.api#documentation": "

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

          " } }, "items": { "target": "com.amazonaws.resiliencehub#RecommendationItemList", "traits": { - "smithy.api#documentation": "

          The list of CloudWatch alarm recommendations.

          " + "smithy.api#documentation": "

          List of CloudWatch alarm recommendations.

          " } }, "prerequisite": { @@ -171,6 +174,12 @@ "traits": { "smithy.api#documentation": "

          The prerequisite for the alarm recommendation.

          " } + }, + "appComponentNames": { + "target": "com.amazonaws.resiliencehub#AppComponentNameList", + "traits": { + "smithy.api#documentation": "

          List of Application Component names for the CloudWatch alarm recommendation.

          " + } } }, "traits": { @@ -228,77 +237,101 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "name": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name for the application.

          ", + "smithy.api#documentation": "

          Name\n for the application.

          ", "smithy.api#required": {} } }, "description": { "target": "com.amazonaws.resiliencehub#EntityDescription", "traits": { - "smithy.api#documentation": "

          The optional description for an app.

          " + "smithy.api#documentation": "

          Optional\n description for an\n application.

          " } }, "policyArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          " + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          " } }, "creationTime": { "target": "com.amazonaws.resiliencehub#TimeStamp", "traits": { - "smithy.api#documentation": "

          The timestamp for when the app was created.

          ", + "smithy.api#documentation": "

          Timestamp\n for when the app was created.

          ", "smithy.api#required": {} } }, "status": { "target": "com.amazonaws.resiliencehub#AppStatusType", "traits": { - "smithy.api#documentation": "

          The status of the application.

          " + "smithy.api#documentation": "

          Status of the application.

          " } }, "complianceStatus": { "target": "com.amazonaws.resiliencehub#AppComplianceStatusType", "traits": { - "smithy.api#documentation": "

          The current status of compliance for the resiliency policy.

          " + "smithy.api#documentation": "

          Current\n status of compliance for the resiliency policy.

          " } }, "lastAppComplianceEvaluationTime": { "target": "com.amazonaws.resiliencehub#TimeStamp", "traits": { - "smithy.api#documentation": "

          The timestamp for the most recent compliance evaluation.

          " + "smithy.api#documentation": "

          Timestamp\n for the most recent compliance evaluation.

          " } }, "resiliencyScore": { "target": "com.amazonaws.resiliencehub#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

          The current resiliency score for the application.

          " + "smithy.api#documentation": "

          Current\n resiliency score for the application.

          " } }, "lastResiliencyScoreEvaluationTime": { "target": "com.amazonaws.resiliencehub#TimeStamp", "traits": { - "smithy.api#documentation": "

          The timestamp for the most recent resiliency score evaluation.

          " + "smithy.api#documentation": "

          Timestamp\n for the most recent resiliency score evaluation.

          " } }, "tags": { "target": "com.amazonaws.resiliencehub#TagMap", "traits": { - "smithy.api#documentation": "

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. \nEach tag consists of a key/value pair.

          " + "smithy.api#documentation": "

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

          " } }, "assessmentSchedule": { "target": "com.amazonaws.resiliencehub#AppAssessmentScheduleType", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " + } + }, + "permissionModel": { + "target": "com.amazonaws.resiliencehub#PermissionModel", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "eventSubscriptions": { + "target": "com.amazonaws.resiliencehub#EventSubscriptionList", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "driftStatus": { + "target": "com.amazonaws.resiliencehub#AppDriftStatusType", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "lastDriftEvaluationTime": { + "target": "com.amazonaws.resiliencehub#TimeStamp", + "traits": { + "smithy.api#documentation": "

          Indicates the last time\n that\n a drift was evaluated.

          " } } }, @@ -312,13 +345,13 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The version of the application.

          " + "smithy.api#documentation": "

          Version of an application.

          " } }, "invoker": { @@ -331,44 +364,44 @@ "cost": { "target": "com.amazonaws.resiliencehub#Cost", "traits": { - "smithy.api#documentation": "

          The cost for the application.

          " + "smithy.api#documentation": "

          Cost for the application.

          " } }, "resiliencyScore": { "target": "com.amazonaws.resiliencehub#ResiliencyScore", "traits": { - "smithy.api#documentation": "

          The current resiliency score for the application.

          " + "smithy.api#documentation": "

          Current resiliency score for an application.

          " } }, "compliance": { "target": "com.amazonaws.resiliencehub#AssessmentCompliance", "traits": { - "smithy.api#documentation": "

          The application compliance against the resiliency policy.

          " + "smithy.api#documentation": "

          Application\n compliance against the resiliency policy.

          " } }, "complianceStatus": { "target": "com.amazonaws.resiliencehub#ComplianceStatus", "traits": { - "smithy.api#documentation": "

          The current status of the compliance for the resiliency policy.

          " + "smithy.api#documentation": "

          Current status of the compliance for the resiliency policy.

          " } }, "assessmentStatus": { "target": "com.amazonaws.resiliencehub#AssessmentStatus", "traits": { - "smithy.api#documentation": "

          The current status of the assessment for the resiliency policy.

          ", + "smithy.api#documentation": "

          Current status of the assessment for the resiliency policy.

          ", "smithy.api#required": {} } }, "startTime": { "target": "com.amazonaws.resiliencehub#TimeStamp", "traits": { - "smithy.api#documentation": "

          The starting time for the action.

          " + "smithy.api#documentation": "

          Starting time for the action.

          " } }, "endTime": { "target": "com.amazonaws.resiliencehub#TimeStamp", "traits": { - "smithy.api#documentation": "

          The end time for the action.

          " + "smithy.api#documentation": "

          End time for the action.

          " } }, "message": { @@ -380,32 +413,44 @@ "assessmentName": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name of the assessment.

          " + "smithy.api#documentation": "

          Name of the assessment.

          " } }, "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, "policy": { "target": "com.amazonaws.resiliencehub#ResiliencyPolicy", "traits": { - "smithy.api#documentation": "

          The resiliency policy.

          " + "smithy.api#documentation": "

          Resiliency policy of an application.

          " } }, "tags": { "target": "com.amazonaws.resiliencehub#TagMap", "traits": { - "smithy.api#documentation": "

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. \nEach tag consists of a key/value pair.

          " + "smithy.api#documentation": "

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

          " } }, "resourceErrorsDetails": { "target": "com.amazonaws.resiliencehub#ResourceErrorsDetails", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " + } + }, + "versionName": { + "target": "com.amazonaws.resiliencehub#EntityVersion", + "traits": { + "smithy.api#documentation": "

          Version name of the published application.

          " + } + }, + "driftStatus": { + "target": "com.amazonaws.resiliencehub#DriftStatus", + "traits": { + "smithy.api#documentation": "

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

          " } } }, @@ -434,76 +479,88 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The version of the application.

          " + "smithy.api#documentation": "

          Version of an application.

          " } }, "assessmentStatus": { "target": "com.amazonaws.resiliencehub#AssessmentStatus", "traits": { - "smithy.api#documentation": "

          The current status of the assessment for the resiliency policy.

          ", + "smithy.api#documentation": "

          Current status of the assessment for the resiliency policy.

          ", "smithy.api#required": {} } }, "invoker": { "target": "com.amazonaws.resiliencehub#AssessmentInvoker", "traits": { - "smithy.api#documentation": "

          The entity that invoked the assessment.

          " + "smithy.api#documentation": "

          Entity that invoked the assessment.

          " } }, "startTime": { "target": "com.amazonaws.resiliencehub#TimeStamp", "traits": { - "smithy.api#documentation": "

          The starting time for the action.

          " + "smithy.api#documentation": "

          Starting time for the action.

          " } }, "endTime": { "target": "com.amazonaws.resiliencehub#TimeStamp", "traits": { - "smithy.api#documentation": "

          The end time for the action.

          " + "smithy.api#documentation": "

          End time for the action.

          " } }, "message": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The message from the assessment run.

          " + "smithy.api#documentation": "

          Message from the assessment run.

          " } }, "assessmentName": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name of the assessment.

          " + "smithy.api#documentation": "

          Name of the assessment.

          " } }, "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, "complianceStatus": { "target": "com.amazonaws.resiliencehub#ComplianceStatus", "traits": { - "smithy.api#documentation": "

          The current status of compliance for the resiliency policy.

          " + "smithy.api#documentation": "

          TCurrent status of compliance for the resiliency policy.

          " } }, "cost": { "target": "com.amazonaws.resiliencehub#Cost", "traits": { - "smithy.api#documentation": "

          The cost for the application.

          " + "smithy.api#documentation": "

          Cost for an application.

          " } }, "resiliencyScore": { "target": "com.amazonaws.resiliencehub#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

          The current resiliency score for the application.

          " + "smithy.api#documentation": "

          Current resiliency score for the application.

          " + } + }, + "versionName": { + "target": "com.amazonaws.resiliencehub#EntityVersion", + "traits": { + "smithy.api#documentation": "

          Name of an application version.

          " + } + }, + "driftStatus": { + "target": "com.amazonaws.resiliencehub#DriftStatus", + "traits": { + "smithy.api#documentation": "

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

          " } } }, @@ -546,7 +603,7 @@ "name": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The name of the Application Component.

          ", + "smithy.api#documentation": "

          Name of the Application Component.

          ", "smithy.api#required": {} } }, @@ -560,7 +617,7 @@ "id": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          Unique identifier of the Application Component.

          " + "smithy.api#documentation": "

          Identifier\n of the Application Component.

          " } }, "additionalInfo": { @@ -586,7 +643,7 @@ "appComponentName": { "target": "com.amazonaws.resiliencehub#EntityId", "traits": { - "smithy.api#documentation": "

          The name of the Application Component.

          " + "smithy.api#documentation": "

          Name of the Application Component.

          " } }, "compliance": { @@ -604,7 +661,7 @@ "status": { "target": "com.amazonaws.resiliencehub#ComplianceStatus", "traits": { - "smithy.api#documentation": "

          The status of the action.

          " + "smithy.api#documentation": "

          Status of the action.

          " } }, "resiliencyScore": { @@ -630,6 +687,25 @@ "target": "com.amazonaws.resiliencehub#String255" } }, + "com.amazonaws.resiliencehub#AppDriftStatusType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "NotChecked", + "name": "NOT_CHECKED" + }, + { + "value": "NotDetected", + "name": "NOT_DETECTED" + }, + { + "value": "Detected", + "name": "DETECTED" + } + ] + } + }, "com.amazonaws.resiliencehub#AppInputSource": { "type": "structure", "members": { @@ -703,7 +779,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -743,13 +819,19 @@ "assessmentSchedule": { "target": "com.amazonaws.resiliencehub#AppAssessmentScheduleType", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "status": { "target": "com.amazonaws.resiliencehub#AppStatusType", "traits": { - "smithy.api#documentation": "

          The status of the application.

          " + "smithy.api#documentation": "

          Status of the application.

          " + } + }, + "driftStatus": { + "target": "com.amazonaws.resiliencehub#AppDriftStatusType", + "traits": { + "smithy.api#documentation": "

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

          " } } }, @@ -785,13 +867,31 @@ "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The version of the application.

          ", + "smithy.api#documentation": "

          Version of an application.

          ", "smithy.api#required": {} } + }, + "identifier": { + "target": "com.amazonaws.resiliencehub#LongOptional", + "traits": { + "smithy.api#documentation": "

          Identifier of the application version.

          " + } + }, + "creationTime": { + "target": "com.amazonaws.resiliencehub#TimeStamp", + "traits": { + "smithy.api#documentation": "

          Creation time of the application version.

          " + } + }, + "versionName": { + "target": "com.amazonaws.resiliencehub#EntityVersion", + "traits": { + "smithy.api#documentation": "

          Name of the application version.

          " + } } }, "traits": { - "smithy.api#documentation": "

          The version of the application.

          " + "smithy.api#documentation": "

          Version of an application.

          " } }, "com.amazonaws.resiliencehub#Arn": { @@ -878,6 +978,9 @@ { "target": "com.amazonaws.resiliencehub#AddDraftAppVersionResourceMappings" }, + { + "target": "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatus" + }, { "target": "com.amazonaws.resiliencehub#CreateApp" }, @@ -947,6 +1050,9 @@ { "target": "com.amazonaws.resiliencehub#ListAlarmRecommendations" }, + { + "target": "com.amazonaws.resiliencehub#ListAppAssessmentComplianceDrifts" + }, { "target": "com.amazonaws.resiliencehub#ListAppAssessments" }, @@ -1963,6 +2069,167 @@ } } }, + "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusRequest" + }, + "output": { + "target": "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusResponse" + }, + "errors": [ + { + "target": "com.amazonaws.resiliencehub#AccessDeniedException" + }, + { + "target": "com.amazonaws.resiliencehub#InternalServerException" + }, + { + "target": "com.amazonaws.resiliencehub#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.resiliencehub#ThrottlingException" + }, + { + "target": "com.amazonaws.resiliencehub#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#http": { + "method": "POST", + "uri": "/batch-update-recommendation-status", + "code": 200 + } + } + }, + "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusFailedEntries": { + "type": "list", + "member": { + "target": "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusFailedEntry" + } + }, + "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusFailedEntry": { + "type": "structure", + "members": { + "entryId": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

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

          \n \n

          The entryIds of a batch request need to be unique within a request.

          \n
          ", + "smithy.api#required": {} + } + }, + "errorMessage": { + "target": "com.amazonaws.resiliencehub#ErrorMessage", + "traits": { + "smithy.api#documentation": "

          Indicates the error that occurred while excluding an operational recommendation.

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusRequest": { + "type": "structure", + "members": { + "appArn": { + "target": "com.amazonaws.resiliencehub#Arn", + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#required": {} + } + }, + "requestEntries": { + "target": "com.amazonaws.resiliencehub#UpdateRecommendationStatusRequestEntries", + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusResponse": { + "type": "structure", + "members": { + "appArn": { + "target": "com.amazonaws.resiliencehub#Arn", + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#required": {} + } + }, + "successfulEntries": { + "target": "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusSuccessfulEntries", + "traits": { + "smithy.api#documentation": "

          A list of items that were included or excluded.

          ", + "smithy.api#required": {} + } + }, + "failedEntries": { + "target": "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusFailedEntries", + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusSuccessfulEntries": { + "type": "list", + "member": { + "target": "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusSuccessfulEntry" + } + }, + "com.amazonaws.resiliencehub#BatchUpdateRecommendationStatusSuccessfulEntry": { + "type": "structure", + "members": { + "entryId": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

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

          \n \n

          The entryIds of a batch request need to be unique within a request.

          \n
          ", + "smithy.api#required": {} + } + }, + "referenceId": { + "target": "com.amazonaws.resiliencehub#SpecReferenceId", + "traits": { + "smithy.api#documentation": "

          Reference identifier of the operational recommendation.

          ", + "smithy.api#required": {} + } + }, + "item": { + "target": "com.amazonaws.resiliencehub#UpdateRecommendationStatusItem", + "traits": { + "smithy.api#documentation": "

          The operational recommendation item.

          ", + "smithy.api#required": {} + } + }, + "excluded": { + "target": "com.amazonaws.resiliencehub#BooleanOptional", + "traits": { + "smithy.api#documentation": "

          Indicates\n if\n the operational recommendation was successfully excluded.

          ", + "smithy.api#required": {} + } + }, + "excludeReason": { + "target": "com.amazonaws.resiliencehub#ExcludeRecommendationReason", + "traits": { + "smithy.api#documentation": "

          Indicates the reason for excluding an operational recommendation.

          " + } + } + }, + "traits": { + "smithy.api#documentation": "

          List\n of operational recommendations that were successfully included or excluded.

          " + } + }, "com.amazonaws.resiliencehub#BooleanOptional": { "type": "boolean" }, @@ -1976,6 +2243,80 @@ "smithy.api#pattern": "^[A-za-z0-9_.-]{0,63}$" } }, + "com.amazonaws.resiliencehub#ComplianceDrift": { + "type": "structure", + "members": { + "entityId": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "entityType": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "driftType": { + "target": "com.amazonaws.resiliencehub#DriftType", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "appId": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

          Identifier\n of your application.

          " + } + }, + "appVersion": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

          Published version of your application on which drift was detected.

          " + } + }, + "expectedReferenceId": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "expectedValue": { + "target": "com.amazonaws.resiliencehub#AssessmentCompliance", + "traits": { + "smithy.api#documentation": "

          The expected compliance value of an entity.

          " + } + }, + "actualReferenceId": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

          Assessment identifier that is associated with this drift item.

          " + } + }, + "actualValue": { + "target": "com.amazonaws.resiliencehub#AssessmentCompliance", + "traits": { + "smithy.api#documentation": "

          Actual\n compliance value of the entity.

          " + } + }, + "diffType": { + "target": "com.amazonaws.resiliencehub#DifferenceType", + "traits": { + "smithy.api#documentation": "

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

          " + } + } + }, + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "com.amazonaws.resiliencehub#ComplianceDriftList": { + "type": "list", + "member": { + "target": "com.amazonaws.resiliencehub#ComplianceDrift" + } + }, "com.amazonaws.resiliencehub#ComplianceStatus": { "type": "string", "traits": { @@ -2003,27 +2344,27 @@ "appComponentName": { "target": "com.amazonaws.resiliencehub#EntityId", "traits": { - "smithy.api#documentation": "

          The name of the Application Component.

          ", + "smithy.api#documentation": "

          Name of the Application Component.

          ", "smithy.api#required": {} } }, "recommendationStatus": { "target": "com.amazonaws.resiliencehub#RecommendationComplianceStatus", "traits": { - "smithy.api#documentation": "

          The recommendation status.

          ", + "smithy.api#documentation": "

          Status of the recommendation.

          ", "smithy.api#required": {} } }, "configRecommendations": { "target": "com.amazonaws.resiliencehub#ConfigRecommendationList", "traits": { - "smithy.api#documentation": "

          The list of recommendations.

          ", + "smithy.api#documentation": "

          List of recommendations.

          ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "com.amazonaws.resiliencehub#ComponentRecommendationList": { @@ -2044,7 +2385,7 @@ "appComponentName": { "target": "com.amazonaws.resiliencehub#EntityId", "traits": { - "smithy.api#documentation": "

          The name of the Application Component.

          " + "smithy.api#documentation": "

          Name of the Application Component.

          " } }, "compliance": { @@ -2094,13 +2435,13 @@ "referenceId": { "target": "com.amazonaws.resiliencehub#SpecReferenceId", "traits": { - "smithy.api#documentation": "

          The reference identifier for the recommendation configuration.

          ", + "smithy.api#documentation": "

          Reference\n identifier for the recommendation configuration.

          ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

          Defines a configuration recommendation.

          " + "smithy.api#documentation": "

          Defines a recommendation configuration.

          " } }, "com.amazonaws.resiliencehub#ConfigRecommendationList": { @@ -2250,7 +2591,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Creates an Resilience Hub application. An Resilience Hub application is a\n collection of Amazon Web Services resources structured to prevent and recover Amazon Web Services application disruptions. To describe an Resilience Hub application, you provide an\n application name, resources from one or more CloudFormation stacks, Resource Groups,\n Terraform state files, AppRegistry applications, and an appropriate resiliency policy. For\n more information about the number of resources supported per application, see Service Quotas.

          \n

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

          ", + "smithy.api#documentation": "

          Creates an Resilience Hub application. An Resilience Hub application is a\n 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\n application name, resources from one or more CloudFormation stacks, Resource Groups, Terraform state files, AppRegistry applications, and an appropriate\n 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\n about the number of resources supported per application, see Service\n quotas.

          \n

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

          ", "smithy.api#http": { "method": "POST", "uri": "/create-app", @@ -2264,7 +2605,7 @@ "name": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name for the application.

          ", + "smithy.api#documentation": "

          Name of the application.

          ", "smithy.api#required": {} } }, @@ -2277,13 +2618,13 @@ "policyArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          " + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          " } }, "tags": { "target": "com.amazonaws.resiliencehub#TagMap", "traits": { - "smithy.api#documentation": "

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. \nEach tag consists of a key/value pair.

          " + "smithy.api#documentation": "

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

          " } }, "clientToken": { @@ -2298,6 +2639,18 @@ "traits": { "smithy.api#documentation": "

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

          " } + }, + "permissionModel": { + "target": "com.amazonaws.resiliencehub#PermissionModel", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "eventSubscriptions": { + "target": "com.amazonaws.resiliencehub#EventSubscriptionList", + "traits": { + "smithy.api#documentation": "

          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.

          " + } } } }, @@ -2359,27 +2712,27 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "id": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The identifier of the Application Component.

          " + "smithy.api#documentation": "

          Identifier of the Application Component.

          " } }, "name": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The name of the Application Component.

          ", + "smithy.api#documentation": "

          Name of the Application Component.

          ", "smithy.api#required": {} } }, "type": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -2404,21 +2757,21 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, "appComponent": { "target": "com.amazonaws.resiliencehub#AppComponent", "traits": { - "smithy.api#documentation": "

          The list of Application Components that belong to this resource.

          " + "smithy.api#documentation": "

          List of Application Components that belong to this resource.

          " } } } @@ -2469,53 +2822,53 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "resourceName": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name of the resource.

          " + "smithy.api#documentation": "

          Name of the resource.

          " } }, "logicalResourceId": { "target": "com.amazonaws.resiliencehub#LogicalResourceId", "traits": { - "smithy.api#documentation": "

          The logical identifier of the resource.

          ", + "smithy.api#documentation": "

          Logical identifier of the resource.

          ", "smithy.api#required": {} } }, "physicalResourceId": { "target": "com.amazonaws.resiliencehub#String2048", "traits": { - "smithy.api#documentation": "

          The physical identifier of the resource.

          ", + "smithy.api#documentation": "

          Physical identifier of the resource.

          ", "smithy.api#required": {} } }, "awsRegion": { "target": "com.amazonaws.resiliencehub#AwsRegion", "traits": { - "smithy.api#documentation": "

          The Amazon Web Services region that owns the physical resource.

          " + "smithy.api#documentation": "

          Amazon Web Services region that owns the physical resource.

          " } }, "awsAccountId": { "target": "com.amazonaws.resiliencehub#CustomerId", "traits": { - "smithy.api#documentation": "

          The Amazon Web Services account that owns the physical resource.

          " + "smithy.api#documentation": "

          Amazon Web Services account that owns the physical resource.

          " } }, "resourceType": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The type of resource.

          ", + "smithy.api#documentation": "

          Type of resource.

          ", "smithy.api#required": {} } }, "appComponents": { "target": "com.amazonaws.resiliencehub#AppComponentNameList", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

          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.

          ", "smithy.api#required": {} } }, @@ -2540,14 +2893,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, @@ -2623,7 +2976,7 @@ "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, @@ -2644,7 +2997,7 @@ "tags": { "target": "com.amazonaws.resiliencehub#TagMap", "traits": { - "smithy.api#documentation": "

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. \nEach tag consists of a key/value pair.

          " + "smithy.api#documentation": "

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

          " } }, "bucketName": { @@ -2749,7 +3102,7 @@ "tags": { "target": "com.amazonaws.resiliencehub#TagMap", "traits": { - "smithy.api#documentation": "

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. \nEach tag consists of a key/value pair.

          " + "smithy.api#documentation": "

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

          " } } } @@ -2877,7 +3230,7 @@ "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, @@ -2896,7 +3249,7 @@ "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, @@ -2952,7 +3305,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -2989,13 +3342,13 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "appInputSource": { "target": "com.amazonaws.resiliencehub#AppInputSource", "traits": { - "smithy.api#documentation": "

          The name of the input source from where the application resource is imported from.

          " + "smithy.api#documentation": "

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

          " } } } @@ -3006,7 +3359,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -3031,7 +3384,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } } @@ -3080,14 +3433,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "id": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The identifier of the Application Component.

          ", + "smithy.api#documentation": "

          Identifier of the Application Component.

          ", "smithy.api#required": {} } }, @@ -3106,21 +3459,21 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, "appComponent": { "target": "com.amazonaws.resiliencehub#AppComponent", "traits": { - "smithy.api#documentation": "

          The list of Application Components that belong to this resource.

          " + "smithy.api#documentation": "

          List of Application Components that belong to this resource.

          " } } } @@ -3168,38 +3521,38 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "resourceName": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name of the resource.

          " + "smithy.api#documentation": "

          Name of the resource.

          " } }, "logicalResourceId": { "target": "com.amazonaws.resiliencehub#LogicalResourceId", "traits": { - "smithy.api#documentation": "

          The logical identifier of the resource.

          " + "smithy.api#documentation": "

          Logical identifier of the resource.

          " } }, "physicalResourceId": { "target": "com.amazonaws.resiliencehub#String2048", "traits": { - "smithy.api#documentation": "

          The physical identifier of the resource.

          " + "smithy.api#documentation": "

          Physical identifier of the resource.

          " } }, "awsRegion": { "target": "com.amazonaws.resiliencehub#AwsRegion", "traits": { - "smithy.api#documentation": "

          The Amazon Web Services region that owns the physical resource.

          " + "smithy.api#documentation": "

          Amazon Web Services region that owns the physical resource.

          " } }, "awsAccountId": { "target": "com.amazonaws.resiliencehub#CustomerId", "traits": { - "smithy.api#documentation": "

          The Amazon Web Services account that owns the physical resource.

          " + "smithy.api#documentation": "

          Amazon Web Services account that owns the physical resource.

          " } }, "clientToken": { @@ -3217,14 +3570,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, @@ -3302,7 +3655,7 @@ "status": { "target": "com.amazonaws.resiliencehub#RecommendationTemplateStatus", "traits": { - "smithy.api#documentation": "

          The status of the action.

          ", + "smithy.api#documentation": "

          Status of the action.

          ", "smithy.api#required": {} } } @@ -3351,7 +3704,7 @@ "policyArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, @@ -3370,7 +3723,7 @@ "policyArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } } @@ -3450,7 +3803,7 @@ "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } } @@ -3474,7 +3827,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } } @@ -3569,21 +3922,21 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, "id": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The identifier of the Application Component.

          ", + "smithy.api#documentation": "

          Identifier of the Application Component.

          ", "smithy.api#required": {} } } @@ -3595,21 +3948,21 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, "appComponent": { "target": "com.amazonaws.resiliencehub#AppComponent", "traits": { - "smithy.api#documentation": "

          The list of Application Components that belong to this resource.

          " + "smithy.api#documentation": "

          List of Application Components that belong to this resource.

          " } } } @@ -3620,14 +3973,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } } @@ -3676,45 +4029,45 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, "resourceName": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name of the resource.

          " + "smithy.api#documentation": "

          Name of the resource.

          " } }, "logicalResourceId": { "target": "com.amazonaws.resiliencehub#LogicalResourceId", "traits": { - "smithy.api#documentation": "

          The logical identifier of the resource.

          " + "smithy.api#documentation": "

          Logical identifier of the resource.

          " } }, "physicalResourceId": { "target": "com.amazonaws.resiliencehub#String2048", "traits": { - "smithy.api#documentation": "

          The physical identifier of the resource.

          " + "smithy.api#documentation": "

          Physical identifier of the resource.

          " } }, "awsRegion": { "target": "com.amazonaws.resiliencehub#AwsRegion", "traits": { - "smithy.api#documentation": "

          The Amazon Web Services region that owns the physical resource.

          " + "smithy.api#documentation": "

          Amazon Web Services region that owns the physical resource.

          " } }, "awsAccountId": { "target": "com.amazonaws.resiliencehub#CustomerId", "traits": { - "smithy.api#documentation": "

          The Amazon Web Services account that owns the physical resource.

          " + "smithy.api#documentation": "

          Amazon Web Services account that owns the physical resource.

          " } } } @@ -3725,14 +4078,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, @@ -3784,7 +4137,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -3809,7 +4162,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -3830,7 +4183,7 @@ "status": { "target": "com.amazonaws.resiliencehub#ResourceResolutionStatusType", "traits": { - "smithy.api#documentation": "

          The status of the action.

          ", + "smithy.api#documentation": "

          Status of the action.

          ", "smithy.api#required": {} } }, @@ -3848,14 +4201,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, @@ -3907,7 +4260,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -3926,7 +4279,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -3940,7 +4293,7 @@ "appTemplateBody": { "target": "com.amazonaws.resiliencehub#AppTemplateBody", "traits": { - "smithy.api#documentation": "

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

          \n

          The appTemplateBody JSON string has the following structure:

          \n
            \n
          • \n

            \n \n resources\n \n

            \n

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

            \n

            Type: Array

            \n \n

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

            \n
            \n

            Each resources array item includes the following fields:

            \n
              \n
            • \n

              \n \n logicalResourceId\n \n

              \n

              The logical identifier of the resource.

              \n

              Type: Object

              \n

              Each logicalResourceId object includes the following fields:

              \n
                \n
              • \n

                \n identifier\n

                \n

                The identifier of the resource.

                \n

                Type: String

                \n
              • \n
              • \n

                \n logicalStackName\n

                \n

                The name of the CloudFormation stack this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n

                The name of the resource group this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n

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

                \n

                Type: String

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n

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

                \n \n

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

                \n
                \n

                Type: String

                \n
              • \n
              \n
            • \n
            • \n

              \n \n type\n \n

              \n

              The type of resource.

              \n

              Type: string

              \n
            • \n
            • \n

              \n \n name\n \n

              \n

              The name of the resource.

              \n

              Type: String

              \n
            • \n
            • \n

              \n additionalInfo\n

              \n

              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.

              \n \n

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

              \n

              Key: \"failover-regions\"\n

              \n

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

              \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n appComponents\n \n

            \n

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

            \n

            Type: Array

            \n

            Each appComponents array item includes the following fields:

            \n
              \n
            • \n

              \n name\n

              \n

              The name of the Application Component.

              \n

              Type: String

              \n
            • \n
            • \n

              \n type\n

              \n

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

              \n

              Type: String

              \n
            • \n
            • \n

              \n resourceNames\n

              \n

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

              \n

              Type: Array of strings

              \n
            • \n
            • \n

              \n additionalInfo\n

              \n

              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.

              \n \n

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

              \n

              Key: \"failover-regions\"\n

              \n

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

              \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n excludedResources\n \n

            \n

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

            \n

            Type: Array

            \n \n

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

            \n
            \n

            Each excludedResources array item includes the following fields:

            \n
              \n
            • \n

              \n \n logicalResourceIds\n \n

              \n

              The logical identifier of the resource.

              \n

              Type: Object

              \n \n

              You can configure only one of the following fields:

              \n
                \n
              • \n

                \n logicalStackName\n

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n
              • \n
              \n
              \n

              Each logicalResourceIds object includes the following fields:

              \n
                \n
              • \n

                \n identifier\n

                \n

                The identifier of the resource.

                \n

                Type: String

                \n
              • \n
              • \n

                \n logicalStackName\n

                \n

                The name of the CloudFormation stack this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n

                The name of the resource group this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n

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

                \n

                Type: String

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n

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

                \n \n

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

                \n
                \n

                Type: String

                \n
              • \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n version\n \n

            \n

            The Resilience Hub application version.

            \n
          • \n
          • \n

            \n additionalInfo\n

            \n

            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.

            \n \n

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

            \n

            Key: \"failover-regions\"\n

            \n

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

            \n
            \n
          • \n
          ", + "smithy.api#documentation": "

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

          \n

          The appTemplateBody JSON string has the following structure:

          \n
            \n
          • \n

            \n \n resources\n \n

            \n

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

            \n

            Type: Array

            \n \n

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

            \n
            \n

            Each resources array item includes the following fields:

            \n
              \n
            • \n

              \n \n logicalResourceId\n \n

              \n

              Logical identifier of the resource.

              \n

              Type: Object

              \n

              Each logicalResourceId object includes the following fields:

              \n
                \n
              • \n

                \n identifier\n

                \n

                Identifier of the resource.

                \n

                Type: String

                \n
              • \n
              • \n

                \n logicalStackName\n

                \n

                The name of the CloudFormation stack this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n

                The name of the resource group this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n

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

                \n

                Type: String

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n

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

                \n \n

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

                \n
                \n

                Type: String

                \n
              • \n
              \n
            • \n
            • \n

              \n \n type\n \n

              \n

              The type of resource.

              \n

              Type: string

              \n
            • \n
            • \n

              \n \n name\n \n

              \n

              The name of the resource.

              \n

              Type: String

              \n
            • \n
            • \n

              \n additionalInfo\n

              \n

              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.

              \n \n

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

              \n

              Key: \"failover-regions\"\n

              \n

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

              \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n appComponents\n \n

            \n

            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.

            \n

            Type: Array

            \n

            Each appComponents array item includes the following fields:

            \n
              \n
            • \n

              \n name\n

              \n

              Name of the Application Component.

              \n

              Type: String

              \n
            • \n
            • \n

              \n type\n

              \n

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

              \n

              Type: String

              \n
            • \n
            • \n

              \n resourceNames\n

              \n

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

              \n

              Type: Array of strings

              \n
            • \n
            • \n

              \n additionalInfo\n

              \n

              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.

              \n \n

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

              \n

              Key: \"failover-regions\"\n

              \n

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

              \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n excludedResources\n \n

            \n

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

            \n

            Type: Array

            \n \n

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

            \n
            \n

            Each excludedResources array item includes the following fields:

            \n
              \n
            • \n

              \n \n logicalResourceIds\n \n

              \n

              Logical identifier of the resource.

              \n

              Type: Object

              \n \n

              You can configure only one of the following fields:

              \n
                \n
              • \n

                \n logicalStackName\n

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n
              • \n
              \n
              \n

              Each logicalResourceIds object includes the following fields:

              \n
                \n
              • \n

                \n identifier\n

                \n

                Identifier of the resource.

                \n

                Type: String

                \n
              • \n
              • \n

                \n logicalStackName\n

                \n

                The name of the CloudFormation stack this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n

                The name of the resource group this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n

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

                \n

                Type: String

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n

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

                \n \n

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

                \n
                \n

                Type: String

                \n
              • \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n version\n \n

            \n

            Resilience Hub application version.

            \n
          • \n
          • \n

            \n additionalInfo\n

            \n

            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.

            \n \n

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

            \n

            Key: \"failover-regions\"\n

            \n

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

            \n
            \n
          • \n
          ", "smithy.api#required": {} } } @@ -3986,7 +4339,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } } @@ -3998,7 +4351,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -4012,7 +4365,7 @@ "status": { "target": "com.amazonaws.resiliencehub#ResourceImportStatusType", "traits": { - "smithy.api#documentation": "

          The status of the action.

          ", + "smithy.api#documentation": "

          Status of the action.

          ", "smithy.api#required": {} } }, @@ -4071,7 +4424,7 @@ "policyArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } } @@ -4089,6 +4442,17 @@ } } }, + "com.amazonaws.resiliencehub#DifferenceType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "NotEqual", + "name": "NOT_EQUAL" + } + ] + } + }, "com.amazonaws.resiliencehub#DisruptionCompliance": { "type": "structure", "members": { @@ -4109,7 +4473,7 @@ "rtoReferenceId": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The RTO reference identifier.

          " + "smithy.api#documentation": "

          Reference\n identifier of the RTO.

          " } }, "rtoDescription": { @@ -4128,7 +4492,7 @@ "rpoReferenceId": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The RPO reference identifier.

          " + "smithy.api#documentation": "

          Reference\n identifier of\n the\n RPO\n .

          " } }, "rpoDescription": { @@ -4218,6 +4582,36 @@ "smithy.api#default": 0 } }, + "com.amazonaws.resiliencehub#DriftStatus": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "NotChecked", + "name": "NOT_CHECKED" + }, + { + "value": "NotDetected", + "name": "NOT_DETECTED" + }, + { + "value": "Detected", + "name": "DETECTED" + } + ] + } + }, + "com.amazonaws.resiliencehub#DriftType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "ApplicationCompliance", + "name": "APPLICATION_COMPLIANCE" + } + ] + } + }, "com.amazonaws.resiliencehub#EksNamespace": { "type": "string", "traits": { @@ -4240,7 +4634,7 @@ "eksClusterArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: \narn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: \narn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, @@ -4262,7 +4656,7 @@ "eksClusterArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: \narn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: \narn:aws:eks:region:account-id:cluster/cluster-name. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, @@ -4275,7 +4669,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The input source of the namespace that is located on your Amazon Elastic Kubernetes Service cluster.

          " + "smithy.api#documentation": "

          The input source of the namespace that is located on your Amazon Elastic Kubernetes Service\n cluster.

          " } }, "com.amazonaws.resiliencehub#EksSourceList": { @@ -4302,49 +4696,123 @@ "com.amazonaws.resiliencehub#EntityName": { "type": "string", "traits": { - "smithy.api#pattern": "^[A-Za-z0-9][A-Za-z0-9_\\-]{1,59}$" + "smithy.api#pattern": "^[A-Za-z0-9][A-Za-z0-9_\\-]{1,59}$" + } + }, + "com.amazonaws.resiliencehub#EntityNameList": { + "type": "list", + "member": { + "target": "com.amazonaws.resiliencehub#EntityName" + } + }, + "com.amazonaws.resiliencehub#EntityVersion": { + "type": "string", + "traits": { + "smithy.api#pattern": "^\\S{1,50}$" + } + }, + "com.amazonaws.resiliencehub#ErrorMessage": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 500 + } + } + }, + "com.amazonaws.resiliencehub#EstimatedCostTier": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "L1", + "name": "L1" + }, + { + "value": "L2", + "name": "L2" + }, + { + "value": "L3", + "name": "L3" + }, + { + "value": "L4", + "name": "L4" + } + ] + } + }, + "com.amazonaws.resiliencehub#EventSubscription": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

          Unique name to identify an event subscription.

          ", + "smithy.api#required": {} + } + }, + "eventType": { + "target": "com.amazonaws.resiliencehub#EventType", + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#required": {} + } + }, + "snsTopicArn": { + "target": "com.amazonaws.resiliencehub#Arn", + "traits": { + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the Amazon Simple Notification Service topic. The format for this ARN is: \narn:partition:resiliencehub:region:account:app/app-id.\n For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          " + } + } + }, + "traits": { + "smithy.api#documentation": "

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

          " } }, - "com.amazonaws.resiliencehub#EntityNameList": { + "com.amazonaws.resiliencehub#EventSubscriptionList": { "type": "list", "member": { - "target": "com.amazonaws.resiliencehub#EntityName" - } - }, - "com.amazonaws.resiliencehub#EntityVersion": { - "type": "string", - "traits": { - "smithy.api#pattern": "^\\S{1,50}$" - } - }, - "com.amazonaws.resiliencehub#ErrorMessage": { - "type": "string", + "target": "com.amazonaws.resiliencehub#EventSubscription" + }, "traits": { "smithy.api#length": { "min": 0, - "max": 500 + "max": 10 } } }, - "com.amazonaws.resiliencehub#EstimatedCostTier": { + "com.amazonaws.resiliencehub#EventType": { "type": "string", "traits": { "smithy.api#enum": [ { - "value": "L1", - "name": "L1" + "value": "ScheduledAssessmentFailure", + "name": "SCHEDULED_ASSESSMENT_FAILURE" }, { - "value": "L2", - "name": "L2" + "value": "DriftDetected", + "name": "DRIFT_DETECTED" + } + ] + } + }, + "com.amazonaws.resiliencehub#ExcludeRecommendationReason": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "AlreadyImplemented", + "name": "ALREADY_IMPLEMENTED" }, { - "value": "L3", - "name": "L3" + "value": "NotRelevant", + "name": "NOT_RELEVANT" }, { - "value": "L4", - "name": "L4" + "value": "ComplexityOfImplementation", + "name": "COMPLEXITY_OF_IMPLEMENTATION" } ] } @@ -4400,6 +4868,30 @@ ] } }, + "com.amazonaws.resiliencehub#IamRoleArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov):iam::[0-9]{12}:role/(([^/][!-~]+/){1,511})?[A-Za-z0-9_+=,.@-]{1,64}$" + } + }, + "com.amazonaws.resiliencehub#IamRoleArnList": { + "type": "list", + "member": { + "target": "com.amazonaws.resiliencehub#IamRoleArn" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 10 + } + } + }, + "com.amazonaws.resiliencehub#IamRoleName": { + "type": "string", + "traits": { + "smithy.api#pattern": "^([^/]([!-~]+/){1,511})?[A-Za-z0-9_+=,.@-]{1,64}$" + } + }, "com.amazonaws.resiliencehub#ImportResourcesToDraftAppVersion": { "type": "operation", "input": { @@ -4421,6 +4913,9 @@ { "target": "com.amazonaws.resiliencehub#ResourceNotFoundException" }, + { + "target": "com.amazonaws.resiliencehub#ServiceQuotaExceededException" + }, { "target": "com.amazonaws.resiliencehub#ThrottlingException" }, @@ -4443,7 +4938,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -4479,7 +4974,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -4499,7 +4994,7 @@ "status": { "target": "com.amazonaws.resiliencehub#ResourceImportStatusType", "traits": { - "smithy.api#documentation": "

          The status of the action.

          ", + "smithy.api#documentation": "

          Status of the action.

          ", "smithy.api#required": {} } }, @@ -4581,7 +5076,7 @@ "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, @@ -4594,7 +5089,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -4612,9 +5107,93 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " + } + } + } + }, + "com.amazonaws.resiliencehub#ListAppAssessmentComplianceDrifts": { + "type": "operation", + "input": { + "target": "com.amazonaws.resiliencehub#ListAppAssessmentComplianceDriftsRequest" + }, + "output": { + "target": "com.amazonaws.resiliencehub#ListAppAssessmentComplianceDriftsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.resiliencehub#AccessDeniedException" + }, + { + "target": "com.amazonaws.resiliencehub#InternalServerException" + }, + { + "target": "com.amazonaws.resiliencehub#ThrottlingException" + }, + { + "target": "com.amazonaws.resiliencehub#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#http": { + "method": "POST", + "uri": "/list-app-assessment-compliance-drifts", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.resiliencehub#ListAppAssessmentComplianceDriftsRequest": { + "type": "structure", + "members": { + "assessmentArn": { + "target": "com.amazonaws.resiliencehub#Arn", + "traits": { + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.resiliencehub#NextToken", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "maxResults": { + "target": "com.amazonaws.resiliencehub#MaxResults", + "traits": { + "smithy.api#documentation": "

          Indicates the maximum number of applications requested.

          " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.resiliencehub#ListAppAssessmentComplianceDriftsResponse": { + "type": "structure", + "members": { + "complianceDrifts": { + "target": "com.amazonaws.resiliencehub#ComplianceDriftList", + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.resiliencehub#NextToken", + "traits": { + "smithy.api#documentation": "

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

          " } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.resiliencehub#ListAppAssessments": { @@ -4663,7 +5242,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#httpQuery": "appArn" } }, @@ -4712,7 +5291,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#httpQuery": "maxResults" } } @@ -4724,7 +5303,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "assessmentSummaries": { @@ -4787,13 +5366,13 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } } @@ -4812,7 +5391,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -4862,7 +5441,7 @@ "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, @@ -4875,7 +5454,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -4893,7 +5472,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -4943,14 +5522,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, @@ -4981,7 +5560,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5034,14 +5613,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The version of the Application Component.

          ", + "smithy.api#documentation": "

          Version of the Application Component.

          ", "smithy.api#required": {} } }, @@ -5065,14 +5644,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, @@ -5085,7 +5664,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5135,7 +5714,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -5155,7 +5734,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5173,7 +5752,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5226,7 +5805,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -5252,7 +5831,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5277,7 +5856,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5324,7 +5903,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -5337,7 +5916,19 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " + } + }, + "startTime": { + "target": "com.amazonaws.resiliencehub#TimeStamp", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "endTime": { + "target": "com.amazonaws.resiliencehub#TimeStamp", + "traits": { + "smithy.api#documentation": "

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

          " } } } @@ -5355,7 +5946,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5410,7 +6001,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#httpQuery": "maxResults" } }, @@ -5424,7 +6015,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#httpQuery": "appArn" } } @@ -5443,7 +6034,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5491,7 +6082,7 @@ "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#httpQuery": "assessmentArn", "smithy.api#required": {} } @@ -5506,7 +6097,7 @@ "status": { "target": "com.amazonaws.resiliencehub#RecommendationTemplateStatusList", "traits": { - "smithy.api#documentation": "

          The status of the action.

          ", + "smithy.api#documentation": "

          Status of the action.

          ", "smithy.api#httpQuery": "status" } }, @@ -5534,7 +6125,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#httpQuery": "maxResults" } } @@ -5546,7 +6137,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "recommendationTemplates": { @@ -5617,7 +6208,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#httpQuery": "maxResults" } } @@ -5636,7 +6227,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5695,13 +6286,13 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } } @@ -5713,7 +6304,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "sopRecommendations": { @@ -5778,7 +6369,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#httpQuery": "maxResults" } } @@ -5797,7 +6388,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -5856,7 +6447,7 @@ "tags": { "target": "com.amazonaws.resiliencehub#TagMap", "traits": { - "smithy.api#documentation": "

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. \nEach tag consists of a key/value pair.

          " + "smithy.api#documentation": "

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

          " } } } @@ -5915,13 +6506,13 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } } @@ -5933,7 +6524,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "testRecommendations": { @@ -5993,7 +6584,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -6019,7 +6610,7 @@ "maxResults": { "target": "com.amazonaws.resiliencehub#MaxResults", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -6044,7 +6635,7 @@ "nextToken": { "target": "com.amazonaws.resiliencehub#NextToken", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } } @@ -6055,7 +6646,7 @@ "identifier": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The identifier of the resource.

          ", + "smithy.api#documentation": "

          Identifier\n of the resource.

          ", "smithy.api#required": {} } }, @@ -6074,13 +6665,13 @@ "terraformSourceName": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "eksSourceName": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

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

          \n \n

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

          \n
          " + "smithy.api#documentation": "

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

          \n \n

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

          \n
          " } } }, @@ -6088,6 +6679,9 @@ "smithy.api#documentation": "

          Defines a logical resource identifier.

          " } }, + "com.amazonaws.resiliencehub#LongOptional": { + "type": "long" + }, "com.amazonaws.resiliencehub#MaxResults": { "type": "integer", "traits": { @@ -6103,6 +6697,48 @@ "smithy.api#pattern": "^\\S{1,2000}$" } }, + "com.amazonaws.resiliencehub#PermissionModel": { + "type": "structure", + "members": { + "type": { + "target": "com.amazonaws.resiliencehub#PermissionModelType", + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#required": {} + } + }, + "invokerRoleName": { + "target": "com.amazonaws.resiliencehub#IamRoleName", + "traits": { + "smithy.api#documentation": "

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

          \n \n

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

          \n
          " + } + }, + "crossAccountRoleArns": { + "target": "com.amazonaws.resiliencehub#IamRoleArnList", + "traits": { + "smithy.api#documentation": "

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

          \n \n
            \n
          • \n

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

            \n
          • \n
          • \n

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

            \n
          • \n
          \n
          " + } + } + }, + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "com.amazonaws.resiliencehub#PermissionModelType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "LegacyIAMUser", + "name": "LEGACY_IAM_USER" + }, + { + "value": "RoleBased", + "name": "ROLE_BASED" + } + ] + } + }, "com.amazonaws.resiliencehub#PhysicalIdentifierType": { "type": "string", "traits": { @@ -6130,14 +6766,14 @@ "logicalResourceId": { "target": "com.amazonaws.resiliencehub#LogicalResourceId", "traits": { - "smithy.api#documentation": "

          The logical identifier of the resource.

          ", + "smithy.api#documentation": "

          Logical\n identifier of the resource.

          ", "smithy.api#required": {} } }, "physicalResourceId": { "target": "com.amazonaws.resiliencehub#PhysicalResourceId", "traits": { - "smithy.api#documentation": "

          The physical identifier of the resource.

          ", + "smithy.api#documentation": "

          Identifier\n of the physical\n resource.

          ", "smithy.api#required": {} } }, @@ -6169,18 +6805,18 @@ "sourceType": { "target": "com.amazonaws.resiliencehub#ResourceSourceType", "traits": { - "smithy.api#documentation": "

          The type of input source.

          " + "smithy.api#documentation": "

          Type of input source.

          " } }, "parentResourceName": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name of the parent resource.

          " + "smithy.api#documentation": "

          Name of the parent resource.

          " } } }, "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "com.amazonaws.resiliencehub#PhysicalResourceId": { @@ -6189,14 +6825,14 @@ "identifier": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The identifier of the physical resource.

          ", + "smithy.api#documentation": "

          Identifier\n of the physical resource.

          ", "smithy.api#required": {} } }, "type": { "target": "com.amazonaws.resiliencehub#PhysicalIdentifierType", "traits": { - "smithy.api#documentation": "

          Specifies the type of physical resource identifier.

          \n
          \n
          Arn
          \n
          \n

          The resource identifier is an Amazon Resource Name (ARN) .

          \n
          \n
          Native
          \n
          \n

          The resource identifier is an Resilience Hub-native identifier.

          \n
          \n
          ", + "smithy.api#documentation": "

          Specifies the type of physical resource identifier.

          \n
          \n
          Arn
          \n
          \n

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

          \n
            \n
          • \n

            \n AWS::ECS::Service\n

            \n
          • \n
          • \n

            \n AWS::EFS::FileSystem\n

            \n
          • \n
          • \n

            \n AWS::ElasticLoadBalancingV2::LoadBalancer\n

            \n
          • \n
          • \n

            \n AWS::Lambda::Function\n

            \n
          • \n
          • \n

            \n AWS::SNS::Topic\n

            \n
          • \n
          \n
          \n
          Native
          \n
          \n

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

          \n
            \n
          • \n

            \n AWS::ApiGateway::RestApi\n

            \n
          • \n
          • \n

            \n AWS::ApiGatewayV2::Api\n

            \n
          • \n
          • \n

            \n AWS::AutoScaling::AutoScalingGroup\n

            \n
          • \n
          • \n

            \n AWS::DocDB::DBCluster\n

            \n
          • \n
          • \n

            \n AWS::DocDB::DBGlobalCluster\n

            \n
          • \n
          • \n

            \n AWS::DocDB::DBInstance\n

            \n
          • \n
          • \n

            \n AWS::DynamoDB::GlobalTable\n

            \n
          • \n
          • \n

            \n AWS::DynamoDB::Table\n

            \n
          • \n
          • \n

            \n AWS::EC2::EC2Fleet\n

            \n
          • \n
          • \n

            \n AWS::EC2::Instance\n

            \n
          • \n
          • \n

            \n AWS::EC2::NatGateway\n

            \n
          • \n
          • \n

            \n AWS::EC2::Volume\n

            \n
          • \n
          • \n

            \n AWS::ElasticLoadBalancing::LoadBalancer\n

            \n
          • \n
          • \n

            \n AWS::RDS::DBCluster\n

            \n
          • \n
          • \n

            \n AWS::RDS::DBInstance\n

            \n
          • \n
          • \n

            \n AWS::RDS::GlobalCluster\n

            \n
          • \n
          • \n

            \n AWS::Route53::RecordSet\n

            \n
          • \n
          • \n

            \n AWS::S3::Bucket\n

            \n
          • \n
          • \n

            \n AWS::SQS::Queue\n

            \n
          • \n
          \n
          \n
          ", "smithy.api#required": {} } }, @@ -6266,9 +6902,15 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } + }, + "versionName": { + "target": "com.amazonaws.resiliencehub#EntityVersion", + "traits": { + "smithy.api#documentation": "

          Name of the application version.

          " + } } } }, @@ -6278,7 +6920,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -6287,6 +6929,18 @@ "traits": { "smithy.api#documentation": "

          The version of the application.

          " } + }, + "identifier": { + "target": "com.amazonaws.resiliencehub#LongOptional", + "traits": { + "smithy.api#documentation": "

          Identifier of the application version.

          " + } + }, + "versionName": { + "target": "com.amazonaws.resiliencehub#EntityVersion", + "traits": { + "smithy.api#documentation": "

          Name of the application version.

          " + } } } }, @@ -6333,14 +6987,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appTemplateBody": { "target": "com.amazonaws.resiliencehub#AppTemplateBody", "traits": { - "smithy.api#documentation": "

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

          \n

          The appTemplateBody JSON string has the following structure:

          \n
            \n
          • \n

            \n \n resources\n \n

            \n

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

            \n

            Type: Array

            \n \n

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

            \n
            \n

            Each resources array item includes the following fields:

            \n
              \n
            • \n

              \n \n logicalResourceId\n \n

              \n

              The logical identifier of the resource.

              \n

              Type: Object

              \n

              Each logicalResourceId object includes the following fields:

              \n
                \n
              • \n

                \n identifier\n

                \n

                The identifier of the resource.

                \n

                Type: String

                \n
              • \n
              • \n

                \n logicalStackName\n

                \n

                The name of the CloudFormation stack this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n

                The name of the resource group this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n

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

                \n

                Type: String

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n

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

                \n \n

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

                \n
                \n

                Type: String

                \n
              • \n
              \n
            • \n
            • \n

              \n \n type\n \n

              \n

              The type of resource.

              \n

              Type: string

              \n
            • \n
            • \n

              \n \n name\n \n

              \n

              The name of the resource.

              \n

              Type: String

              \n
            • \n
            • \n

              \n additionalInfo\n

              \n

              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.

              \n \n

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

              \n

              Key: \"failover-regions\"\n

              \n

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

              \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n appComponents\n \n

            \n

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

            \n

            Type: Array

            \n

            Each appComponents array item includes the following fields:

            \n
              \n
            • \n

              \n name\n

              \n

              The name of the Application Component.

              \n

              Type: String

              \n
            • \n
            • \n

              \n type\n

              \n

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

              \n

              Type: String

              \n
            • \n
            • \n

              \n resourceNames\n

              \n

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

              \n

              Type: Array of strings

              \n
            • \n
            • \n

              \n additionalInfo\n

              \n

              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.

              \n \n

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

              \n

              Key: \"failover-regions\"\n

              \n

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

              \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n excludedResources\n \n

            \n

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

            \n

            Type: Array

            \n \n

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

            \n
            \n

            Each excludedResources array item includes the following fields:

            \n
              \n
            • \n

              \n \n logicalResourceIds\n \n

              \n

              The logical identifier of the resource.

              \n

              Type: Object

              \n \n

              You can configure only one of the following fields:

              \n
                \n
              • \n

                \n logicalStackName\n

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n
              • \n
              \n
              \n

              Each logicalResourceIds object includes the following fields:

              \n
                \n
              • \n

                \n identifier\n

                \n

                The identifier of the resource.

                \n

                Type: String

                \n
              • \n
              • \n

                \n logicalStackName\n

                \n

                The name of the CloudFormation stack this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n

                The name of the resource group this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n

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

                \n

                Type: String

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n

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

                \n \n

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

                \n
                \n

                Type: String

                \n
              • \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n version\n \n

            \n

            The Resilience Hub application version.

            \n
          • \n
          • \n

            \n additionalInfo\n

            \n

            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.

            \n \n

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

            \n

            Key: \"failover-regions\"\n

            \n

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

            \n
            \n
          • \n
          ", + "smithy.api#documentation": "

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

          \n

          The appTemplateBody JSON string has the following structure:

          \n
            \n
          • \n

            \n \n resources\n \n

            \n

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

            \n

            Type: Array

            \n \n

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

            \n
            \n

            Each resources array item includes the following fields:

            \n
              \n
            • \n

              \n \n logicalResourceId\n \n

              \n

              Logical identifier of the resource.

              \n

              Type: Object

              \n

              Each logicalResourceId object includes the following fields:

              \n
                \n
              • \n

                \n identifier\n

                \n

                Identifier of the resource.

                \n

                Type: String

                \n
              • \n
              • \n

                \n logicalStackName\n

                \n

                The name of the CloudFormation stack this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n

                The name of the resource group this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n

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

                \n

                Type: String

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n

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

                \n \n

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

                \n
                \n

                Type: String

                \n
              • \n
              \n
            • \n
            • \n

              \n \n type\n \n

              \n

              The type of resource.

              \n

              Type: string

              \n
            • \n
            • \n

              \n \n name\n \n

              \n

              The name of the resource.

              \n

              Type: String

              \n
            • \n
            • \n

              \n additionalInfo\n

              \n

              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.

              \n \n

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

              \n

              Key: \"failover-regions\"\n

              \n

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

              \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n appComponents\n \n

            \n

            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.

            \n

            Type: Array

            \n

            Each appComponents array item includes the following fields:

            \n
              \n
            • \n

              \n name\n

              \n

              Name of the Application Component.

              \n

              Type: String

              \n
            • \n
            • \n

              \n type\n

              \n

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

              \n

              Type: String

              \n
            • \n
            • \n

              \n resourceNames\n

              \n

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

              \n

              Type: Array of strings

              \n
            • \n
            • \n

              \n additionalInfo\n

              \n

              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.

              \n \n

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

              \n

              Key: \"failover-regions\"\n

              \n

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

              \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n excludedResources\n \n

            \n

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

            \n

            Type: Array

            \n \n

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

            \n
            \n

            Each excludedResources array item includes the following fields:

            \n
              \n
            • \n

              \n \n logicalResourceIds\n \n

              \n

              Logical identifier of the resource.

              \n

              Type: Object

              \n \n

              You can configure only one of the following fields:

              \n
                \n
              • \n

                \n logicalStackName\n

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n
              • \n
              \n
              \n

              Each logicalResourceIds object includes the following fields:

              \n
                \n
              • \n

                \n identifier\n

                \n

                Identifier of the resource.

                \n

                Type: String

                \n
              • \n
              • \n

                \n logicalStackName\n

                \n

                The name of the CloudFormation stack this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n resourceGroupName\n

                \n

                The name of the resource group this resource belongs to.

                \n

                Type: String

                \n
              • \n
              • \n

                \n terraformSourceName\n

                \n

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

                \n

                Type: String

                \n
              • \n
              • \n

                \n eksSourceName\n

                \n

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

                \n \n

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

                \n
                \n

                Type: String

                \n
              • \n
              \n
            • \n
            \n
          • \n
          • \n

            \n \n version\n \n

            \n

            Resilience Hub application version.

            \n
          • \n
          • \n

            \n additionalInfo\n

            \n

            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.

            \n \n

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

            \n

            Key: \"failover-regions\"\n

            \n

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

            \n
            \n
          • \n
          ", "smithy.api#required": {} } } @@ -6352,7 +7006,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "appVersion": { @@ -6450,13 +7104,13 @@ "resourceId": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The resource identifier.

          " + "smithy.api#documentation": "

          Identifier of the resource.

          " } }, "targetAccountId": { "target": "com.amazonaws.resiliencehub#CustomerId", "traits": { - "smithy.api#documentation": "

          The target account identifier.

          " + "smithy.api#documentation": "

          Identifier\n of the target account.

          " } }, "targetRegion": { @@ -6470,6 +7124,18 @@ "traits": { "smithy.api#documentation": "

          Specifies if the recommendation has already been implemented.

          " } + }, + "excluded": { + "target": "com.amazonaws.resiliencehub#BooleanOptional", + "traits": { + "smithy.api#documentation": "

          Indicates if an operational recommendation item is excluded.

          " + } + }, + "excludeReason": { + "target": "com.amazonaws.resiliencehub#ExcludeRecommendationReason", + "traits": { + "smithy.api#documentation": "

          Indicates the reason for excluding an operational recommendation.

          " + } } }, "traits": { @@ -6494,14 +7160,14 @@ "assessmentArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the assessment. The format for this ARN is: \narn:partition:resiliencehub:region:account:app-assessment/app-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } }, "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "recommendationIds": { @@ -6520,34 +7186,34 @@ "format": { "target": "com.amazonaws.resiliencehub#TemplateFormat", "traits": { - "smithy.api#documentation": "

          The format of the recommendation template.

          \n
          \n
          CfnJson
          \n
          \n

          The template is CloudFormation JSON.

          \n
          \n
          CfnYaml
          \n
          \n

          The template is CloudFormation YAML.

          \n
          \n
          ", + "smithy.api#documentation": "

          Format of the recommendation template.

          \n
          \n
          CfnJson
          \n
          \n

          The template is CloudFormation JSON.

          \n
          \n
          CfnYaml
          \n
          \n

          The template is CloudFormation YAML.

          \n
          \n
          ", "smithy.api#required": {} } }, "recommendationTemplateArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) for the recommendation template.

          ", "smithy.api#required": {} } }, "message": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The message for the recommendation template.

          " + "smithy.api#documentation": "

          Message for the recommendation template.

          " } }, "status": { "target": "com.amazonaws.resiliencehub#RecommendationTemplateStatus", "traits": { - "smithy.api#documentation": "

          The status of the action.

          ", + "smithy.api#documentation": "

          Status of the action.

          ", "smithy.api#required": {} } }, "name": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name for the recommendation template.

          ", + "smithy.api#documentation": "

          Name for the recommendation template.

          ", "smithy.api#required": {} } }, @@ -6566,7 +7232,7 @@ "tags": { "target": "com.amazonaws.resiliencehub#TagMap", "traits": { - "smithy.api#documentation": "

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. \nEach tag consists of a key/value pair.

          " + "smithy.api#documentation": "

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

          " } }, "needsReplacements": { @@ -6664,7 +7330,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -6712,7 +7378,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "appVersion": { @@ -6766,7 +7432,7 @@ "policyArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          " + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          " } }, "policyName": { @@ -6814,7 +7480,7 @@ "tags": { "target": "com.amazonaws.resiliencehub#TagMap", "traits": { - "smithy.api#documentation": "

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. \nEach tag consists of a key/value pair.

          " + "smithy.api#documentation": "

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

          " } } }, @@ -6845,6 +7511,10 @@ { "value": "NonCritical", "name": "NON_CRITICAL" + }, + { + "value": "NotApplicable", + "name": "NOT_APPLICABLE" } ] } @@ -6915,7 +7585,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -6934,7 +7604,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -6955,7 +7625,7 @@ "status": { "target": "com.amazonaws.resiliencehub#ResourceResolutionStatusType", "traits": { - "smithy.api#documentation": "

          The status of the action.

          ", + "smithy.api#documentation": "

          Status of the action.

          ", "smithy.api#required": {} } } @@ -6967,24 +7637,24 @@ "logicalResourceId": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          \n This is the identifier of the resource.\n

          " + "smithy.api#documentation": "

          Identifier\n of the\n logical resource.

          " } }, "physicalResourceId": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          \n This is the identifier of the physical resource.\n

          " + "smithy.api#documentation": "

          Identifier\n of the physical resource.

          " } }, "reason": { "target": "com.amazonaws.resiliencehub#ErrorMessage", "traits": { - "smithy.api#documentation": "

          \n This is the error message.\n

          " + "smithy.api#documentation": "

          This is the error message.

          " } } }, "traits": { - "smithy.api#documentation": "

          \n Defines application resource errors.\n

          " + "smithy.api#documentation": "

          Defines application resource errors.

          " } }, "com.amazonaws.resiliencehub#ResourceErrorList": { @@ -6999,18 +7669,18 @@ "resourceErrors": { "target": "com.amazonaws.resiliencehub#ResourceErrorList", "traits": { - "smithy.api#documentation": "

          \n A list of errors retrieving an application's resources.\n

          " + "smithy.api#documentation": "

          A list of errors retrieving an application's resources.

          " } }, "hasMoreErrors": { "target": "com.amazonaws.resiliencehub#BooleanOptional", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } }, "traits": { - "smithy.api#documentation": "

          \n A list of errors retrieving an application's resources.\n

          " + "smithy.api#documentation": "

          A list of errors retrieving an application's resources.

          " } }, "com.amazonaws.resiliencehub#ResourceId": { @@ -7063,7 +7733,7 @@ "resourceName": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name of the resource this resource is mapped to.

          " + "smithy.api#documentation": "

          Name\n of the resource that\n the\n resource is mapped to.

          " } }, "logicalStackName": { @@ -7081,7 +7751,7 @@ "resourceGroupName": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name of the resource group this resource is mapped to.

          " + "smithy.api#documentation": "

          Name\n of the resource group\n that\n the\n resource is mapped to.

          " } }, "mappingType": { @@ -7094,20 +7764,20 @@ "physicalResourceId": { "target": "com.amazonaws.resiliencehub#PhysicalResourceId", "traits": { - "smithy.api#documentation": "

          The identifier of this resource.

          ", + "smithy.api#documentation": "

          Identifier\n of the physical resource.

          ", "smithy.api#required": {} } }, "terraformSourceName": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          \n The short name of the Terraform source.\n

          " + "smithy.api#documentation": "

          The short name of the Terraform source.

          " } }, "eksSourceName": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

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

          \n \n

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

          \n
          " + "smithy.api#documentation": "

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

          \n \n

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

          \n
          " } } }, @@ -7288,13 +7958,13 @@ "appComponentName": { "target": "com.amazonaws.resiliencehub#EntityId", "traits": { - "smithy.api#documentation": "

          The name of the Application Component.

          " + "smithy.api#documentation": "

          Name of the Application Component.

          " } }, "description": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The description of the SOP recommendation.

          " + "smithy.api#documentation": "

          Description of the SOP recommendation.

          " } }, "recommendationId": { @@ -7307,7 +7977,7 @@ "name": { "target": "com.amazonaws.resiliencehub#DocumentName", "traits": { - "smithy.api#documentation": "

          The name of the SOP recommendation.

          " + "smithy.api#documentation": "

          Name of the SOP recommendation.

          " } }, "items": { @@ -7319,14 +7989,14 @@ "referenceId": { "target": "com.amazonaws.resiliencehub#SpecReferenceId", "traits": { - "smithy.api#documentation": "

          The reference identifier for the SOP recommendation.

          ", + "smithy.api#documentation": "

          Reference\n identifier for the SOP recommendation.

          ", "smithy.api#required": {} } }, "prerequisite": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The prerequisite for the SOP recommendation.

          " + "smithy.api#documentation": "

          Prerequisite for the SOP recommendation.

          " } } }, @@ -7406,7 +8076,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -7434,7 +8104,7 @@ "tags": { "target": "com.amazonaws.resiliencehub#TagMap", "traits": { - "smithy.api#documentation": "

          The tags assigned to the resource. A tag is a label that you assign to an Amazon Web Services resource. \nEach tag consists of a key/value pair.

          " + "smithy.api#documentation": "

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

          " } } } @@ -7584,7 +8254,7 @@ "resourceArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resource.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resource.

          ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -7633,13 +8303,13 @@ "s3StateFileUrl": { "target": "com.amazonaws.resiliencehub#S3Url", "traits": { - "smithy.api#documentation": "

          \n The URL of the Terraform s3 state file you need to import.\n

          ", + "smithy.api#documentation": "

          The URL of the Terraform s3 state file you need to import.

          ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

          \n The Terraform s3 state file you need to import.\n

          " + "smithy.api#documentation": "

          The Terraform s3 state file you need to import.

          " } }, "com.amazonaws.resiliencehub#TerraformSourceList": { @@ -7660,44 +8330,44 @@ "referenceId": { "target": "com.amazonaws.resiliencehub#SpecReferenceId", "traits": { - "smithy.api#documentation": "

          The reference identifier for the test recommendation.

          ", + "smithy.api#documentation": "

          Reference\n identifier for the test recommendation.

          ", "smithy.api#required": {} } }, "appComponentName": { "target": "com.amazonaws.resiliencehub#EntityId", "traits": { - "smithy.api#documentation": "

          The name of the Application Component.

          " + "smithy.api#documentation": "

          Name of the Application Component.

          " } }, "name": { "target": "com.amazonaws.resiliencehub#DocumentName", "traits": { - "smithy.api#documentation": "

          The name of the test recommendation.

          " + "smithy.api#documentation": "

          Name of the test recommendation.

          " } }, "intent": { "target": "com.amazonaws.resiliencehub#EntityDescription", "traits": { - "smithy.api#documentation": "

          The intent of the test recommendation.

          " + "smithy.api#documentation": "

          Intent of the test recommendation.

          " } }, "risk": { "target": "com.amazonaws.resiliencehub#TestRisk", "traits": { - "smithy.api#documentation": "

          The level of risk for this test recommendation.

          " + "smithy.api#documentation": "

          Level of risk for this test recommendation.

          " } }, "type": { "target": "com.amazonaws.resiliencehub#TestType", "traits": { - "smithy.api#documentation": "

          The type of test recommendation.

          " + "smithy.api#documentation": "

          Type of test recommendation.

          " } }, "description": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The description for the test recommendation.

          " + "smithy.api#documentation": "

          Description for the test recommendation.

          " } }, "items": { @@ -7709,13 +8379,13 @@ "prerequisite": { "target": "com.amazonaws.resiliencehub#String500", "traits": { - "smithy.api#documentation": "

          The prerequisite of the test recommendation.

          " + "smithy.api#documentation": "

          Prerequisite of the test recommendation.

          " } }, "dependsOnAlarms": { "target": "com.amazonaws.resiliencehub#AlarmReferenceIdList", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } } }, @@ -7799,14 +8469,14 @@ "logicalResourceId": { "target": "com.amazonaws.resiliencehub#LogicalResourceId", "traits": { - "smithy.api#documentation": "

          The logical resource identifier for the unsupported resource.

          ", + "smithy.api#documentation": "

          Logical\n resource identifier for the unsupported resource.

          ", "smithy.api#required": {} } }, "physicalResourceId": { "target": "com.amazonaws.resiliencehub#PhysicalResourceId", "traits": { - "smithy.api#documentation": "

          The physical resource identifier for the unsupported resource.

          ", + "smithy.api#documentation": "

          Physical\n resource identifier for the unsupported resource.

          ", "smithy.api#required": {} } }, @@ -7874,7 +8544,7 @@ "resourceArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resource.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resource.

          ", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -7936,7 +8606,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -7949,7 +8619,7 @@ "policyArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          " + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          " } }, "clearResiliencyPolicyArn": { @@ -7963,6 +8633,18 @@ "traits": { "smithy.api#documentation": "

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

          " } + }, + "permissionModel": { + "target": "com.amazonaws.resiliencehub#PermissionModel", + "traits": { + "smithy.api#documentation": "

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

          " + } + }, + "eventSubscriptions": { + "target": "com.amazonaws.resiliencehub#EventSubscriptionList", + "traits": { + "smithy.api#documentation": "

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

          " + } } } }, @@ -8058,27 +8740,27 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "id": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The identifier of the Application Component.

          ", + "smithy.api#documentation": "

          Identifier of the Application Component.

          ", "smithy.api#required": {} } }, "name": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The name of the Application Component.

          " + "smithy.api#documentation": "

          Name of the Application Component.

          " } }, "type": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

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

          " } }, "additionalInfo": { @@ -8095,21 +8777,21 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, "appComponent": { "target": "com.amazonaws.resiliencehub#AppComponent", "traits": { - "smithy.api#documentation": "

          The list of Application Components that belong to this resource.

          " + "smithy.api#documentation": "

          List of Application Components that belong to this resource.

          " } } } @@ -8120,7 +8802,7 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, @@ -8178,50 +8860,50 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "resourceName": { "target": "com.amazonaws.resiliencehub#EntityName", "traits": { - "smithy.api#documentation": "

          The name of the resource.

          " + "smithy.api#documentation": "

          Name of the resource.

          " } }, "logicalResourceId": { "target": "com.amazonaws.resiliencehub#LogicalResourceId", "traits": { - "smithy.api#documentation": "

          The logical identifier of the resource.

          " + "smithy.api#documentation": "

          Logical identifier of the resource.

          " } }, "physicalResourceId": { "target": "com.amazonaws.resiliencehub#String2048", "traits": { - "smithy.api#documentation": "

          The physical identifier of the resource.

          " + "smithy.api#documentation": "

          Physical identifier of the resource.

          " } }, "awsRegion": { "target": "com.amazonaws.resiliencehub#AwsRegion", "traits": { - "smithy.api#documentation": "

          The Amazon Web Services region that owns the physical resource.

          " + "smithy.api#documentation": "

          Amazon Web Services region that owns the physical resource.

          " } }, "awsAccountId": { "target": "com.amazonaws.resiliencehub#CustomerId", "traits": { - "smithy.api#documentation": "

          The Amazon Web Services account that owns the physical resource.

          " + "smithy.api#documentation": "

          Amazon Web Services account that owns the physical resource.

          " } }, "resourceType": { "target": "com.amazonaws.resiliencehub#String255", "traits": { - "smithy.api#documentation": "

          The type of resource.

          " + "smithy.api#documentation": "

          Type of resource.

          " } }, "appComponents": { "target": "com.amazonaws.resiliencehub#AppComponentNameList", "traits": { - "smithy.api#documentation": "

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

          " + "smithy.api#documentation": "

          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.

          " } }, "additionalInfo": { @@ -8244,14 +8926,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, @@ -8269,14 +8951,14 @@ "appArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

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

          ", + "smithy.api#documentation": "

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

          ", "smithy.api#required": {} } }, "appVersion": { "target": "com.amazonaws.resiliencehub#EntityVersion", "traits": { - "smithy.api#documentation": "

          The Resilience Hub application version.

          ", + "smithy.api#documentation": "

          Resilience Hub application version.

          ", "smithy.api#required": {} } }, @@ -8288,6 +8970,86 @@ } } }, + "com.amazonaws.resiliencehub#UpdateRecommendationStatusItem": { + "type": "structure", + "members": { + "resourceId": { + "target": "com.amazonaws.resiliencehub#String500", + "traits": { + "smithy.api#documentation": "

          Resource identifier of the operational recommendation item.

          " + } + }, + "targetAccountId": { + "target": "com.amazonaws.resiliencehub#CustomerId", + "traits": { + "smithy.api#documentation": "

          Identifier of the target Amazon Web Services account.

          " + } + }, + "targetRegion": { + "target": "com.amazonaws.resiliencehub#AwsRegion", + "traits": { + "smithy.api#documentation": "

          Identifier of the target Amazon Web Services Region.

          " + } + } + }, + "traits": { + "smithy.api#documentation": "

          Defines the operational recommendation item that needs a status update.

          " + } + }, + "com.amazonaws.resiliencehub#UpdateRecommendationStatusRequestEntries": { + "type": "list", + "member": { + "target": "com.amazonaws.resiliencehub#UpdateRecommendationStatusRequestEntry" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.resiliencehub#UpdateRecommendationStatusRequestEntry": { + "type": "structure", + "members": { + "entryId": { + "target": "com.amazonaws.resiliencehub#String255", + "traits": { + "smithy.api#documentation": "

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

          \n \n

          The entryIds of a batch request need to be unique within a request.

          \n
          ", + "smithy.api#required": {} + } + }, + "referenceId": { + "target": "com.amazonaws.resiliencehub#SpecReferenceId", + "traits": { + "smithy.api#documentation": "

          Reference identifier of the operational recommendation item.

          ", + "smithy.api#required": {} + } + }, + "item": { + "target": "com.amazonaws.resiliencehub#UpdateRecommendationStatusItem", + "traits": { + "smithy.api#documentation": "

          The operational recommendation item.

          ", + "smithy.api#required": {} + } + }, + "excluded": { + "target": "com.amazonaws.resiliencehub#BooleanOptional", + "traits": { + "smithy.api#documentation": "

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

          ", + "smithy.api#required": {} + } + }, + "excludeReason": { + "target": "com.amazonaws.resiliencehub#ExcludeRecommendationReason", + "traits": { + "smithy.api#documentation": "

          Indicates the reason for excluding an operational recommendation.

          " + } + } + }, + "traits": { + "smithy.api#documentation": "

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

          " + } + }, "com.amazonaws.resiliencehub#UpdateResiliencyPolicy": { "type": "operation", "input": { @@ -8331,7 +9093,7 @@ "policyArn": { "target": "com.amazonaws.resiliencehub#Arn", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", + "smithy.api#documentation": "

          Amazon Resource Name (ARN) of the resiliency policy. The format for this ARN is: \narn:partition:resiliencehub:region:account:resiliency-policy/policy-id. For more information about ARNs, \nsee \n Amazon Resource Names (ARNs) in the \n AWS General Reference guide.

          ", "smithy.api#required": {} } },