aws-sdk-backup 1.61.0 → 1.62.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -469,6 +469,7 @@ module Aws::Backup
469
469
  # lifecycle: {
470
470
  # move_to_cold_storage_after_days: 1,
471
471
  # delete_after_days: 1,
472
+ # opt_in_to_archive_for_supported_resources: false,
472
473
  # },
473
474
  # recovery_point_tags: {
474
475
  # "TagKey" => "TagValue",
@@ -478,6 +479,7 @@ module Aws::Backup
478
479
  # lifecycle: {
479
480
  # move_to_cold_storage_after_days: 1,
480
481
  # delete_after_days: 1,
482
+ # opt_in_to_archive_for_supported_resources: false,
481
483
  # },
482
484
  # destination_backup_vault_arn: "ARN", # required
483
485
  # },
@@ -857,6 +859,9 @@ module Aws::Backup
857
859
  # @option params [String] :creator_request_id
858
860
  # This is the ID of the creation request.
859
861
  #
862
+ # This parameter is optional. If used, this parameter must contain 1 to
863
+ # 50 alphanumeric or '-\_.' characters.
864
+ #
860
865
  # @option params [required, Integer] :min_retention_days
861
866
  # This setting specifies the minimum retention period that the vault
862
867
  # retains its recovery points. If this parameter is not specified, no
@@ -1007,6 +1012,178 @@ module Aws::Backup
1007
1012
  req.send_request(options)
1008
1013
  end
1009
1014
 
1015
+ # This is the first of two steps to create a restore testing plan; once
1016
+ # this request is successful, finish the procedure with request
1017
+ # CreateRestoreTestingSelection.
1018
+ #
1019
+ # You must include the parameter RestoreTestingPlan. You may optionally
1020
+ # include CreatorRequestId and Tags.
1021
+ #
1022
+ # @option params [String] :creator_request_id
1023
+ # This is a unique string that identifies the request and allows failed
1024
+ # requests to be retriedwithout the risk of running the operation twice.
1025
+ # This parameter is optional. If used, this parameter must contain 1 to
1026
+ # 50 alphanumeric or '-\_.' characters.
1027
+ #
1028
+ # @option params [required, Types::RestoreTestingPlanForCreate] :restore_testing_plan
1029
+ # A restore testing plan must contain a unique `RestoreTestingPlanName`
1030
+ # string you create and must contain a `ScheduleExpression` cron. You
1031
+ # may optionally include a `StartWindowHours` integer and a
1032
+ # `CreatorRequestId` string.
1033
+ #
1034
+ # The `RestoreTestingPlanName` is a unique string that is the name of
1035
+ # the restore testing plan. This cannot be changed after creation, and
1036
+ # it must consist of only alphanumeric characters and underscores.
1037
+ #
1038
+ # @option params [Hash<String,String>] :tags
1039
+ # Optional tags to include. A tag is a key-value pair you can use to
1040
+ # manage, filter, and search for your resources. Allowed characters
1041
+ # include UTF-8 letters,numbers, spaces, and the following characters: +
1042
+ # - = . \_ : /.
1043
+ #
1044
+ # @return [Types::CreateRestoreTestingPlanOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1045
+ #
1046
+ # * {Types::CreateRestoreTestingPlanOutput#creation_time #creation_time} => Time
1047
+ # * {Types::CreateRestoreTestingPlanOutput#restore_testing_plan_arn #restore_testing_plan_arn} => String
1048
+ # * {Types::CreateRestoreTestingPlanOutput#restore_testing_plan_name #restore_testing_plan_name} => String
1049
+ #
1050
+ # @example Request syntax with placeholder values
1051
+ #
1052
+ # resp = client.create_restore_testing_plan({
1053
+ # creator_request_id: "String",
1054
+ # restore_testing_plan: { # required
1055
+ # recovery_point_selection: { # required
1056
+ # algorithm: "LATEST_WITHIN_WINDOW", # accepts LATEST_WITHIN_WINDOW, RANDOM_WITHIN_WINDOW
1057
+ # exclude_vaults: ["string"],
1058
+ # include_vaults: ["string"],
1059
+ # recovery_point_types: ["CONTINUOUS"], # accepts CONTINUOUS, SNAPSHOT
1060
+ # selection_window_days: 1,
1061
+ # },
1062
+ # restore_testing_plan_name: "String", # required
1063
+ # schedule_expression: "String", # required
1064
+ # schedule_expression_timezone: "String",
1065
+ # start_window_hours: 1,
1066
+ # },
1067
+ # tags: {
1068
+ # "String" => "String",
1069
+ # },
1070
+ # })
1071
+ #
1072
+ # @example Response structure
1073
+ #
1074
+ # resp.creation_time #=> Time
1075
+ # resp.restore_testing_plan_arn #=> String
1076
+ # resp.restore_testing_plan_name #=> String
1077
+ #
1078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingPlan AWS API Documentation
1079
+ #
1080
+ # @overload create_restore_testing_plan(params = {})
1081
+ # @param [Hash] params ({})
1082
+ def create_restore_testing_plan(params = {}, options = {})
1083
+ req = build_request(:create_restore_testing_plan, params)
1084
+ req.send_request(options)
1085
+ end
1086
+
1087
+ # This request can be sent after CreateRestoreTestingPlan request
1088
+ # returns successfully. This is the second part of creating a resource
1089
+ # testing plan, and it must be completed sequentially.
1090
+ #
1091
+ # This consists of `RestoreTestingSelectionName`,
1092
+ # `ProtectedResourceType`, and one of the following:
1093
+ #
1094
+ # * `ProtectedResourceArns`
1095
+ #
1096
+ # * `ProtectedResourceConditions`
1097
+ #
1098
+ # Each protected resource type can have one single value.
1099
+ #
1100
+ # A restore testing selection can include a wildcard value ("*") for
1101
+ # `ProtectedResourceArns` along with `ProtectedResourceConditions`.
1102
+ # Alternatively, you can include up to 30 specific protected resource
1103
+ # ARNs in `ProtectedResourceArns`.
1104
+ #
1105
+ # Cannot select by both protected resource types AND specific ARNs.
1106
+ # Request will fail if both are included.
1107
+ #
1108
+ # @option params [String] :creator_request_id
1109
+ # This is an optional unique string that identifies the request and
1110
+ # allows failed requests to be retried without the risk of running the
1111
+ # operation twice. If used, this parameter must contain 1 to 50
1112
+ # alphanumeric or '-\_.' characters.
1113
+ #
1114
+ # @option params [required, String] :restore_testing_plan_name
1115
+ # Input the restore testing plan name that was returned from the related
1116
+ # CreateRestoreTestingPlan request.
1117
+ #
1118
+ # @option params [required, Types::RestoreTestingSelectionForCreate] :restore_testing_selection
1119
+ # This consists of `RestoreTestingSelectionName`,
1120
+ # `ProtectedResourceType`, and one of the following:
1121
+ #
1122
+ # * `ProtectedResourceArns`
1123
+ #
1124
+ # * `ProtectedResourceConditions`
1125
+ #
1126
+ # Each protected resource type can have one single value.
1127
+ #
1128
+ # A restore testing selection can include a wildcard value ("*") for
1129
+ # `ProtectedResourceArns` along with `ProtectedResourceConditions`.
1130
+ # Alternatively, you can include up to 30 specific protected resource
1131
+ # ARNs in `ProtectedResourceArns`.
1132
+ #
1133
+ # @return [Types::CreateRestoreTestingSelectionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1134
+ #
1135
+ # * {Types::CreateRestoreTestingSelectionOutput#creation_time #creation_time} => Time
1136
+ # * {Types::CreateRestoreTestingSelectionOutput#restore_testing_plan_arn #restore_testing_plan_arn} => String
1137
+ # * {Types::CreateRestoreTestingSelectionOutput#restore_testing_plan_name #restore_testing_plan_name} => String
1138
+ # * {Types::CreateRestoreTestingSelectionOutput#restore_testing_selection_name #restore_testing_selection_name} => String
1139
+ #
1140
+ # @example Request syntax with placeholder values
1141
+ #
1142
+ # resp = client.create_restore_testing_selection({
1143
+ # creator_request_id: "String",
1144
+ # restore_testing_plan_name: "String", # required
1145
+ # restore_testing_selection: { # required
1146
+ # iam_role_arn: "String", # required
1147
+ # protected_resource_arns: ["string"],
1148
+ # protected_resource_conditions: {
1149
+ # string_equals: [
1150
+ # {
1151
+ # key: "String", # required
1152
+ # value: "String", # required
1153
+ # },
1154
+ # ],
1155
+ # string_not_equals: [
1156
+ # {
1157
+ # key: "String", # required
1158
+ # value: "String", # required
1159
+ # },
1160
+ # ],
1161
+ # },
1162
+ # protected_resource_type: "String", # required
1163
+ # restore_metadata_overrides: {
1164
+ # "String" => "String",
1165
+ # },
1166
+ # restore_testing_selection_name: "String", # required
1167
+ # validation_window_hours: 1,
1168
+ # },
1169
+ # })
1170
+ #
1171
+ # @example Response structure
1172
+ #
1173
+ # resp.creation_time #=> Time
1174
+ # resp.restore_testing_plan_arn #=> String
1175
+ # resp.restore_testing_plan_name #=> String
1176
+ # resp.restore_testing_selection_name #=> String
1177
+ #
1178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingSelection AWS API Documentation
1179
+ #
1180
+ # @overload create_restore_testing_selection(params = {})
1181
+ # @param [Hash] params ({})
1182
+ def create_restore_testing_selection(params = {}, options = {})
1183
+ req = build_request(:create_restore_testing_selection, params)
1184
+ req.send_request(options)
1185
+ end
1186
+
1010
1187
  # Deletes a backup plan. A backup plan can only be deleted after all
1011
1188
  # associated selections of resources have been deleted. Deleting a
1012
1189
  # backup plan deletes the current version of a backup plan. Previous
@@ -1277,6 +1454,63 @@ module Aws::Backup
1277
1454
  req.send_request(options)
1278
1455
  end
1279
1456
 
1457
+ # This request deletes the specified restore testing plan.
1458
+ #
1459
+ # Deletion can only successfully occur if all associated restore testing
1460
+ # selections are deleted first.
1461
+ #
1462
+ # @option params [required, String] :restore_testing_plan_name
1463
+ # Required unique name of the restore testing plan you wish to delete.
1464
+ #
1465
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1466
+ #
1467
+ # @example Request syntax with placeholder values
1468
+ #
1469
+ # resp = client.delete_restore_testing_plan({
1470
+ # restore_testing_plan_name: "String", # required
1471
+ # })
1472
+ #
1473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingPlan AWS API Documentation
1474
+ #
1475
+ # @overload delete_restore_testing_plan(params = {})
1476
+ # @param [Hash] params ({})
1477
+ def delete_restore_testing_plan(params = {}, options = {})
1478
+ req = build_request(:delete_restore_testing_plan, params)
1479
+ req.send_request(options)
1480
+ end
1481
+
1482
+ # Input the Restore Testing Plan name and Restore Testing Selection
1483
+ # name.
1484
+ #
1485
+ # All testing selections associated with a restore testing plan must be
1486
+ # deleted before the restore testing plan can be deleted.
1487
+ #
1488
+ # @option params [required, String] :restore_testing_plan_name
1489
+ # Required unique name of the restore testing plan that contains the
1490
+ # restore testing selection you wish to delete.
1491
+ #
1492
+ # @option params [required, String] :restore_testing_selection_name
1493
+ # Required unique name of the restore testing selection you wish to
1494
+ # delete.
1495
+ #
1496
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1497
+ #
1498
+ # @example Request syntax with placeholder values
1499
+ #
1500
+ # resp = client.delete_restore_testing_selection({
1501
+ # restore_testing_plan_name: "String", # required
1502
+ # restore_testing_selection_name: "String", # required
1503
+ # })
1504
+ #
1505
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingSelection AWS API Documentation
1506
+ #
1507
+ # @overload delete_restore_testing_selection(params = {})
1508
+ # @param [Hash] params ({})
1509
+ def delete_restore_testing_selection(params = {}, options = {})
1510
+ req = build_request(:delete_restore_testing_selection, params)
1511
+ req.send_request(options)
1512
+ end
1513
+
1280
1514
  # Returns backup job details for the specified `BackupJobId`.
1281
1515
  #
1282
1516
  # @option params [required, String] :backup_job_id
@@ -1309,6 +1543,7 @@ module Aws::Backup
1309
1543
  # * {Types::DescribeBackupJobOutput#number_of_child_jobs #number_of_child_jobs} => Integer
1310
1544
  # * {Types::DescribeBackupJobOutput#child_jobs_in_state #child_jobs_in_state} => Hash&lt;String,Integer&gt;
1311
1545
  # * {Types::DescribeBackupJobOutput#resource_name #resource_name} => String
1546
+ # * {Types::DescribeBackupJobOutput#initiation_date #initiation_date} => Time
1312
1547
  # * {Types::DescribeBackupJobOutput#message_category #message_category} => String
1313
1548
  #
1314
1549
  # @example Request syntax with placeholder values
@@ -1349,6 +1584,7 @@ module Aws::Backup
1349
1584
  # resp.child_jobs_in_state #=> Hash
1350
1585
  # resp.child_jobs_in_state["BackupJobState"] #=> Integer
1351
1586
  # resp.resource_name #=> String
1587
+ # resp.initiation_date #=> Time
1352
1588
  # resp.message_category #=> String
1353
1589
  #
1354
1590
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJob AWS API Documentation
@@ -1559,6 +1795,11 @@ module Aws::Backup
1559
1795
  # * {Types::DescribeProtectedResourceOutput#resource_type #resource_type} => String
1560
1796
  # * {Types::DescribeProtectedResourceOutput#last_backup_time #last_backup_time} => Time
1561
1797
  # * {Types::DescribeProtectedResourceOutput#resource_name #resource_name} => String
1798
+ # * {Types::DescribeProtectedResourceOutput#last_backup_vault_arn #last_backup_vault_arn} => String
1799
+ # * {Types::DescribeProtectedResourceOutput#last_recovery_point_arn #last_recovery_point_arn} => String
1800
+ # * {Types::DescribeProtectedResourceOutput#latest_restore_execution_time_minutes #latest_restore_execution_time_minutes} => Integer
1801
+ # * {Types::DescribeProtectedResourceOutput#latest_restore_job_creation_date #latest_restore_job_creation_date} => Time
1802
+ # * {Types::DescribeProtectedResourceOutput#latest_restore_recovery_point_creation_date #latest_restore_recovery_point_creation_date} => Time
1562
1803
  #
1563
1804
  # @example Request syntax with placeholder values
1564
1805
  #
@@ -1572,6 +1813,11 @@ module Aws::Backup
1572
1813
  # resp.resource_type #=> String
1573
1814
  # resp.last_backup_time #=> Time
1574
1815
  # resp.resource_name #=> String
1816
+ # resp.last_backup_vault_arn #=> String
1817
+ # resp.last_recovery_point_arn #=> String
1818
+ # resp.latest_restore_execution_time_minutes #=> Integer
1819
+ # resp.latest_restore_job_creation_date #=> Time
1820
+ # resp.latest_restore_recovery_point_creation_date #=> Time
1575
1821
  #
1576
1822
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeProtectedResource AWS API Documentation
1577
1823
  #
@@ -1655,6 +1901,7 @@ module Aws::Backup
1655
1901
  # resp.calculated_lifecycle.delete_at #=> Time
1656
1902
  # resp.lifecycle.move_to_cold_storage_after_days #=> Integer
1657
1903
  # resp.lifecycle.delete_after_days #=> Integer
1904
+ # resp.lifecycle.opt_in_to_archive_for_supported_resources #=> Boolean
1658
1905
  # resp.encryption_key_arn #=> String
1659
1906
  # resp.is_encrypted #=> Boolean
1660
1907
  # resp.storage_class #=> String, one of "WARM", "COLD", "DELETED"
@@ -1810,6 +2057,12 @@ module Aws::Backup
1810
2057
  # * {Types::DescribeRestoreJobOutput#expected_completion_time_minutes #expected_completion_time_minutes} => Integer
1811
2058
  # * {Types::DescribeRestoreJobOutput#created_resource_arn #created_resource_arn} => String
1812
2059
  # * {Types::DescribeRestoreJobOutput#resource_type #resource_type} => String
2060
+ # * {Types::DescribeRestoreJobOutput#recovery_point_creation_date #recovery_point_creation_date} => Time
2061
+ # * {Types::DescribeRestoreJobOutput#created_by #created_by} => Types::RestoreJobCreator
2062
+ # * {Types::DescribeRestoreJobOutput#validation_status #validation_status} => String
2063
+ # * {Types::DescribeRestoreJobOutput#validation_status_message #validation_status_message} => String
2064
+ # * {Types::DescribeRestoreJobOutput#deletion_status #deletion_status} => String
2065
+ # * {Types::DescribeRestoreJobOutput#deletion_status_message #deletion_status_message} => String
1813
2066
  #
1814
2067
  # @example Request syntax with placeholder values
1815
2068
  #
@@ -1832,6 +2085,12 @@ module Aws::Backup
1832
2085
  # resp.expected_completion_time_minutes #=> Integer
1833
2086
  # resp.created_resource_arn #=> String
1834
2087
  # resp.resource_type #=> String
2088
+ # resp.recovery_point_creation_date #=> Time
2089
+ # resp.created_by.restore_testing_plan_arn #=> String
2090
+ # resp.validation_status #=> String, one of "FAILED", "SUCCESSFUL", "TIMED_OUT", "VALIDATING"
2091
+ # resp.validation_status_message #=> String
2092
+ # resp.deletion_status #=> String, one of "DELETING", "FAILED", "SUCCESSFUL"
2093
+ # resp.deletion_status_message #=> String
1835
2094
  #
1836
2095
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRestoreJob AWS API Documentation
1837
2096
  #
@@ -1979,12 +2238,14 @@ module Aws::Backup
1979
2238
  # resp.backup_plan.rules[0].completion_window_minutes #=> Integer
1980
2239
  # resp.backup_plan.rules[0].lifecycle.move_to_cold_storage_after_days #=> Integer
1981
2240
  # resp.backup_plan.rules[0].lifecycle.delete_after_days #=> Integer
2241
+ # resp.backup_plan.rules[0].lifecycle.opt_in_to_archive_for_supported_resources #=> Boolean
1982
2242
  # resp.backup_plan.rules[0].recovery_point_tags #=> Hash
1983
2243
  # resp.backup_plan.rules[0].recovery_point_tags["TagKey"] #=> String
1984
2244
  # resp.backup_plan.rules[0].rule_id #=> String
1985
2245
  # resp.backup_plan.rules[0].copy_actions #=> Array
1986
2246
  # resp.backup_plan.rules[0].copy_actions[0].lifecycle.move_to_cold_storage_after_days #=> Integer
1987
2247
  # resp.backup_plan.rules[0].copy_actions[0].lifecycle.delete_after_days #=> Integer
2248
+ # resp.backup_plan.rules[0].copy_actions[0].lifecycle.opt_in_to_archive_for_supported_resources #=> Boolean
1988
2249
  # resp.backup_plan.rules[0].copy_actions[0].destination_backup_vault_arn #=> String
1989
2250
  # resp.backup_plan.rules[0].enable_continuous_backup #=> Boolean
1990
2251
  # resp.backup_plan.rules[0].schedule_expression_timezone #=> String
@@ -2039,12 +2300,14 @@ module Aws::Backup
2039
2300
  # resp.backup_plan.rules[0].completion_window_minutes #=> Integer
2040
2301
  # resp.backup_plan.rules[0].lifecycle.move_to_cold_storage_after_days #=> Integer
2041
2302
  # resp.backup_plan.rules[0].lifecycle.delete_after_days #=> Integer
2303
+ # resp.backup_plan.rules[0].lifecycle.opt_in_to_archive_for_supported_resources #=> Boolean
2042
2304
  # resp.backup_plan.rules[0].recovery_point_tags #=> Hash
2043
2305
  # resp.backup_plan.rules[0].recovery_point_tags["TagKey"] #=> String
2044
2306
  # resp.backup_plan.rules[0].rule_id #=> String
2045
2307
  # resp.backup_plan.rules[0].copy_actions #=> Array
2046
2308
  # resp.backup_plan.rules[0].copy_actions[0].lifecycle.move_to_cold_storage_after_days #=> Integer
2047
2309
  # resp.backup_plan.rules[0].copy_actions[0].lifecycle.delete_after_days #=> Integer
2310
+ # resp.backup_plan.rules[0].copy_actions[0].lifecycle.opt_in_to_archive_for_supported_resources #=> Boolean
2048
2311
  # resp.backup_plan.rules[0].copy_actions[0].destination_backup_vault_arn #=> String
2049
2312
  # resp.backup_plan.rules[0].enable_continuous_backup #=> Boolean
2050
2313
  # resp.backup_plan.rules[0].schedule_expression_timezone #=> String
@@ -2088,12 +2351,14 @@ module Aws::Backup
2088
2351
  # resp.backup_plan_document.rules[0].completion_window_minutes #=> Integer
2089
2352
  # resp.backup_plan_document.rules[0].lifecycle.move_to_cold_storage_after_days #=> Integer
2090
2353
  # resp.backup_plan_document.rules[0].lifecycle.delete_after_days #=> Integer
2354
+ # resp.backup_plan_document.rules[0].lifecycle.opt_in_to_archive_for_supported_resources #=> Boolean
2091
2355
  # resp.backup_plan_document.rules[0].recovery_point_tags #=> Hash
2092
2356
  # resp.backup_plan_document.rules[0].recovery_point_tags["TagKey"] #=> String
2093
2357
  # resp.backup_plan_document.rules[0].rule_id #=> String
2094
2358
  # resp.backup_plan_document.rules[0].copy_actions #=> Array
2095
2359
  # resp.backup_plan_document.rules[0].copy_actions[0].lifecycle.move_to_cold_storage_after_days #=> Integer
2096
2360
  # resp.backup_plan_document.rules[0].copy_actions[0].lifecycle.delete_after_days #=> Integer
2361
+ # resp.backup_plan_document.rules[0].copy_actions[0].lifecycle.opt_in_to_archive_for_supported_resources #=> Boolean
2097
2362
  # resp.backup_plan_document.rules[0].copy_actions[0].destination_backup_vault_arn #=> String
2098
2363
  # resp.backup_plan_document.rules[0].enable_continuous_backup #=> Boolean
2099
2364
  # resp.backup_plan_document.rules[0].schedule_expression_timezone #=> String
@@ -2323,6 +2588,7 @@ module Aws::Backup
2323
2588
  # * {Types::GetRecoveryPointRestoreMetadataOutput#backup_vault_arn #backup_vault_arn} => String
2324
2589
  # * {Types::GetRecoveryPointRestoreMetadataOutput#recovery_point_arn #recovery_point_arn} => String
2325
2590
  # * {Types::GetRecoveryPointRestoreMetadataOutput#restore_metadata #restore_metadata} => Hash&lt;String,String&gt;
2591
+ # * {Types::GetRecoveryPointRestoreMetadataOutput#resource_type #resource_type} => String
2326
2592
  #
2327
2593
  # @example Request syntax with placeholder values
2328
2594
  #
@@ -2338,6 +2604,7 @@ module Aws::Backup
2338
2604
  # resp.recovery_point_arn #=> String
2339
2605
  # resp.restore_metadata #=> Hash
2340
2606
  # resp.restore_metadata["MetadataKey"] #=> String
2607
+ # resp.resource_type #=> String
2341
2608
  #
2342
2609
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRecoveryPointRestoreMetadata AWS API Documentation
2343
2610
  #
@@ -2348,6 +2615,177 @@ module Aws::Backup
2348
2615
  req.send_request(options)
2349
2616
  end
2350
2617
 
2618
+ # This request returns the metadata for the specified restore job.
2619
+ #
2620
+ # @option params [required, String] :restore_job_id
2621
+ # This is a unique identifier of a restore job within Backup.
2622
+ #
2623
+ # @return [Types::GetRestoreJobMetadataOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2624
+ #
2625
+ # * {Types::GetRestoreJobMetadataOutput#restore_job_id #restore_job_id} => String
2626
+ # * {Types::GetRestoreJobMetadataOutput#metadata #metadata} => Hash&lt;String,String&gt;
2627
+ #
2628
+ # @example Request syntax with placeholder values
2629
+ #
2630
+ # resp = client.get_restore_job_metadata({
2631
+ # restore_job_id: "RestoreJobId", # required
2632
+ # })
2633
+ #
2634
+ # @example Response structure
2635
+ #
2636
+ # resp.restore_job_id #=> String
2637
+ # resp.metadata #=> Hash
2638
+ # resp.metadata["MetadataKey"] #=> String
2639
+ #
2640
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreJobMetadata AWS API Documentation
2641
+ #
2642
+ # @overload get_restore_job_metadata(params = {})
2643
+ # @param [Hash] params ({})
2644
+ def get_restore_job_metadata(params = {}, options = {})
2645
+ req = build_request(:get_restore_job_metadata, params)
2646
+ req.send_request(options)
2647
+ end
2648
+
2649
+ # This request returns the minimal required set of metadata needed to
2650
+ # start a restore job with secure default settings. `BackupVaultName`
2651
+ # and `RecoveryPointArn` are required parameters. `BackupVaultAccountId`
2652
+ # is an optional parameter.
2653
+ #
2654
+ # @option params [String] :backup_vault_account_id
2655
+ # This is the account ID of the specified backup vault.
2656
+ #
2657
+ # @option params [required, String] :backup_vault_name
2658
+ # The name of a logical container where backups are stored. Backup
2659
+ # vaults are identified by names that are unique to the account used to
2660
+ # create them and the Amazon Web ServicesRegion where they are created.
2661
+ # They consist of letters, numbers, and hyphens.
2662
+ #
2663
+ # @option params [required, String] :recovery_point_arn
2664
+ # An Amazon Resource Name (ARN) that uniquely identifies a recovery
2665
+ # point; for example,
2666
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
2667
+ #
2668
+ # @return [Types::GetRestoreTestingInferredMetadataOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2669
+ #
2670
+ # * {Types::GetRestoreTestingInferredMetadataOutput#inferred_metadata #inferred_metadata} => Hash&lt;String,String&gt;
2671
+ #
2672
+ # @example Request syntax with placeholder values
2673
+ #
2674
+ # resp = client.get_restore_testing_inferred_metadata({
2675
+ # backup_vault_account_id: "String",
2676
+ # backup_vault_name: "String", # required
2677
+ # recovery_point_arn: "String", # required
2678
+ # })
2679
+ #
2680
+ # @example Response structure
2681
+ #
2682
+ # resp.inferred_metadata #=> Hash
2683
+ # resp.inferred_metadata["string"] #=> String
2684
+ #
2685
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingInferredMetadata AWS API Documentation
2686
+ #
2687
+ # @overload get_restore_testing_inferred_metadata(params = {})
2688
+ # @param [Hash] params ({})
2689
+ def get_restore_testing_inferred_metadata(params = {}, options = {})
2690
+ req = build_request(:get_restore_testing_inferred_metadata, params)
2691
+ req.send_request(options)
2692
+ end
2693
+
2694
+ # Returns `RestoreTestingPlan` details for the specified
2695
+ # `RestoreTestingPlanName`. The details are the body of a restore
2696
+ # testing plan in JSON format, in addition to plan metadata.
2697
+ #
2698
+ # @option params [required, String] :restore_testing_plan_name
2699
+ # Required unique name of the restore testing plan.
2700
+ #
2701
+ # @return [Types::GetRestoreTestingPlanOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2702
+ #
2703
+ # * {Types::GetRestoreTestingPlanOutput#restore_testing_plan #restore_testing_plan} => Types::RestoreTestingPlanForGet
2704
+ #
2705
+ # @example Request syntax with placeholder values
2706
+ #
2707
+ # resp = client.get_restore_testing_plan({
2708
+ # restore_testing_plan_name: "String", # required
2709
+ # })
2710
+ #
2711
+ # @example Response structure
2712
+ #
2713
+ # resp.restore_testing_plan.creation_time #=> Time
2714
+ # resp.restore_testing_plan.creator_request_id #=> String
2715
+ # resp.restore_testing_plan.last_execution_time #=> Time
2716
+ # resp.restore_testing_plan.last_update_time #=> Time
2717
+ # resp.restore_testing_plan.recovery_point_selection.algorithm #=> String, one of "LATEST_WITHIN_WINDOW", "RANDOM_WITHIN_WINDOW"
2718
+ # resp.restore_testing_plan.recovery_point_selection.exclude_vaults #=> Array
2719
+ # resp.restore_testing_plan.recovery_point_selection.exclude_vaults[0] #=> String
2720
+ # resp.restore_testing_plan.recovery_point_selection.include_vaults #=> Array
2721
+ # resp.restore_testing_plan.recovery_point_selection.include_vaults[0] #=> String
2722
+ # resp.restore_testing_plan.recovery_point_selection.recovery_point_types #=> Array
2723
+ # resp.restore_testing_plan.recovery_point_selection.recovery_point_types[0] #=> String, one of "CONTINUOUS", "SNAPSHOT"
2724
+ # resp.restore_testing_plan.recovery_point_selection.selection_window_days #=> Integer
2725
+ # resp.restore_testing_plan.restore_testing_plan_arn #=> String
2726
+ # resp.restore_testing_plan.restore_testing_plan_name #=> String
2727
+ # resp.restore_testing_plan.schedule_expression #=> String
2728
+ # resp.restore_testing_plan.schedule_expression_timezone #=> String
2729
+ # resp.restore_testing_plan.start_window_hours #=> Integer
2730
+ #
2731
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingPlan AWS API Documentation
2732
+ #
2733
+ # @overload get_restore_testing_plan(params = {})
2734
+ # @param [Hash] params ({})
2735
+ def get_restore_testing_plan(params = {}, options = {})
2736
+ req = build_request(:get_restore_testing_plan, params)
2737
+ req.send_request(options)
2738
+ end
2739
+
2740
+ # Returns RestoreTestingSelection, which displays resources and elements
2741
+ # of the restore testing plan.
2742
+ #
2743
+ # @option params [required, String] :restore_testing_plan_name
2744
+ # Required unique name of the restore testing plan.
2745
+ #
2746
+ # @option params [required, String] :restore_testing_selection_name
2747
+ # Required unique name of the restore testing selection.
2748
+ #
2749
+ # @return [Types::GetRestoreTestingSelectionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2750
+ #
2751
+ # * {Types::GetRestoreTestingSelectionOutput#restore_testing_selection #restore_testing_selection} => Types::RestoreTestingSelectionForGet
2752
+ #
2753
+ # @example Request syntax with placeholder values
2754
+ #
2755
+ # resp = client.get_restore_testing_selection({
2756
+ # restore_testing_plan_name: "String", # required
2757
+ # restore_testing_selection_name: "String", # required
2758
+ # })
2759
+ #
2760
+ # @example Response structure
2761
+ #
2762
+ # resp.restore_testing_selection.creation_time #=> Time
2763
+ # resp.restore_testing_selection.creator_request_id #=> String
2764
+ # resp.restore_testing_selection.iam_role_arn #=> String
2765
+ # resp.restore_testing_selection.protected_resource_arns #=> Array
2766
+ # resp.restore_testing_selection.protected_resource_arns[0] #=> String
2767
+ # resp.restore_testing_selection.protected_resource_conditions.string_equals #=> Array
2768
+ # resp.restore_testing_selection.protected_resource_conditions.string_equals[0].key #=> String
2769
+ # resp.restore_testing_selection.protected_resource_conditions.string_equals[0].value #=> String
2770
+ # resp.restore_testing_selection.protected_resource_conditions.string_not_equals #=> Array
2771
+ # resp.restore_testing_selection.protected_resource_conditions.string_not_equals[0].key #=> String
2772
+ # resp.restore_testing_selection.protected_resource_conditions.string_not_equals[0].value #=> String
2773
+ # resp.restore_testing_selection.protected_resource_type #=> String
2774
+ # resp.restore_testing_selection.restore_metadata_overrides #=> Hash
2775
+ # resp.restore_testing_selection.restore_metadata_overrides["String"] #=> String
2776
+ # resp.restore_testing_selection.restore_testing_plan_name #=> String
2777
+ # resp.restore_testing_selection.restore_testing_selection_name #=> String
2778
+ # resp.restore_testing_selection.validation_window_hours #=> Integer
2779
+ #
2780
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingSelection AWS API Documentation
2781
+ #
2782
+ # @overload get_restore_testing_selection(params = {})
2783
+ # @param [Hash] params ({})
2784
+ def get_restore_testing_selection(params = {}, options = {})
2785
+ req = build_request(:get_restore_testing_selection, params)
2786
+ req.send_request(options)
2787
+ end
2788
+
2351
2789
  # Returns the Amazon Web Services resource types supported by Backup.
2352
2790
  #
2353
2791
  # @return [Types::GetSupportedResourceTypesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2448,7 +2886,7 @@ module Aws::Backup
2448
2886
  #
2449
2887
  # @option params [String] :next_token
2450
2888
  # The next item following a partial list of returned resources. For
2451
- # example, if a request is made to return `maxResults` number of
2889
+ # example, if a request is made to return `MaxResults` number of
2452
2890
  # resources, `NextToken` allows you to return more items in your list
2453
2891
  # starting at the location pointed to by the next token.
2454
2892
  #
@@ -2505,7 +2943,7 @@ module Aws::Backup
2505
2943
  #
2506
2944
  # @option params [String] :next_token
2507
2945
  # The next item following a partial list of returned items. For example,
2508
- # if a request is made to return `maxResults` number of items,
2946
+ # if a request is made to return `MaxResults` number of items,
2509
2947
  # `NextToken` allows you to return more items in your list starting at
2510
2948
  # the location pointed to by the next token.
2511
2949
  #
@@ -2578,11 +3016,18 @@ module Aws::Backup
2578
3016
  # This is a filter to list child (nested) jobs based on parent job ID.
2579
3017
  #
2580
3018
  # @option params [String] :by_message_category
2581
- # This returns a list of backup jobs for the specified message category.
3019
+ # This is an optional parameter that can be used to filter out jobs with
3020
+ # a MessageCategory which matches the value you input.
2582
3021
  #
2583
- # Example strings may include `AccessDenied`, `Success`, and
2584
- # `InvalidParameters`. See [Monitoring][1] for a list of MessageCategory
2585
- # strings.
3022
+ # Example strings may include `AccessDenied`, `SUCCESS`,
3023
+ # `AGGREGATE_ALL`, and `InvalidParameters`.
3024
+ #
3025
+ # View [Monitoring][1]
3026
+ #
3027
+ # The wildcard () returns count of all message categories.
3028
+ #
3029
+ # `AGGREGATE_ALL` aggregates job counts for all message categories and
3030
+ # returns the sum.
2586
3031
  #
2587
3032
  #
2588
3033
  #
@@ -2643,6 +3088,7 @@ module Aws::Backup
2643
3088
  # resp.backup_jobs[0].parent_job_id #=> String
2644
3089
  # resp.backup_jobs[0].is_parent #=> Boolean
2645
3090
  # resp.backup_jobs[0].resource_name #=> String
3091
+ # resp.backup_jobs[0].initiation_date #=> Time
2646
3092
  # resp.backup_jobs[0].message_category #=> String
2647
3093
  # resp.next_token #=> String
2648
3094
  #
@@ -2660,7 +3106,7 @@ module Aws::Backup
2660
3106
  #
2661
3107
  # @option params [String] :next_token
2662
3108
  # The next item following a partial list of returned items. For example,
2663
- # if a request is made to return `maxResults` number of items,
3109
+ # if a request is made to return `MaxResults` number of items,
2664
3110
  # `NextToken` allows you to return more items in your list starting at
2665
3111
  # the location pointed to by the next token.
2666
3112
  #
@@ -2706,7 +3152,7 @@ module Aws::Backup
2706
3152
  #
2707
3153
  # @option params [String] :next_token
2708
3154
  # The next item following a partial list of returned items. For example,
2709
- # if a request is made to return `maxResults` number of items,
3155
+ # if a request is made to return `MaxResults` number of items,
2710
3156
  # `NextToken` allows you to return more items in your list starting at
2711
3157
  # the location pointed to by the next token.
2712
3158
  #
@@ -2761,7 +3207,7 @@ module Aws::Backup
2761
3207
  #
2762
3208
  # @option params [String] :next_token
2763
3209
  # The next item following a partial list of returned items. For example,
2764
- # if a request is made to return `maxResults` number of items,
3210
+ # if a request is made to return `MaxResults` number of items,
2765
3211
  # `NextToken` allows you to return more items in your list starting at
2766
3212
  # the location pointed to by the next token.
2767
3213
  #
@@ -2821,7 +3267,7 @@ module Aws::Backup
2821
3267
  #
2822
3268
  # @option params [String] :next_token
2823
3269
  # The next item following a partial list of returned items. For example,
2824
- # if a request is made to return `maxResults` number of items,
3270
+ # if a request is made to return `MaxResults` number of items,
2825
3271
  # `NextToken` allows you to return more items in your list starting at
2826
3272
  # the location pointed to by the next token.
2827
3273
  #
@@ -2874,7 +3320,7 @@ module Aws::Backup
2874
3320
  #
2875
3321
  # @option params [String] :next_token
2876
3322
  # The next item following a partial list of returned items. For example,
2877
- # if a request is made to return `maxResults` number of items,
3323
+ # if a request is made to return `MaxResults` number of items,
2878
3324
  # `NextToken` allows you to return more items in your list starting at
2879
3325
  # the location pointed to by the next token.
2880
3326
  #
@@ -2999,7 +3445,7 @@ module Aws::Backup
2999
3445
  #
3000
3446
  # @option params [String] :next_token
3001
3447
  # The next item following a partial list of returned resources. For
3002
- # example, if a request is made to return `maxResults` number of
3448
+ # example, if a request is made to return `MaxResults` number of
3003
3449
  # resources, `NextToken` allows you to return more items in your list
3004
3450
  # starting at the location pointed to by the next token.
3005
3451
  #
@@ -3050,7 +3496,7 @@ module Aws::Backup
3050
3496
  #
3051
3497
  # @option params [String] :next_token
3052
3498
  # The next item following a partial list of returned items. For example,
3053
- # if a request is made to return maxResults number of items, NextToken
3499
+ # if a request is made to return MaxResults number of items, NextToken
3054
3500
  # allows you to return more items in your list starting at the location
3055
3501
  # pointed to by the next token.
3056
3502
  #
@@ -3118,12 +3564,13 @@ module Aws::Backup
3118
3564
  # This is a filter to list child (nested) jobs based on parent job ID.
3119
3565
  #
3120
3566
  # @option params [String] :by_message_category
3121
- # This parameter returns the job count for the specified message
3122
- # category.
3567
+ # This is an optional parameter that can be used to filter out jobs with
3568
+ # a MessageCategory which matches the value you input.
3123
3569
  #
3124
- # Example accepted strings include `AccessDenied`, `Success`, and
3125
- # `InvalidParameters`. See [Monitoring][1] for a list of accepted
3126
- # MessageCategory strings.
3570
+ # Example strings may include `AccessDenied`, `SUCCESS`,
3571
+ # `AGGREGATE_ALL`, and `INVALIDPARAMETERS`.
3572
+ #
3573
+ # View [Monitoring][1] for a list of accepted strings.
3127
3574
  #
3128
3575
  # The the value ANY returns count of all message categories.
3129
3576
  #
@@ -3249,7 +3696,7 @@ module Aws::Backup
3249
3696
  #
3250
3697
  # @option params [String] :next_token
3251
3698
  # The next item following a partial list of returned resources. For
3252
- # example, if a request is made to return `maxResults` number of
3699
+ # example, if a request is made to return `MaxResults` number of
3253
3700
  # resources, `NextToken` allows you to return more items in your list
3254
3701
  # starting at the location pointed to by the next token.
3255
3702
  #
@@ -3297,7 +3744,7 @@ module Aws::Backup
3297
3744
  #
3298
3745
  # @option params [String] :next_token
3299
3746
  # The next item following a partial list of returned items. For example,
3300
- # if a request is made to return `maxResults` number of items,
3747
+ # if a request is made to return `MaxResults` number of items,
3301
3748
  # `NextToken` allows you to return more items in your list starting at
3302
3749
  # the location pointed to by the next token.
3303
3750
  #
@@ -3325,6 +3772,8 @@ module Aws::Backup
3325
3772
  # resp.results[0].resource_type #=> String
3326
3773
  # resp.results[0].last_backup_time #=> Time
3327
3774
  # resp.results[0].resource_name #=> String
3775
+ # resp.results[0].last_backup_vault_arn #=> String
3776
+ # resp.results[0].last_recovery_point_arn #=> String
3328
3777
  # resp.next_token #=> String
3329
3778
  #
3330
3779
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResources AWS API Documentation
@@ -3349,7 +3798,7 @@ module Aws::Backup
3349
3798
  #
3350
3799
  # @option params [String] :next_token
3351
3800
  # The next item following a partial list of returned items. For example,
3352
- # if a request is made to return `maxResults` number of items,
3801
+ # if a request is made to return `MaxResults` number of items,
3353
3802
  # `NextToken` allows you to return more items in your list starting at
3354
3803
  # the location pointed to by the next token.
3355
3804
  #
@@ -3379,6 +3828,8 @@ module Aws::Backup
3379
3828
  # resp.results[0].resource_type #=> String
3380
3829
  # resp.results[0].last_backup_time #=> Time
3381
3830
  # resp.results[0].resource_name #=> String
3831
+ # resp.results[0].last_backup_vault_arn #=> String
3832
+ # resp.results[0].last_recovery_point_arn #=> String
3382
3833
  # resp.next_token #=> String
3383
3834
  #
3384
3835
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResourcesByBackupVault AWS API Documentation
@@ -3409,7 +3860,7 @@ module Aws::Backup
3409
3860
  #
3410
3861
  # @option params [String] :next_token
3411
3862
  # The next item following a partial list of returned items. For example,
3412
- # if a request is made to return `maxResults` number of items,
3863
+ # if a request is made to return `MaxResults` number of items,
3413
3864
  # `NextToken` allows you to return more items in your list starting at
3414
3865
  # the location pointed to by the next token.
3415
3866
  #
@@ -3484,6 +3935,7 @@ module Aws::Backup
3484
3935
  # resp.recovery_points[0].calculated_lifecycle.delete_at #=> Time
3485
3936
  # resp.recovery_points[0].lifecycle.move_to_cold_storage_after_days #=> Integer
3486
3937
  # resp.recovery_points[0].lifecycle.delete_after_days #=> Integer
3938
+ # resp.recovery_points[0].lifecycle.opt_in_to_archive_for_supported_resources #=> Boolean
3487
3939
  # resp.recovery_points[0].encryption_key_arn #=> String
3488
3940
  # resp.recovery_points[0].is_encrypted #=> Boolean
3489
3941
  # resp.recovery_points[0].last_restore_time #=> Time
@@ -3509,7 +3961,7 @@ module Aws::Backup
3509
3961
  #
3510
3962
  # @option params [String] :next_token
3511
3963
  # This is the next item following a partial list of returned resources.
3512
- # For example, if a request is made to return `maxResults` number of
3964
+ # For example, if a request is made to return `MaxResults` number of
3513
3965
  # resources, `NextToken` allows you to return more items in your list
3514
3966
  # starting at the location pointed to by the next token.
3515
3967
  #
@@ -3563,7 +4015,7 @@ module Aws::Backup
3563
4015
  #
3564
4016
  # @option params [String] :next_token
3565
4017
  # The next item following a partial list of returned items. For example,
3566
- # if a request is made to return `maxResults` number of items,
4018
+ # if a request is made to return `MaxResults` number of items,
3567
4019
  # `NextToken` allows you to return more items in your list starting at
3568
4020
  # the location pointed to by the next token.
3569
4021
  #
@@ -3811,7 +4263,7 @@ module Aws::Backup
3811
4263
  #
3812
4264
  # @option params [String] :next_token
3813
4265
  # The next item following a partial list of returned resources. For
3814
- # example, if a request is made to return `maxResults` number of
4266
+ # example, if a request is made to return `MaxResults` number of
3815
4267
  # resources, `NextToken` allows you to return more items in your list
3816
4268
  # starting at the location pointed to by the next token.
3817
4269
  #
@@ -3861,7 +4313,7 @@ module Aws::Backup
3861
4313
  #
3862
4314
  # @option params [String] :next_token
3863
4315
  # The next item following a partial list of returned items. For example,
3864
- # if a request is made to return `maxResults` number of items,
4316
+ # if a request is made to return `MaxResults` number of items,
3865
4317
  # `NextToken` allows you to return more items in your list starting at
3866
4318
  # the location pointed to by the next token.
3867
4319
  #
@@ -3889,6 +4341,10 @@ module Aws::Backup
3889
4341
  # Returns only copy jobs completed after a date expressed in Unix format
3890
4342
  # and Coordinated Universal Time (UTC).
3891
4343
  #
4344
+ # @option params [String] :by_restore_testing_plan_arn
4345
+ # This returns only restore testing jobs that match the specified
4346
+ # resource Amazon Resource Name (ARN).
4347
+ #
3892
4348
  # @return [Types::ListRestoreJobsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3893
4349
  #
3894
4350
  # * {Types::ListRestoreJobsOutput#restore_jobs #restore_jobs} => Array&lt;Types::RestoreJobsListMember&gt;
@@ -3907,6 +4363,7 @@ module Aws::Backup
3907
4363
  # by_status: "PENDING", # accepts PENDING, RUNNING, COMPLETED, ABORTED, FAILED
3908
4364
  # by_complete_before: Time.now,
3909
4365
  # by_complete_after: Time.now,
4366
+ # by_restore_testing_plan_arn: "ARN",
3910
4367
  # })
3911
4368
  #
3912
4369
  # @example Response structure
@@ -3925,6 +4382,12 @@ module Aws::Backup
3925
4382
  # resp.restore_jobs[0].expected_completion_time_minutes #=> Integer
3926
4383
  # resp.restore_jobs[0].created_resource_arn #=> String
3927
4384
  # resp.restore_jobs[0].resource_type #=> String
4385
+ # resp.restore_jobs[0].recovery_point_creation_date #=> Time
4386
+ # resp.restore_jobs[0].created_by.restore_testing_plan_arn #=> String
4387
+ # resp.restore_jobs[0].validation_status #=> String, one of "FAILED", "SUCCESSFUL", "TIMED_OUT", "VALIDATING"
4388
+ # resp.restore_jobs[0].validation_status_message #=> String
4389
+ # resp.restore_jobs[0].deletion_status #=> String, one of "DELETING", "FAILED", "SUCCESSFUL"
4390
+ # resp.restore_jobs[0].deletion_status_message #=> String
3928
4391
  # resp.next_token #=> String
3929
4392
  #
3930
4393
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobs AWS API Documentation
@@ -3936,6 +4399,187 @@ module Aws::Backup
3936
4399
  req.send_request(options)
3937
4400
  end
3938
4401
 
4402
+ # This returns restore jobs that contain the specified protected
4403
+ # resource.
4404
+ #
4405
+ # You must include `ResourceArn`. You can optionally include
4406
+ # `NextToken`, `ByStatus`, `MaxResults`,
4407
+ # `ByRecoveryPointCreationDateAfter` , and
4408
+ # `ByRecoveryPointCreationDateBefore`.
4409
+ #
4410
+ # @option params [required, String] :resource_arn
4411
+ # Returns only restore jobs that match the specified resource Amazon
4412
+ # Resource Name (ARN).
4413
+ #
4414
+ # @option params [String] :by_status
4415
+ # Returns only restore jobs associated with the specified job status.
4416
+ #
4417
+ # @option params [Time,DateTime,Date,Integer,String] :by_recovery_point_creation_date_after
4418
+ # Returns only restore jobs of recovery points that were created after
4419
+ # the specified date.
4420
+ #
4421
+ # @option params [Time,DateTime,Date,Integer,String] :by_recovery_point_creation_date_before
4422
+ # Returns only restore jobs of recovery points that were created before
4423
+ # the specified date.
4424
+ #
4425
+ # @option params [String] :next_token
4426
+ # The next item following a partial list of returned items. For example,
4427
+ # if a request ismade to return `MaxResults` number of items,
4428
+ # `NextToken` allows you to return more items in your list starting at
4429
+ # the location pointed to by the next token.
4430
+ #
4431
+ # @option params [Integer] :max_results
4432
+ # The maximum number of items to be returned.
4433
+ #
4434
+ # @return [Types::ListRestoreJobsByProtectedResourceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4435
+ #
4436
+ # * {Types::ListRestoreJobsByProtectedResourceOutput#restore_jobs #restore_jobs} => Array&lt;Types::RestoreJobsListMember&gt;
4437
+ # * {Types::ListRestoreJobsByProtectedResourceOutput#next_token #next_token} => String
4438
+ #
4439
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4440
+ #
4441
+ # @example Request syntax with placeholder values
4442
+ #
4443
+ # resp = client.list_restore_jobs_by_protected_resource({
4444
+ # resource_arn: "ARN", # required
4445
+ # by_status: "PENDING", # accepts PENDING, RUNNING, COMPLETED, ABORTED, FAILED
4446
+ # by_recovery_point_creation_date_after: Time.now,
4447
+ # by_recovery_point_creation_date_before: Time.now,
4448
+ # next_token: "string",
4449
+ # max_results: 1,
4450
+ # })
4451
+ #
4452
+ # @example Response structure
4453
+ #
4454
+ # resp.restore_jobs #=> Array
4455
+ # resp.restore_jobs[0].account_id #=> String
4456
+ # resp.restore_jobs[0].restore_job_id #=> String
4457
+ # resp.restore_jobs[0].recovery_point_arn #=> String
4458
+ # resp.restore_jobs[0].creation_date #=> Time
4459
+ # resp.restore_jobs[0].completion_date #=> Time
4460
+ # resp.restore_jobs[0].status #=> String, one of "PENDING", "RUNNING", "COMPLETED", "ABORTED", "FAILED"
4461
+ # resp.restore_jobs[0].status_message #=> String
4462
+ # resp.restore_jobs[0].percent_done #=> String
4463
+ # resp.restore_jobs[0].backup_size_in_bytes #=> Integer
4464
+ # resp.restore_jobs[0].iam_role_arn #=> String
4465
+ # resp.restore_jobs[0].expected_completion_time_minutes #=> Integer
4466
+ # resp.restore_jobs[0].created_resource_arn #=> String
4467
+ # resp.restore_jobs[0].resource_type #=> String
4468
+ # resp.restore_jobs[0].recovery_point_creation_date #=> Time
4469
+ # resp.restore_jobs[0].created_by.restore_testing_plan_arn #=> String
4470
+ # resp.restore_jobs[0].validation_status #=> String, one of "FAILED", "SUCCESSFUL", "TIMED_OUT", "VALIDATING"
4471
+ # resp.restore_jobs[0].validation_status_message #=> String
4472
+ # resp.restore_jobs[0].deletion_status #=> String, one of "DELETING", "FAILED", "SUCCESSFUL"
4473
+ # resp.restore_jobs[0].deletion_status_message #=> String
4474
+ # resp.next_token #=> String
4475
+ #
4476
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobsByProtectedResource AWS API Documentation
4477
+ #
4478
+ # @overload list_restore_jobs_by_protected_resource(params = {})
4479
+ # @param [Hash] params ({})
4480
+ def list_restore_jobs_by_protected_resource(params = {}, options = {})
4481
+ req = build_request(:list_restore_jobs_by_protected_resource, params)
4482
+ req.send_request(options)
4483
+ end
4484
+
4485
+ # Returns a list of restore testing plans.
4486
+ #
4487
+ # @option params [Integer] :max_results
4488
+ # The maximum number of items to be returned.
4489
+ #
4490
+ # @option params [String] :next_token
4491
+ # The next item following a partial list of returned items. For example,
4492
+ # if a request is made to return `MaxResults` number of items,
4493
+ # `NextToken` allows you to return more items in your list starting at
4494
+ # the location pointed to by the nexttoken.
4495
+ #
4496
+ # @return [Types::ListRestoreTestingPlansOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4497
+ #
4498
+ # * {Types::ListRestoreTestingPlansOutput#next_token #next_token} => String
4499
+ # * {Types::ListRestoreTestingPlansOutput#restore_testing_plans #restore_testing_plans} => Array&lt;Types::RestoreTestingPlanForList&gt;
4500
+ #
4501
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4502
+ #
4503
+ # @example Request syntax with placeholder values
4504
+ #
4505
+ # resp = client.list_restore_testing_plans({
4506
+ # max_results: 1,
4507
+ # next_token: "String",
4508
+ # })
4509
+ #
4510
+ # @example Response structure
4511
+ #
4512
+ # resp.next_token #=> String
4513
+ # resp.restore_testing_plans #=> Array
4514
+ # resp.restore_testing_plans[0].creation_time #=> Time
4515
+ # resp.restore_testing_plans[0].last_execution_time #=> Time
4516
+ # resp.restore_testing_plans[0].last_update_time #=> Time
4517
+ # resp.restore_testing_plans[0].restore_testing_plan_arn #=> String
4518
+ # resp.restore_testing_plans[0].restore_testing_plan_name #=> String
4519
+ # resp.restore_testing_plans[0].schedule_expression #=> String
4520
+ # resp.restore_testing_plans[0].schedule_expression_timezone #=> String
4521
+ # resp.restore_testing_plans[0].start_window_hours #=> Integer
4522
+ #
4523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingPlans AWS API Documentation
4524
+ #
4525
+ # @overload list_restore_testing_plans(params = {})
4526
+ # @param [Hash] params ({})
4527
+ def list_restore_testing_plans(params = {}, options = {})
4528
+ req = build_request(:list_restore_testing_plans, params)
4529
+ req.send_request(options)
4530
+ end
4531
+
4532
+ # Returns a list of restore testing selections. Can be filtered by
4533
+ # `MaxResults` and `RestoreTestingPlanName`.
4534
+ #
4535
+ # @option params [Integer] :max_results
4536
+ # The maximum number of items to be returned.
4537
+ #
4538
+ # @option params [String] :next_token
4539
+ # The next item following a partial list of returned items. For example,
4540
+ # if a request is made to return `MaxResults` number of items,
4541
+ # `NextToken` allows you to return more items in your list starting at
4542
+ # the location pointed to by the nexttoken.
4543
+ #
4544
+ # @option params [required, String] :restore_testing_plan_name
4545
+ # Returns restore testing selections by the specified restore testing
4546
+ # plan name.
4547
+ #
4548
+ # @return [Types::ListRestoreTestingSelectionsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4549
+ #
4550
+ # * {Types::ListRestoreTestingSelectionsOutput#next_token #next_token} => String
4551
+ # * {Types::ListRestoreTestingSelectionsOutput#restore_testing_selections #restore_testing_selections} => Array&lt;Types::RestoreTestingSelectionForList&gt;
4552
+ #
4553
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4554
+ #
4555
+ # @example Request syntax with placeholder values
4556
+ #
4557
+ # resp = client.list_restore_testing_selections({
4558
+ # max_results: 1,
4559
+ # next_token: "String",
4560
+ # restore_testing_plan_name: "String", # required
4561
+ # })
4562
+ #
4563
+ # @example Response structure
4564
+ #
4565
+ # resp.next_token #=> String
4566
+ # resp.restore_testing_selections #=> Array
4567
+ # resp.restore_testing_selections[0].creation_time #=> Time
4568
+ # resp.restore_testing_selections[0].iam_role_arn #=> String
4569
+ # resp.restore_testing_selections[0].protected_resource_type #=> String
4570
+ # resp.restore_testing_selections[0].restore_testing_plan_name #=> String
4571
+ # resp.restore_testing_selections[0].restore_testing_selection_name #=> String
4572
+ # resp.restore_testing_selections[0].validation_window_hours #=> Integer
4573
+ #
4574
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingSelections AWS API Documentation
4575
+ #
4576
+ # @overload list_restore_testing_selections(params = {})
4577
+ # @param [Hash] params ({})
4578
+ def list_restore_testing_selections(params = {}, options = {})
4579
+ req = build_request(:list_restore_testing_selections, params)
4580
+ req.send_request(options)
4581
+ end
4582
+
3939
4583
  # Returns a list of key-value pairs assigned to a target recovery point,
3940
4584
  # backup plan, or backup vault.
3941
4585
  #
@@ -3955,7 +4599,7 @@ module Aws::Backup
3955
4599
  #
3956
4600
  # @option params [String] :next_token
3957
4601
  # The next item following a partial list of returned items. For example,
3958
- # if a request is made to return `maxResults` number of items,
4602
+ # if a request is made to return `MaxResults` number of items,
3959
4603
  # `NextToken` allows you to return more items in your list starting at
3960
4604
  # the location pointed to by the next token.
3961
4605
  #
@@ -4187,6 +4831,39 @@ module Aws::Backup
4187
4831
  req.send_request(options)
4188
4832
  end
4189
4833
 
4834
+ # This request allows you to send your independent self-run restore test
4835
+ # validation results. `RestoreJobId` and `ValidationStatus` are
4836
+ # required. Optionally, you can input a `ValidationStatusMessage`.
4837
+ #
4838
+ # @option params [required, String] :restore_job_id
4839
+ # This is a unique identifier of a restore job within Backup.
4840
+ #
4841
+ # @option params [required, String] :validation_status
4842
+ # This is the status of your restore validation.
4843
+ #
4844
+ # @option params [String] :validation_status_message
4845
+ # This is an optional message string you can input to describe the
4846
+ # validation status for the restore test validation.
4847
+ #
4848
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4849
+ #
4850
+ # @example Request syntax with placeholder values
4851
+ #
4852
+ # resp = client.put_restore_validation_result({
4853
+ # restore_job_id: "RestoreJobId", # required
4854
+ # validation_status: "FAILED", # required, accepts FAILED, SUCCESSFUL, TIMED_OUT, VALIDATING
4855
+ # validation_status_message: "string",
4856
+ # })
4857
+ #
4858
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutRestoreValidationResult AWS API Documentation
4859
+ #
4860
+ # @overload put_restore_validation_result(params = {})
4861
+ # @param [Hash] params ({})
4862
+ def put_restore_validation_result(params = {}, options = {})
4863
+ req = build_request(:put_restore_validation_result, params)
4864
+ req.send_request(options)
4865
+ end
4866
+
4190
4867
  # Starts an on-demand backup job for the specified resource.
4191
4868
  #
4192
4869
  # @option params [required, String] :backup_vault_name
@@ -4291,6 +4968,7 @@ module Aws::Backup
4291
4968
  # lifecycle: {
4292
4969
  # move_to_cold_storage_after_days: 1,
4293
4970
  # delete_after_days: 1,
4971
+ # opt_in_to_archive_for_supported_resources: false,
4294
4972
  # },
4295
4973
  # recovery_point_tags: {
4296
4974
  # "TagKey" => "TagValue",
@@ -4382,6 +5060,7 @@ module Aws::Backup
4382
5060
  # lifecycle: {
4383
5061
  # move_to_cold_storage_after_days: 1,
4384
5062
  # delete_after_days: 1,
5063
+ # opt_in_to_archive_for_supported_resources: false,
4385
5064
  # },
4386
5065
  # })
4387
5066
  #
@@ -4689,6 +5368,7 @@ module Aws::Backup
4689
5368
  # lifecycle: {
4690
5369
  # move_to_cold_storage_after_days: 1,
4691
5370
  # delete_after_days: 1,
5371
+ # opt_in_to_archive_for_supported_resources: false,
4692
5372
  # },
4693
5373
  # recovery_point_tags: {
4694
5374
  # "TagKey" => "TagValue",
@@ -4698,6 +5378,7 @@ module Aws::Backup
4698
5378
  # lifecycle: {
4699
5379
  # move_to_cold_storage_after_days: 1,
4700
5380
  # delete_after_days: 1,
5381
+ # opt_in_to_archive_for_supported_resources: false,
4701
5382
  # },
4702
5383
  # destination_backup_vault_arn: "ARN", # required
4703
5384
  # },
@@ -4898,6 +5579,7 @@ module Aws::Backup
4898
5579
  # lifecycle: {
4899
5580
  # move_to_cold_storage_after_days: 1,
4900
5581
  # delete_after_days: 1,
5582
+ # opt_in_to_archive_for_supported_resources: false,
4901
5583
  # },
4902
5584
  # })
4903
5585
  #
@@ -4907,6 +5589,7 @@ module Aws::Backup
4907
5589
  # resp.recovery_point_arn #=> String
4908
5590
  # resp.lifecycle.move_to_cold_storage_after_days #=> Integer
4909
5591
  # resp.lifecycle.delete_after_days #=> Integer
5592
+ # resp.lifecycle.opt_in_to_archive_for_supported_resources #=> Boolean
4910
5593
  # resp.calculated_lifecycle.move_to_cold_storage_at #=> Time
4911
5594
  # resp.calculated_lifecycle.delete_at #=> Time
4912
5595
  #
@@ -5043,6 +5726,144 @@ module Aws::Backup
5043
5726
  req.send_request(options)
5044
5727
  end
5045
5728
 
5729
+ # This request will send changes to your specified restore testing plan.
5730
+ # `RestoreTestingPlanName` cannot be updated after it is created.
5731
+ #
5732
+ # `RecoveryPointSelection` can contain:
5733
+ #
5734
+ # * `Algorithm`
5735
+ #
5736
+ # * `ExcludeVaults`
5737
+ #
5738
+ # * `IncludeVaults`
5739
+ #
5740
+ # * `RecoveryPointTypes`
5741
+ #
5742
+ # * `SelectionWindowDays`
5743
+ #
5744
+ # @option params [required, Types::RestoreTestingPlanForUpdate] :restore_testing_plan
5745
+ # Specifies the body of a restore testing plan.
5746
+ #
5747
+ # @option params [required, String] :restore_testing_plan_name
5748
+ # This is the restore testing plan name you wish to update.
5749
+ #
5750
+ # @return [Types::UpdateRestoreTestingPlanOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5751
+ #
5752
+ # * {Types::UpdateRestoreTestingPlanOutput#creation_time #creation_time} => Time
5753
+ # * {Types::UpdateRestoreTestingPlanOutput#restore_testing_plan_arn #restore_testing_plan_arn} => String
5754
+ # * {Types::UpdateRestoreTestingPlanOutput#restore_testing_plan_name #restore_testing_plan_name} => String
5755
+ # * {Types::UpdateRestoreTestingPlanOutput#update_time #update_time} => Time
5756
+ #
5757
+ # @example Request syntax with placeholder values
5758
+ #
5759
+ # resp = client.update_restore_testing_plan({
5760
+ # restore_testing_plan: { # required
5761
+ # recovery_point_selection: {
5762
+ # algorithm: "LATEST_WITHIN_WINDOW", # accepts LATEST_WITHIN_WINDOW, RANDOM_WITHIN_WINDOW
5763
+ # exclude_vaults: ["string"],
5764
+ # include_vaults: ["string"],
5765
+ # recovery_point_types: ["CONTINUOUS"], # accepts CONTINUOUS, SNAPSHOT
5766
+ # selection_window_days: 1,
5767
+ # },
5768
+ # schedule_expression: "String",
5769
+ # schedule_expression_timezone: "String",
5770
+ # start_window_hours: 1,
5771
+ # },
5772
+ # restore_testing_plan_name: "String", # required
5773
+ # })
5774
+ #
5775
+ # @example Response structure
5776
+ #
5777
+ # resp.creation_time #=> Time
5778
+ # resp.restore_testing_plan_arn #=> String
5779
+ # resp.restore_testing_plan_name #=> String
5780
+ # resp.update_time #=> Time
5781
+ #
5782
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingPlan AWS API Documentation
5783
+ #
5784
+ # @overload update_restore_testing_plan(params = {})
5785
+ # @param [Hash] params ({})
5786
+ def update_restore_testing_plan(params = {}, options = {})
5787
+ req = build_request(:update_restore_testing_plan, params)
5788
+ req.send_request(options)
5789
+ end
5790
+
5791
+ # Most elements except the `RestoreTestingSelectionName` can be updated
5792
+ # with this request.
5793
+ #
5794
+ # `RestoreTestingSelection` can use either protected resource ARNs or
5795
+ # conditions, but not both. That is, if your selection has
5796
+ # `ProtectedResourceArns`, requesting an update with the parameter
5797
+ # `ProtectedResourceConditions` will be unsuccessful.
5798
+ #
5799
+ # @option params [required, String] :restore_testing_plan_name
5800
+ # The restore testing plan name is required to update the indicated
5801
+ # testing plan.
5802
+ #
5803
+ # @option params [required, Types::RestoreTestingSelectionForUpdate] :restore_testing_selection
5804
+ # To update your restore testing selection, you can use either protected
5805
+ # resource ARNs or conditions, but not both. That is, if your selection
5806
+ # has `ProtectedResourceArns`, requesting an update with the parameter
5807
+ # `ProtectedResourceConditions` will be unsuccessful.
5808
+ #
5809
+ # @option params [required, String] :restore_testing_selection_name
5810
+ # This is the required restore testing selection name of the restore
5811
+ # testing selection you wish to update.
5812
+ #
5813
+ # @return [Types::UpdateRestoreTestingSelectionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5814
+ #
5815
+ # * {Types::UpdateRestoreTestingSelectionOutput#creation_time #creation_time} => Time
5816
+ # * {Types::UpdateRestoreTestingSelectionOutput#restore_testing_plan_arn #restore_testing_plan_arn} => String
5817
+ # * {Types::UpdateRestoreTestingSelectionOutput#restore_testing_plan_name #restore_testing_plan_name} => String
5818
+ # * {Types::UpdateRestoreTestingSelectionOutput#restore_testing_selection_name #restore_testing_selection_name} => String
5819
+ # * {Types::UpdateRestoreTestingSelectionOutput#update_time #update_time} => Time
5820
+ #
5821
+ # @example Request syntax with placeholder values
5822
+ #
5823
+ # resp = client.update_restore_testing_selection({
5824
+ # restore_testing_plan_name: "String", # required
5825
+ # restore_testing_selection: { # required
5826
+ # iam_role_arn: "String",
5827
+ # protected_resource_arns: ["string"],
5828
+ # protected_resource_conditions: {
5829
+ # string_equals: [
5830
+ # {
5831
+ # key: "String", # required
5832
+ # value: "String", # required
5833
+ # },
5834
+ # ],
5835
+ # string_not_equals: [
5836
+ # {
5837
+ # key: "String", # required
5838
+ # value: "String", # required
5839
+ # },
5840
+ # ],
5841
+ # },
5842
+ # restore_metadata_overrides: {
5843
+ # "String" => "String",
5844
+ # },
5845
+ # validation_window_hours: 1,
5846
+ # },
5847
+ # restore_testing_selection_name: "String", # required
5848
+ # })
5849
+ #
5850
+ # @example Response structure
5851
+ #
5852
+ # resp.creation_time #=> Time
5853
+ # resp.restore_testing_plan_arn #=> String
5854
+ # resp.restore_testing_plan_name #=> String
5855
+ # resp.restore_testing_selection_name #=> String
5856
+ # resp.update_time #=> Time
5857
+ #
5858
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingSelection AWS API Documentation
5859
+ #
5860
+ # @overload update_restore_testing_selection(params = {})
5861
+ # @param [Hash] params ({})
5862
+ def update_restore_testing_selection(params = {}, options = {})
5863
+ req = build_request(:update_restore_testing_selection, params)
5864
+ req.send_request(options)
5865
+ end
5866
+
5046
5867
  # @!endgroup
5047
5868
 
5048
5869
  # @param params ({})
@@ -5056,7 +5877,7 @@ module Aws::Backup
5056
5877
  params: params,
5057
5878
  config: config)
5058
5879
  context[:gem_name] = 'aws-sdk-backup'
5059
- context[:gem_version] = '1.61.0'
5880
+ context[:gem_version] = '1.62.0'
5060
5881
  Seahorse::Client::Request.new(handlers, context)
5061
5882
  end
5062
5883