Module: Aws::Backup::ClientApi Private

Includes:
Seahorse::Model
Defined in:
lib/aws-sdk-backup/client_api.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Constant Summary collapse

ARN =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ARN')
AccountId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AccountId')
AdvancedBackupSetting =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AdvancedBackupSetting')
AdvancedBackupSettings =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'AdvancedBackupSettings')
AggregationPeriod =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AggregationPeriod')
AlreadyExistsException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AlreadyExistsException')
BackupJob =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupJob')
BackupJobChildJobsInState =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'BackupJobChildJobsInState')
BackupJobState =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BackupJobState')
BackupJobStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BackupJobStatus')
BackupJobSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupJobSummary')
BackupJobSummaryList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupJobSummaryList')
BackupJobsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupJobsList')
BackupOptionKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BackupOptionKey')
BackupOptionValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BackupOptionValue')
BackupOptions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'BackupOptions')
BackupPlan =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupPlan')
BackupPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupPlanInput')
BackupPlanName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BackupPlanName')
BackupPlanTemplatesList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupPlanTemplatesList')
BackupPlanTemplatesListMember =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupPlanTemplatesListMember')
BackupPlanVersionsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupPlanVersionsList')
BackupPlansList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupPlansList')
BackupPlansListMember =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupPlansListMember')
BackupRule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupRule')
BackupRuleInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupRuleInput')
BackupRuleName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BackupRuleName')
BackupRules =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupRules')
BackupRulesInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupRulesInput')
BackupSelection =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupSelection')
BackupSelectionName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BackupSelectionName')
BackupSelectionsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupSelectionsList')
BackupSelectionsListMember =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupSelectionsListMember')
BackupVaultEvent =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BackupVaultEvent')
BackupVaultEvents =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupVaultEvents')
BackupVaultList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'BackupVaultList')
BackupVaultListMember =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BackupVaultListMember')
BackupVaultName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BackupVaultName')
Boolean =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::BooleanShape.new(name: 'Boolean')
CalculatedLifecycle =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CalculatedLifecycle')
CancelLegalHoldInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CancelLegalHoldInput')
CancelLegalHoldOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CancelLegalHoldOutput')
ComplianceResourceIdList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ComplianceResourceIdList')
Condition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Condition')
ConditionKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ConditionKey')
ConditionParameter =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ConditionParameter')
ConditionParameters =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ConditionParameters')
ConditionType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ConditionType')
ConditionValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ConditionValue')
Conditions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Conditions')
ConflictException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ConflictException')
ControlInputParameter =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ControlInputParameter')
ControlInputParameters =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ControlInputParameters')
ControlName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ControlName')
ControlScope =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ControlScope')
CopyAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CopyAction')
CopyActions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'CopyActions')
CopyJob =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CopyJob')
CopyJobChildJobsInState =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'CopyJobChildJobsInState')
CopyJobState =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'CopyJobState')
CopyJobStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'CopyJobStatus')
CopyJobSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CopyJobSummary')
CopyJobSummaryList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'CopyJobSummaryList')
CopyJobsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'CopyJobsList')
CreateBackupPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateBackupPlanInput')
CreateBackupPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateBackupPlanOutput')
CreateBackupSelectionInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateBackupSelectionInput')
CreateBackupSelectionOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateBackupSelectionOutput')
CreateBackupVaultInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateBackupVaultInput')
CreateBackupVaultOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateBackupVaultOutput')
CreateFrameworkInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateFrameworkInput')
CreateFrameworkOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateFrameworkOutput')
CreateLegalHoldInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateLegalHoldInput')
CreateLegalHoldOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateLegalHoldOutput')
CreateLogicallyAirGappedBackupVaultInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateLogicallyAirGappedBackupVaultInput')
CreateLogicallyAirGappedBackupVaultOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateLogicallyAirGappedBackupVaultOutput')
CreateReportPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateReportPlanInput')
CreateReportPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateReportPlanOutput')
CreateRestoreTestingPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRestoreTestingPlanInput')
CreateRestoreTestingPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRestoreTestingPlanOutput')
CreateRestoreTestingSelectionInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRestoreTestingSelectionInput')
CreateRestoreTestingSelectionOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRestoreTestingSelectionOutput')
CronExpression =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'CronExpression')
DateRange =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DateRange')
DeleteBackupPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteBackupPlanInput')
DeleteBackupPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteBackupPlanOutput')
DeleteBackupSelectionInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteBackupSelectionInput')
DeleteBackupVaultAccessPolicyInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteBackupVaultAccessPolicyInput')
DeleteBackupVaultInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteBackupVaultInput')
DeleteBackupVaultLockConfigurationInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteBackupVaultLockConfigurationInput')
DeleteBackupVaultNotificationsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteBackupVaultNotificationsInput')
DeleteFrameworkInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteFrameworkInput')
DeleteRecoveryPointInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRecoveryPointInput')
DeleteReportPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteReportPlanInput')
DeleteRestoreTestingPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRestoreTestingPlanInput')
DeleteRestoreTestingSelectionInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRestoreTestingSelectionInput')
DependencyFailureException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DependencyFailureException')
DescribeBackupJobInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeBackupJobInput')
DescribeBackupJobOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeBackupJobOutput')
DescribeBackupVaultInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeBackupVaultInput')
DescribeBackupVaultOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeBackupVaultOutput')
DescribeCopyJobInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeCopyJobInput')
DescribeCopyJobOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeCopyJobOutput')
DescribeFrameworkInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeFrameworkInput')
DescribeFrameworkOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeFrameworkOutput')
DescribeGlobalSettingsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeGlobalSettingsInput')
DescribeGlobalSettingsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeGlobalSettingsOutput')
DescribeProtectedResourceInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeProtectedResourceInput')
DescribeProtectedResourceOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeProtectedResourceOutput')
DescribeRecoveryPointInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeRecoveryPointInput')
DescribeRecoveryPointOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeRecoveryPointOutput')
DescribeRegionSettingsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeRegionSettingsInput')
DescribeRegionSettingsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeRegionSettingsOutput')
DescribeReportJobInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeReportJobInput')
DescribeReportJobOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeReportJobOutput')
DescribeReportPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeReportPlanInput')
DescribeReportPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeReportPlanOutput')
DescribeRestoreJobInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeRestoreJobInput')
DescribeRestoreJobOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeRestoreJobOutput')
DisassociateRecoveryPointFromParentInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DisassociateRecoveryPointFromParentInput')
DisassociateRecoveryPointInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DisassociateRecoveryPointInput')
ExportBackupPlanTemplateInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ExportBackupPlanTemplateInput')
ExportBackupPlanTemplateOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ExportBackupPlanTemplateOutput')
FormatList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'FormatList')
Framework =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Framework')
FrameworkControl =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'FrameworkControl')
FrameworkControls =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'FrameworkControls')
FrameworkDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FrameworkDescription')
FrameworkList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'FrameworkList')
FrameworkName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FrameworkName')
GetBackupPlanFromJSONInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupPlanFromJSONInput')
GetBackupPlanFromJSONOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupPlanFromJSONOutput')
GetBackupPlanFromTemplateInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupPlanFromTemplateInput')
GetBackupPlanFromTemplateOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupPlanFromTemplateOutput')
GetBackupPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupPlanInput')
GetBackupPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupPlanOutput')
GetBackupSelectionInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupSelectionInput')
GetBackupSelectionOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupSelectionOutput')
GetBackupVaultAccessPolicyInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupVaultAccessPolicyInput')
GetBackupVaultAccessPolicyOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupVaultAccessPolicyOutput')
GetBackupVaultNotificationsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupVaultNotificationsInput')
GetBackupVaultNotificationsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBackupVaultNotificationsOutput')
GetLegalHoldInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetLegalHoldInput')
GetLegalHoldOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetLegalHoldOutput')
GetRecoveryPointRestoreMetadataInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRecoveryPointRestoreMetadataInput')
GetRecoveryPointRestoreMetadataOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRecoveryPointRestoreMetadataOutput')
GetRestoreJobMetadataInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRestoreJobMetadataInput')
GetRestoreJobMetadataOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRestoreJobMetadataOutput')
GetRestoreTestingInferredMetadataInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRestoreTestingInferredMetadataInput')
GetRestoreTestingInferredMetadataOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRestoreTestingInferredMetadataOutput')
GetRestoreTestingPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRestoreTestingPlanInput')
GetRestoreTestingPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRestoreTestingPlanOutput')
GetRestoreTestingSelectionInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRestoreTestingSelectionInput')
GetRestoreTestingSelectionOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRestoreTestingSelectionOutput')
GetSupportedResourceTypesOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSupportedResourceTypesOutput')
GlobalSettings =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'GlobalSettings')
GlobalSettingsName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'GlobalSettingsName')
GlobalSettingsValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'GlobalSettingsValue')
IAMPolicy =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IAMPolicy')
IAMRoleArn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IAMRoleArn')
InvalidParameterValueException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InvalidParameterValueException')
InvalidRequestException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InvalidRequestException')
InvalidResourceStateException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InvalidResourceStateException')
IsEnabled =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::BooleanShape.new(name: 'IsEnabled')
KeyValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'KeyValue')
KeyValueList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'KeyValueList')
LegalHold =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'LegalHold')
LegalHoldStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LegalHoldStatus')
LegalHoldsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'LegalHoldsList')
Lifecycle =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Lifecycle')
LimitExceededException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'LimitExceededException')
ListBackupJobSummariesInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupJobSummariesInput')
ListBackupJobSummariesOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupJobSummariesOutput')
ListBackupJobsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupJobsInput')
ListBackupJobsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupJobsOutput')
ListBackupPlanTemplatesInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupPlanTemplatesInput')
ListBackupPlanTemplatesOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupPlanTemplatesOutput')
ListBackupPlanVersionsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupPlanVersionsInput')
ListBackupPlanVersionsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupPlanVersionsOutput')
ListBackupPlansInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupPlansInput')
ListBackupPlansOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupPlansOutput')
ListBackupSelectionsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupSelectionsInput')
ListBackupSelectionsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupSelectionsOutput')
ListBackupVaultsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupVaultsInput')
ListBackupVaultsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListBackupVaultsOutput')
ListCopyJobSummariesInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListCopyJobSummariesInput')
ListCopyJobSummariesOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListCopyJobSummariesOutput')
ListCopyJobsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListCopyJobsInput')
ListCopyJobsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListCopyJobsOutput')
ListFrameworksInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListFrameworksInput')
ListFrameworksOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListFrameworksOutput')
ListLegalHoldsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListLegalHoldsInput')
ListLegalHoldsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListLegalHoldsOutput')
ListOfTags =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfTags')
ListProtectedResourcesByBackupVaultInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListProtectedResourcesByBackupVaultInput')
ListProtectedResourcesByBackupVaultOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListProtectedResourcesByBackupVaultOutput')
ListProtectedResourcesInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListProtectedResourcesInput')
ListProtectedResourcesOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListProtectedResourcesOutput')
ListRecoveryPointsByBackupVaultInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRecoveryPointsByBackupVaultInput')
ListRecoveryPointsByBackupVaultOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRecoveryPointsByBackupVaultOutput')
ListRecoveryPointsByLegalHoldInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRecoveryPointsByLegalHoldInput')
ListRecoveryPointsByLegalHoldOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRecoveryPointsByLegalHoldOutput')
ListRecoveryPointsByResourceInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRecoveryPointsByResourceInput')
ListRecoveryPointsByResourceOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRecoveryPointsByResourceOutput')
ListReportJobsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListReportJobsInput')
ListReportJobsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListReportJobsOutput')
ListReportPlansInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListReportPlansInput')
ListReportPlansOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListReportPlansOutput')
ListRestoreJobSummariesInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreJobSummariesInput')
ListRestoreJobSummariesOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreJobSummariesOutput')
ListRestoreJobsByProtectedResourceInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreJobsByProtectedResourceInput')
ListRestoreJobsByProtectedResourceOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreJobsByProtectedResourceOutput')
ListRestoreJobsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreJobsInput')
ListRestoreJobsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreJobsOutput')
ListRestoreTestingPlansInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreTestingPlansInput')
ListRestoreTestingPlansInputMaxResultsInteger =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ListRestoreTestingPlansInputMaxResultsInteger')
ListRestoreTestingPlansOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreTestingPlansOutput')
ListRestoreTestingSelectionsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreTestingSelectionsInput')
ListRestoreTestingSelectionsInputMaxResultsInteger =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ListRestoreTestingSelectionsInputMaxResultsInteger')
ListRestoreTestingSelectionsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRestoreTestingSelectionsOutput')
ListTagsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsInput')
ListTagsOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsOutput')
Long =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'Long')
MaxFrameworkInputs =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'MaxFrameworkInputs')
MaxResults =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'MaxResults')
MessageCategory =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MessageCategory')
Metadata =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'Metadata')
MetadataKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MetadataKey')
MetadataValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MetadataValue')
MissingParameterValueException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MissingParameterValueException')
ParameterName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ParameterName')
ParameterValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ParameterValue')
ProtectedResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ProtectedResource')
ProtectedResourceConditions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ProtectedResourceConditions')
ProtectedResourcesList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ProtectedResourcesList')
PutBackupVaultAccessPolicyInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutBackupVaultAccessPolicyInput')
PutBackupVaultLockConfigurationInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutBackupVaultLockConfigurationInput')
PutBackupVaultNotificationsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutBackupVaultNotificationsInput')
PutRestoreValidationResultInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutRestoreValidationResultInput')
RecoveryPointByBackupVault =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RecoveryPointByBackupVault')
RecoveryPointByBackupVaultList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RecoveryPointByBackupVaultList')
RecoveryPointByResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RecoveryPointByResource')
RecoveryPointByResourceList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RecoveryPointByResourceList')
RecoveryPointCreator =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RecoveryPointCreator')
RecoveryPointMember =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RecoveryPointMember')
RecoveryPointSelection =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RecoveryPointSelection')
RecoveryPointStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RecoveryPointStatus')
RecoveryPointsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RecoveryPointsList')
Region =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Region')
ReportDeliveryChannel =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ReportDeliveryChannel')
ReportDestination =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ReportDestination')
ReportJob =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ReportJob')
ReportJobId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ReportJobId')
ReportJobList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ReportJobList')
ReportPlan =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ReportPlan')
ReportPlanDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ReportPlanDescription')
ReportPlanList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ReportPlanList')
ReportPlanName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ReportPlanName')
ReportSetting =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ReportSetting')
ResourceArns =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResourceArns')
ResourceIdentifiers =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResourceIdentifiers')
ResourceNotFoundException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResourceNotFoundException')
ResourceType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResourceType')
ResourceTypeList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResourceTypeList')
ResourceTypeManagementPreference =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'ResourceTypeManagementPreference')
ResourceTypeOptInPreference =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'ResourceTypeOptInPreference')
ResourceTypes =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResourceTypes')
RestoreDeletionStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RestoreDeletionStatus')
RestoreJobCreator =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreJobCreator')
RestoreJobId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RestoreJobId')
RestoreJobState =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RestoreJobState')
RestoreJobStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RestoreJobStatus')
RestoreJobSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreJobSummary')
RestoreJobSummaryList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RestoreJobSummaryList')
RestoreJobsList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RestoreJobsList')
RestoreJobsListMember =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreJobsListMember')
RestoreTestingPlanForCreate =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreTestingPlanForCreate')
RestoreTestingPlanForGet =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreTestingPlanForGet')
RestoreTestingPlanForList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreTestingPlanForList')
RestoreTestingPlanForUpdate =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreTestingPlanForUpdate')
RestoreTestingPlans =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RestoreTestingPlans')
RestoreTestingRecoveryPointSelection =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreTestingRecoveryPointSelection')
RestoreTestingRecoveryPointSelectionAlgorithm =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RestoreTestingRecoveryPointSelectionAlgorithm')
RestoreTestingRecoveryPointType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RestoreTestingRecoveryPointType')
RestoreTestingRecoveryPointTypeList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RestoreTestingRecoveryPointTypeList')
RestoreTestingSelectionForCreate =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreTestingSelectionForCreate')
RestoreTestingSelectionForGet =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreTestingSelectionForGet')
RestoreTestingSelectionForList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreTestingSelectionForList')
RestoreTestingSelectionForUpdate =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RestoreTestingSelectionForUpdate')
RestoreTestingSelections =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RestoreTestingSelections')
RestoreValidationStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RestoreValidationStatus')
SensitiveStringMap =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'SensitiveStringMap')
ServiceUnavailableException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ServiceUnavailableException')
StartBackupJobInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartBackupJobInput')
StartBackupJobOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartBackupJobOutput')
StartCopyJobInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartCopyJobInput')
StartCopyJobOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartCopyJobOutput')
StartReportJobInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartReportJobInput')
StartReportJobOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartReportJobOutput')
StartRestoreJobInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartRestoreJobInput')
StartRestoreJobOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartRestoreJobOutput')
StopBackupJobInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StopBackupJobInput')
StorageClass =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'StorageClass')
String =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'String')
TagKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagKey')
TagKeyList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TagKeyList')
TagResourceInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceInput')
TagValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagValue')
Tags =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'Tags')
Timestamp =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::TimestampShape.new(name: 'Timestamp')
Timezone =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Timezone')
UntagResourceInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceInput')
UpdateBackupPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateBackupPlanInput')
UpdateBackupPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateBackupPlanOutput')
UpdateFrameworkInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateFrameworkInput')
UpdateFrameworkOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateFrameworkOutput')
UpdateGlobalSettingsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateGlobalSettingsInput')
UpdateRecoveryPointLifecycleInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRecoveryPointLifecycleInput')
UpdateRecoveryPointLifecycleOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRecoveryPointLifecycleOutput')
UpdateRegionSettingsInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRegionSettingsInput')
UpdateReportPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateReportPlanInput')
UpdateReportPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateReportPlanOutput')
UpdateRestoreTestingPlanInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRestoreTestingPlanInput')
UpdateRestoreTestingPlanOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRestoreTestingPlanOutput')
UpdateRestoreTestingSelectionInput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRestoreTestingSelectionInput')
UpdateRestoreTestingSelectionOutput =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRestoreTestingSelectionOutput')
VaultNames =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'VaultNames')
VaultState =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'VaultState')
VaultType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'VaultType')
WindowMinutes =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'WindowMinutes')
API =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Seahorse::Model::Api.new.tap do |api|

  api.version = "2018-11-15"

  api. = {
    "apiVersion" => "2018-11-15",
    "auth" => ["aws.auth#sigv4"],
    "endpointPrefix" => "backup",
    "jsonVersion" => "1.1",
    "protocol" => "rest-json",
    "protocols" => ["rest-json"],
    "serviceFullName" => "AWS Backup",
    "serviceId" => "Backup",
    "signatureVersion" => "v4",
    "uid" => "backup-2018-11-15",
  }

  api.add_operation(:cancel_legal_hold, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CancelLegalHold"
    o.http_method = "DELETE"
    o.http_request_uri = "/legal-holds/{legalHoldId}"
    o.input = Shapes::ShapeRef.new(shape: CancelLegalHoldInput)
    o.output = Shapes::ShapeRef.new(shape: CancelLegalHoldOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidResourceStateException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:create_backup_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateBackupPlan"
    o.http_method = "PUT"
    o.http_request_uri = "/backup/plans/"
    o.input = Shapes::ShapeRef.new(shape: CreateBackupPlanInput)
    o.output = Shapes::ShapeRef.new(shape: CreateBackupPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:create_backup_selection, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateBackupSelection"
    o.http_method = "PUT"
    o.http_request_uri = "/backup/plans/{backupPlanId}/selections/"
    o.input = Shapes::ShapeRef.new(shape: CreateBackupSelectionInput)
    o.output = Shapes::ShapeRef.new(shape: CreateBackupSelectionOutput)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:create_backup_vault, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateBackupVault"
    o.http_method = "PUT"
    o.http_request_uri = "/backup-vaults/{backupVaultName}"
    o.input = Shapes::ShapeRef.new(shape: CreateBackupVaultInput)
    o.output = Shapes::ShapeRef.new(shape: CreateBackupVaultOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
  end)

  api.add_operation(:create_framework, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateFramework"
    o.http_method = "POST"
    o.http_request_uri = "/audit/frameworks"
    o.input = Shapes::ShapeRef.new(shape: CreateFrameworkInput)
    o.output = Shapes::ShapeRef.new(shape: CreateFrameworkOutput)
    o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:create_legal_hold, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateLegalHold"
    o.http_method = "POST"
    o.http_request_uri = "/legal-holds/"
    o.input = Shapes::ShapeRef.new(shape: CreateLegalHoldInput)
    o.output = Shapes::ShapeRef.new(shape: CreateLegalHoldOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
  end)

  api.add_operation(:create_logically_air_gapped_backup_vault, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateLogicallyAirGappedBackupVault"
    o.http_method = "PUT"
    o.http_request_uri = "/logically-air-gapped-backup-vaults/{backupVaultName}"
    o.input = Shapes::ShapeRef.new(shape: CreateLogicallyAirGappedBackupVaultInput)
    o.output = Shapes::ShapeRef.new(shape: CreateLogicallyAirGappedBackupVaultOutput)
    o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:create_report_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateReportPlan"
    o.http_method = "POST"
    o.http_request_uri = "/audit/report-plans"
    o.input = Shapes::ShapeRef.new(shape: CreateReportPlanInput)
    o.output = Shapes::ShapeRef.new(shape: CreateReportPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
  end)

  api.add_operation(:create_restore_testing_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateRestoreTestingPlan"
    o.http_method = "PUT"
    o.http_request_uri = "/restore-testing/plans"
    o.input = Shapes::ShapeRef.new(shape: CreateRestoreTestingPlanInput)
    o.output = Shapes::ShapeRef.new(shape: CreateRestoreTestingPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:create_restore_testing_selection, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateRestoreTestingSelection"
    o.http_method = "PUT"
    o.http_request_uri = "/restore-testing/plans/{RestoreTestingPlanName}/selections"
    o.input = Shapes::ShapeRef.new(shape: CreateRestoreTestingSelectionInput)
    o.output = Shapes::ShapeRef.new(shape: CreateRestoreTestingSelectionOutput)
    o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:delete_backup_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteBackupPlan"
    o.http_method = "DELETE"
    o.http_request_uri = "/backup/plans/{backupPlanId}"
    o.input = Shapes::ShapeRef.new(shape: DeleteBackupPlanInput)
    o.output = Shapes::ShapeRef.new(shape: DeleteBackupPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:delete_backup_selection, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteBackupSelection"
    o.http_method = "DELETE"
    o.http_request_uri = "/backup/plans/{backupPlanId}/selections/{selectionId}"
    o.input = Shapes::ShapeRef.new(shape: DeleteBackupSelectionInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:delete_backup_vault, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteBackupVault"
    o.http_method = "DELETE"
    o.http_request_uri = "/backup-vaults/{backupVaultName}"
    o.input = Shapes::ShapeRef.new(shape: DeleteBackupVaultInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:delete_backup_vault_access_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteBackupVaultAccessPolicy"
    o.http_method = "DELETE"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/access-policy"
    o.input = Shapes::ShapeRef.new(shape: DeleteBackupVaultAccessPolicyInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:delete_backup_vault_lock_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteBackupVaultLockConfiguration"
    o.http_method = "DELETE"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/vault-lock"
    o.input = Shapes::ShapeRef.new(shape: DeleteBackupVaultLockConfigurationInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:delete_backup_vault_notifications, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteBackupVaultNotifications"
    o.http_method = "DELETE"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/notification-configuration"
    o.input = Shapes::ShapeRef.new(shape: DeleteBackupVaultNotificationsInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:delete_framework, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteFramework"
    o.http_method = "DELETE"
    o.http_request_uri = "/audit/frameworks/{frameworkName}"
    o.input = Shapes::ShapeRef.new(shape: DeleteFrameworkInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:delete_recovery_point, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteRecoveryPoint"
    o.http_method = "DELETE"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}"
    o.input = Shapes::ShapeRef.new(shape: DeleteRecoveryPointInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidResourceStateException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:delete_report_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteReportPlan"
    o.http_method = "DELETE"
    o.http_request_uri = "/audit/report-plans/{reportPlanName}"
    o.input = Shapes::ShapeRef.new(shape: DeleteReportPlanInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:delete_restore_testing_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteRestoreTestingPlan"
    o.http_method = "DELETE"
    o.http_request_uri = "/restore-testing/plans/{RestoreTestingPlanName}"
    o.input = Shapes::ShapeRef.new(shape: DeleteRestoreTestingPlanInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:delete_restore_testing_selection, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteRestoreTestingSelection"
    o.http_method = "DELETE"
    o.http_request_uri = "/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}"
    o.input = Shapes::ShapeRef.new(shape: DeleteRestoreTestingSelectionInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:describe_backup_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeBackupJob"
    o.http_method = "GET"
    o.http_request_uri = "/backup-jobs/{backupJobId}"
    o.input = Shapes::ShapeRef.new(shape: DescribeBackupJobInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeBackupJobOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: DependencyFailureException)
  end)

  api.add_operation(:describe_backup_vault, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeBackupVault"
    o.http_method = "GET"
    o.http_request_uri = "/backup-vaults/{backupVaultName}"
    o.input = Shapes::ShapeRef.new(shape: DescribeBackupVaultInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeBackupVaultOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:describe_copy_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeCopyJob"
    o.http_method = "GET"
    o.http_request_uri = "/copy-jobs/{copyJobId}"
    o.input = Shapes::ShapeRef.new(shape: DescribeCopyJobInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeCopyJobOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:describe_framework, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeFramework"
    o.http_method = "GET"
    o.http_request_uri = "/audit/frameworks/{frameworkName}"
    o.input = Shapes::ShapeRef.new(shape: DescribeFrameworkInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeFrameworkOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:describe_global_settings, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeGlobalSettings"
    o.http_method = "GET"
    o.http_request_uri = "/global-settings"
    o.input = Shapes::ShapeRef.new(shape: DescribeGlobalSettingsInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeGlobalSettingsOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:describe_protected_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeProtectedResource"
    o.http_method = "GET"
    o.http_request_uri = "/resources/{resourceArn}"
    o.input = Shapes::ShapeRef.new(shape: DescribeProtectedResourceInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeProtectedResourceOutput)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:describe_recovery_point, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeRecoveryPoint"
    o.http_method = "GET"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}"
    o.input = Shapes::ShapeRef.new(shape: DescribeRecoveryPointInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeRecoveryPointOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:describe_region_settings, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeRegionSettings"
    o.http_method = "GET"
    o.http_request_uri = "/account-settings"
    o.input = Shapes::ShapeRef.new(shape: DescribeRegionSettingsInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeRegionSettingsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:describe_report_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeReportJob"
    o.http_method = "GET"
    o.http_request_uri = "/audit/report-jobs/{reportJobId}"
    o.input = Shapes::ShapeRef.new(shape: DescribeReportJobInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeReportJobOutput)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:describe_report_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeReportPlan"
    o.http_method = "GET"
    o.http_request_uri = "/audit/report-plans/{reportPlanName}"
    o.input = Shapes::ShapeRef.new(shape: DescribeReportPlanInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeReportPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:describe_restore_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeRestoreJob"
    o.http_method = "GET"
    o.http_request_uri = "/restore-jobs/{restoreJobId}"
    o.input = Shapes::ShapeRef.new(shape: DescribeRestoreJobInput)
    o.output = Shapes::ShapeRef.new(shape: DescribeRestoreJobOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: DependencyFailureException)
  end)

  api.add_operation(:disassociate_recovery_point, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DisassociateRecoveryPoint"
    o.http_method = "POST"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}/disassociate"
    o.input = Shapes::ShapeRef.new(shape: DisassociateRecoveryPointInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidResourceStateException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:disassociate_recovery_point_from_parent, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DisassociateRecoveryPointFromParent"
    o.http_method = "DELETE"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}/parentAssociation"
    o.input = Shapes::ShapeRef.new(shape: DisassociateRecoveryPointFromParentInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:export_backup_plan_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ExportBackupPlanTemplate"
    o.http_method = "GET"
    o.http_request_uri = "/backup/plans/{backupPlanId}/toTemplate/"
    o.input = Shapes::ShapeRef.new(shape: ExportBackupPlanTemplateInput)
    o.output = Shapes::ShapeRef.new(shape: ExportBackupPlanTemplateOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:get_backup_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetBackupPlan"
    o.http_method = "GET"
    o.http_request_uri = "/backup/plans/{backupPlanId}/"
    o.input = Shapes::ShapeRef.new(shape: GetBackupPlanInput)
    o.output = Shapes::ShapeRef.new(shape: GetBackupPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:get_backup_plan_from_json, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetBackupPlanFromJSON"
    o.http_method = "POST"
    o.http_request_uri = "/backup/template/json/toPlan"
    o.input = Shapes::ShapeRef.new(shape: GetBackupPlanFromJSONInput)
    o.output = Shapes::ShapeRef.new(shape: GetBackupPlanFromJSONOutput)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:get_backup_plan_from_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetBackupPlanFromTemplate"
    o.http_method = "GET"
    o.http_request_uri = "/backup/template/plans/{templateId}/toPlan"
    o.input = Shapes::ShapeRef.new(shape: GetBackupPlanFromTemplateInput)
    o.output = Shapes::ShapeRef.new(shape: GetBackupPlanFromTemplateOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:get_backup_selection, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetBackupSelection"
    o.http_method = "GET"
    o.http_request_uri = "/backup/plans/{backupPlanId}/selections/{selectionId}"
    o.input = Shapes::ShapeRef.new(shape: GetBackupSelectionInput)
    o.output = Shapes::ShapeRef.new(shape: GetBackupSelectionOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:get_backup_vault_access_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetBackupVaultAccessPolicy"
    o.http_method = "GET"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/access-policy"
    o.input = Shapes::ShapeRef.new(shape: GetBackupVaultAccessPolicyInput)
    o.output = Shapes::ShapeRef.new(shape: GetBackupVaultAccessPolicyOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:get_backup_vault_notifications, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetBackupVaultNotifications"
    o.http_method = "GET"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/notification-configuration"
    o.input = Shapes::ShapeRef.new(shape: GetBackupVaultNotificationsInput)
    o.output = Shapes::ShapeRef.new(shape: GetBackupVaultNotificationsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:get_legal_hold, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetLegalHold"
    o.http_method = "GET"
    o.http_request_uri = "/legal-holds/{legalHoldId}/"
    o.input = Shapes::ShapeRef.new(shape: GetLegalHoldInput)
    o.output = Shapes::ShapeRef.new(shape: GetLegalHoldOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:get_recovery_point_restore_metadata, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRecoveryPointRestoreMetadata"
    o.http_method = "GET"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}/restore-metadata"
    o.input = Shapes::ShapeRef.new(shape: GetRecoveryPointRestoreMetadataInput)
    o.output = Shapes::ShapeRef.new(shape: GetRecoveryPointRestoreMetadataOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:get_restore_job_metadata, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRestoreJobMetadata"
    o.http_method = "GET"
    o.http_request_uri = "/restore-jobs/{restoreJobId}/metadata"
    o.input = Shapes::ShapeRef.new(shape: GetRestoreJobMetadataInput)
    o.output = Shapes::ShapeRef.new(shape: GetRestoreJobMetadataOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:get_restore_testing_inferred_metadata, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRestoreTestingInferredMetadata"
    o.http_method = "GET"
    o.http_request_uri = "/restore-testing/inferred-metadata"
    o.input = Shapes::ShapeRef.new(shape: GetRestoreTestingInferredMetadataInput)
    o.output = Shapes::ShapeRef.new(shape: GetRestoreTestingInferredMetadataOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:get_restore_testing_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRestoreTestingPlan"
    o.http_method = "GET"
    o.http_request_uri = "/restore-testing/plans/{RestoreTestingPlanName}"
    o.input = Shapes::ShapeRef.new(shape: GetRestoreTestingPlanInput)
    o.output = Shapes::ShapeRef.new(shape: GetRestoreTestingPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:get_restore_testing_selection, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRestoreTestingSelection"
    o.http_method = "GET"
    o.http_request_uri = "/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}"
    o.input = Shapes::ShapeRef.new(shape: GetRestoreTestingSelectionInput)
    o.output = Shapes::ShapeRef.new(shape: GetRestoreTestingSelectionOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:get_supported_resource_types, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSupportedResourceTypes"
    o.http_method = "GET"
    o.http_request_uri = "/supported-resource-types"
    o.input = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.output = Shapes::ShapeRef.new(shape: GetSupportedResourceTypesOutput)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:list_backup_job_summaries, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListBackupJobSummaries"
    o.http_method = "GET"
    o.http_request_uri = "/audit/backup-job-summaries"
    o.input = Shapes::ShapeRef.new(shape: ListBackupJobSummariesInput)
    o.output = Shapes::ShapeRef.new(shape: ListBackupJobSummariesOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_backup_jobs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListBackupJobs"
    o.http_method = "GET"
    o.http_request_uri = "/backup-jobs/"
    o.input = Shapes::ShapeRef.new(shape: ListBackupJobsInput)
    o.output = Shapes::ShapeRef.new(shape: ListBackupJobsOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_backup_plan_templates, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListBackupPlanTemplates"
    o.http_method = "GET"
    o.http_request_uri = "/backup/template/plans"
    o.input = Shapes::ShapeRef.new(shape: ListBackupPlanTemplatesInput)
    o.output = Shapes::ShapeRef.new(shape: ListBackupPlanTemplatesOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_backup_plan_versions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListBackupPlanVersions"
    o.http_method = "GET"
    o.http_request_uri = "/backup/plans/{backupPlanId}/versions/"
    o.input = Shapes::ShapeRef.new(shape: ListBackupPlanVersionsInput)
    o.output = Shapes::ShapeRef.new(shape: ListBackupPlanVersionsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_backup_plans, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListBackupPlans"
    o.http_method = "GET"
    o.http_request_uri = "/backup/plans/"
    o.input = Shapes::ShapeRef.new(shape: ListBackupPlansInput)
    o.output = Shapes::ShapeRef.new(shape: ListBackupPlansOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_backup_selections, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListBackupSelections"
    o.http_method = "GET"
    o.http_request_uri = "/backup/plans/{backupPlanId}/selections/"
    o.input = Shapes::ShapeRef.new(shape: ListBackupSelectionsInput)
    o.output = Shapes::ShapeRef.new(shape: ListBackupSelectionsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_backup_vaults, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListBackupVaults"
    o.http_method = "GET"
    o.http_request_uri = "/backup-vaults/"
    o.input = Shapes::ShapeRef.new(shape: ListBackupVaultsInput)
    o.output = Shapes::ShapeRef.new(shape: ListBackupVaultsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_copy_job_summaries, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListCopyJobSummaries"
    o.http_method = "GET"
    o.http_request_uri = "/audit/copy-job-summaries"
    o.input = Shapes::ShapeRef.new(shape: ListCopyJobSummariesInput)
    o.output = Shapes::ShapeRef.new(shape: ListCopyJobSummariesOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_copy_jobs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListCopyJobs"
    o.http_method = "GET"
    o.http_request_uri = "/copy-jobs/"
    o.input = Shapes::ShapeRef.new(shape: ListCopyJobsInput)
    o.output = Shapes::ShapeRef.new(shape: ListCopyJobsOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_frameworks, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListFrameworks"
    o.http_method = "GET"
    o.http_request_uri = "/audit/frameworks"
    o.input = Shapes::ShapeRef.new(shape: ListFrameworksInput)
    o.output = Shapes::ShapeRef.new(shape: ListFrameworksOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_legal_holds, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListLegalHolds"
    o.http_method = "GET"
    o.http_request_uri = "/legal-holds/"
    o.input = Shapes::ShapeRef.new(shape: ListLegalHoldsInput)
    o.output = Shapes::ShapeRef.new(shape: ListLegalHoldsOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_protected_resources, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListProtectedResources"
    o.http_method = "GET"
    o.http_request_uri = "/resources/"
    o.input = Shapes::ShapeRef.new(shape: ListProtectedResourcesInput)
    o.output = Shapes::ShapeRef.new(shape: ListProtectedResourcesOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_protected_resources_by_backup_vault, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListProtectedResourcesByBackupVault"
    o.http_method = "GET"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/resources/"
    o.input = Shapes::ShapeRef.new(shape: ListProtectedResourcesByBackupVaultInput)
    o.output = Shapes::ShapeRef.new(shape: ListProtectedResourcesByBackupVaultOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_recovery_points_by_backup_vault, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRecoveryPointsByBackupVault"
    o.http_method = "GET"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/recovery-points/"
    o.input = Shapes::ShapeRef.new(shape: ListRecoveryPointsByBackupVaultInput)
    o.output = Shapes::ShapeRef.new(shape: ListRecoveryPointsByBackupVaultOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_recovery_points_by_legal_hold, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRecoveryPointsByLegalHold"
    o.http_method = "GET"
    o.http_request_uri = "/legal-holds/{legalHoldId}/recovery-points"
    o.input = Shapes::ShapeRef.new(shape: ListRecoveryPointsByLegalHoldInput)
    o.output = Shapes::ShapeRef.new(shape: ListRecoveryPointsByLegalHoldOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_recovery_points_by_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRecoveryPointsByResource"
    o.http_method = "GET"
    o.http_request_uri = "/resources/{resourceArn}/recovery-points/"
    o.input = Shapes::ShapeRef.new(shape: ListRecoveryPointsByResourceInput)
    o.output = Shapes::ShapeRef.new(shape: ListRecoveryPointsByResourceOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_report_jobs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListReportJobs"
    o.http_method = "GET"
    o.http_request_uri = "/audit/report-jobs"
    o.input = Shapes::ShapeRef.new(shape: ListReportJobsInput)
    o.output = Shapes::ShapeRef.new(shape: ListReportJobsOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_report_plans, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListReportPlans"
    o.http_method = "GET"
    o.http_request_uri = "/audit/report-plans"
    o.input = Shapes::ShapeRef.new(shape: ListReportPlansInput)
    o.output = Shapes::ShapeRef.new(shape: ListReportPlansOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_restore_job_summaries, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRestoreJobSummaries"
    o.http_method = "GET"
    o.http_request_uri = "/audit/restore-job-summaries"
    o.input = Shapes::ShapeRef.new(shape: ListRestoreJobSummariesInput)
    o.output = Shapes::ShapeRef.new(shape: ListRestoreJobSummariesOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_restore_jobs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRestoreJobs"
    o.http_method = "GET"
    o.http_request_uri = "/restore-jobs/"
    o.input = Shapes::ShapeRef.new(shape: ListRestoreJobsInput)
    o.output = Shapes::ShapeRef.new(shape: ListRestoreJobsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_restore_jobs_by_protected_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRestoreJobsByProtectedResource"
    o.http_method = "GET"
    o.http_request_uri = "/resources/{resourceArn}/restore-jobs/"
    o.input = Shapes::ShapeRef.new(shape: ListRestoreJobsByProtectedResourceInput)
    o.output = Shapes::ShapeRef.new(shape: ListRestoreJobsByProtectedResourceOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_restore_testing_plans, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRestoreTestingPlans"
    o.http_method = "GET"
    o.http_request_uri = "/restore-testing/plans"
    o.input = Shapes::ShapeRef.new(shape: ListRestoreTestingPlansInput)
    o.output = Shapes::ShapeRef.new(shape: ListRestoreTestingPlansOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_restore_testing_selections, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRestoreTestingSelections"
    o.http_method = "GET"
    o.http_request_uri = "/restore-testing/plans/{RestoreTestingPlanName}/selections"
    o.input = Shapes::ShapeRef.new(shape: ListRestoreTestingSelectionsInput)
    o.output = Shapes::ShapeRef.new(shape: ListRestoreTestingSelectionsOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:list_tags, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListTags"
    o.http_method = "GET"
    o.http_request_uri = "/tags/{resourceArn}/"
    o.input = Shapes::ShapeRef.new(shape: ListTagsInput)
    o.output = Shapes::ShapeRef.new(shape: ListTagsOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o[:pager] = Aws::Pager.new(
      limit_key: "max_results",
      tokens: {
        "next_token" => "next_token"
      }
    )
  end)

  api.add_operation(:put_backup_vault_access_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutBackupVaultAccessPolicy"
    o.http_method = "PUT"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/access-policy"
    o.input = Shapes::ShapeRef.new(shape: PutBackupVaultAccessPolicyInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:put_backup_vault_lock_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutBackupVaultLockConfiguration"
    o.http_method = "PUT"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/vault-lock"
    o.input = Shapes::ShapeRef.new(shape: PutBackupVaultLockConfigurationInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:put_backup_vault_notifications, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutBackupVaultNotifications"
    o.http_method = "PUT"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/notification-configuration"
    o.input = Shapes::ShapeRef.new(shape: PutBackupVaultNotificationsInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:put_restore_validation_result, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutRestoreValidationResult"
    o.http_method = "PUT"
    o.http_request_uri = "/restore-jobs/{restoreJobId}/validations"
    o.input = Shapes::ShapeRef.new(shape: PutRestoreValidationResultInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:start_backup_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "StartBackupJob"
    o.http_method = "PUT"
    o.http_request_uri = "/backup-jobs"
    o.input = Shapes::ShapeRef.new(shape: StartBackupJobInput)
    o.output = Shapes::ShapeRef.new(shape: StartBackupJobOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
  end)

  api.add_operation(:start_copy_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "StartCopyJob"
    o.http_method = "PUT"
    o.http_request_uri = "/copy-jobs"
    o.input = Shapes::ShapeRef.new(shape: StartCopyJobInput)
    o.output = Shapes::ShapeRef.new(shape: StartCopyJobOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:start_report_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "StartReportJob"
    o.http_method = "POST"
    o.http_request_uri = "/audit/report-jobs/{reportPlanName}"
    o.input = Shapes::ShapeRef.new(shape: StartReportJobInput)
    o.output = Shapes::ShapeRef.new(shape: StartReportJobOutput)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
  end)

  api.add_operation(:start_restore_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "StartRestoreJob"
    o.http_method = "PUT"
    o.http_request_uri = "/restore-jobs"
    o.input = Shapes::ShapeRef.new(shape: StartRestoreJobInput)
    o.output = Shapes::ShapeRef.new(shape: StartRestoreJobOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:stop_backup_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "StopBackupJob"
    o.http_method = "POST"
    o.http_request_uri = "/backup-jobs/{backupJobId}"
    o.input = Shapes::ShapeRef.new(shape: StopBackupJobInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "TagResource"
    o.http_method = "POST"
    o.http_request_uri = "/tags/{resourceArn}"
    o.input = Shapes::ShapeRef.new(shape: TagResourceInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
  end)

  api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UntagResource"
    o.http_method = "POST"
    o.http_request_uri = "/untag/{resourceArn}"
    o.input = Shapes::ShapeRef.new(shape: UntagResourceInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:update_backup_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateBackupPlan"
    o.http_method = "POST"
    o.http_request_uri = "/backup/plans/{backupPlanId}"
    o.input = Shapes::ShapeRef.new(shape: UpdateBackupPlanInput)
    o.output = Shapes::ShapeRef.new(shape: UpdateBackupPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:update_framework, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateFramework"
    o.http_method = "PUT"
    o.http_request_uri = "/audit/frameworks/{frameworkName}"
    o.input = Shapes::ShapeRef.new(shape: UpdateFrameworkInput)
    o.output = Shapes::ShapeRef.new(shape: UpdateFrameworkOutput)
    o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:update_global_settings, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateGlobalSettings"
    o.http_method = "PUT"
    o.http_request_uri = "/global-settings"
    o.input = Shapes::ShapeRef.new(shape: UpdateGlobalSettingsInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
  end)

  api.add_operation(:update_recovery_point_lifecycle, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateRecoveryPointLifecycle"
    o.http_method = "POST"
    o.http_request_uri = "/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}"
    o.input = Shapes::ShapeRef.new(shape: UpdateRecoveryPointLifecycleInput)
    o.output = Shapes::ShapeRef.new(shape: UpdateRecoveryPointLifecycleOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:update_region_settings, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateRegionSettings"
    o.http_method = "PUT"
    o.http_request_uri = "/account-settings"
    o.input = Shapes::ShapeRef.new(shape: UpdateRegionSettingsInput)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
  end)

  api.add_operation(:update_report_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateReportPlan"
    o.http_method = "PUT"
    o.http_request_uri = "/audit/report-plans/{reportPlanName}"
    o.input = Shapes::ShapeRef.new(shape: UpdateReportPlanInput)
    o.output = Shapes::ShapeRef.new(shape: UpdateReportPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
  end)

  api.add_operation(:update_restore_testing_plan, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateRestoreTestingPlan"
    o.http_method = "PUT"
    o.http_request_uri = "/restore-testing/plans/{RestoreTestingPlanName}"
    o.input = Shapes::ShapeRef.new(shape: UpdateRestoreTestingPlanInput)
    o.output = Shapes::ShapeRef.new(shape: UpdateRestoreTestingPlanOutput)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)

  api.add_operation(:update_restore_testing_selection, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateRestoreTestingSelection"
    o.http_method = "PUT"
    o.http_request_uri = "/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}"
    o.input = Shapes::ShapeRef.new(shape: UpdateRestoreTestingSelectionInput)
    o.output = Shapes::ShapeRef.new(shape: UpdateRestoreTestingSelectionOutput)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
    o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: MissingParameterValueException)
    o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
  end)
end