aws-sdk-backup 1.46.0 → 1.47.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -368,6 +368,39 @@ module Aws::Backup
368
368
 
369
369
  # @!group API Operations
370
370
 
371
+ # This action removes the specified legal hold on a recovery point. This
372
+ # action can only be performed by a user with sufficient permissions.
373
+ #
374
+ # @option params [required, String] :legal_hold_id
375
+ # Legal hold ID required to remove the specified legal hold on a
376
+ # recovery point.
377
+ #
378
+ # @option params [required, String] :cancel_description
379
+ # String describing the reason for removing the legal hold.
380
+ #
381
+ # @option params [Integer] :retain_record_in_days
382
+ # The integer amount in days specifying amount of days after this API
383
+ # operation to remove legal hold.
384
+ #
385
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
386
+ #
387
+ # @example Request syntax with placeholder values
388
+ #
389
+ # resp = client.cancel_legal_hold({
390
+ # legal_hold_id: "string", # required
391
+ # cancel_description: "string", # required
392
+ # retain_record_in_days: 1,
393
+ # })
394
+ #
395
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CancelLegalHold AWS API Documentation
396
+ #
397
+ # @overload cancel_legal_hold(params = {})
398
+ # @param [Hash] params ({})
399
+ def cancel_legal_hold(params = {}, options = {})
400
+ req = build_request(:cancel_legal_hold, params)
401
+ req.send_request(options)
402
+ end
403
+
371
404
  # Creates a backup plan using a backup plan name and backup rules. A
372
405
  # backup plan is a document that contains information that Backup uses
373
406
  # to schedule tasks that create recovery points for resources.
@@ -702,6 +735,86 @@ module Aws::Backup
702
735
  req.send_request(options)
703
736
  end
704
737
 
738
+ # This action creates a legal hold on a recovery point (backup). A legal
739
+ # hold is a restraint on altering or deleting a backup until an
740
+ # authorized user cancels the legal hold. Any actions to delete or
741
+ # disassociate a recovery point will fail with an error if one or more
742
+ # active legal holds are on the recovery point.
743
+ #
744
+ # @option params [required, String] :title
745
+ # This is the string title of the legal hold.
746
+ #
747
+ # @option params [required, String] :description
748
+ # This is the string description of the legal hold.
749
+ #
750
+ # @option params [String] :idempotency_token
751
+ # This is a user-chosen string used to distinguish between otherwise
752
+ # identical calls. Retrying a successful request with the same
753
+ # idempotency token results in a success message with no action taken.
754
+ #
755
+ # @option params [Types::RecoveryPointSelection] :recovery_point_selection
756
+ # This specifies criteria to assign a set of resources, such as resource
757
+ # types or backup vaults.
758
+ #
759
+ # @option params [Hash<String,String>] :tags
760
+ # Optional tags to include. A tag is a key-value pair you can use to
761
+ # manage, filter, and search for your resources. Allowed characters
762
+ # include UTF-8 letters, numbers, spaces, and the following characters:
763
+ # + - = . \_ : /.
764
+ #
765
+ # @return [Types::CreateLegalHoldOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
766
+ #
767
+ # * {Types::CreateLegalHoldOutput#title #title} => String
768
+ # * {Types::CreateLegalHoldOutput#status #status} => String
769
+ # * {Types::CreateLegalHoldOutput#description #description} => String
770
+ # * {Types::CreateLegalHoldOutput#legal_hold_id #legal_hold_id} => String
771
+ # * {Types::CreateLegalHoldOutput#legal_hold_arn #legal_hold_arn} => String
772
+ # * {Types::CreateLegalHoldOutput#creation_date #creation_date} => Time
773
+ # * {Types::CreateLegalHoldOutput#recovery_point_selection #recovery_point_selection} => Types::RecoveryPointSelection
774
+ #
775
+ # @example Request syntax with placeholder values
776
+ #
777
+ # resp = client.create_legal_hold({
778
+ # title: "string", # required
779
+ # description: "string", # required
780
+ # idempotency_token: "string",
781
+ # recovery_point_selection: {
782
+ # vault_names: ["string"],
783
+ # resource_identifiers: ["string"],
784
+ # date_range: {
785
+ # from_date: Time.now, # required
786
+ # to_date: Time.now, # required
787
+ # },
788
+ # },
789
+ # tags: {
790
+ # "TagKey" => "TagValue",
791
+ # },
792
+ # })
793
+ #
794
+ # @example Response structure
795
+ #
796
+ # resp.title #=> String
797
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "CANCELING", "CANCELED"
798
+ # resp.description #=> String
799
+ # resp.legal_hold_id #=> String
800
+ # resp.legal_hold_arn #=> String
801
+ # resp.creation_date #=> Time
802
+ # resp.recovery_point_selection.vault_names #=> Array
803
+ # resp.recovery_point_selection.vault_names[0] #=> String
804
+ # resp.recovery_point_selection.resource_identifiers #=> Array
805
+ # resp.recovery_point_selection.resource_identifiers[0] #=> String
806
+ # resp.recovery_point_selection.date_range.from_date #=> Time
807
+ # resp.recovery_point_selection.date_range.to_date #=> Time
808
+ #
809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateLegalHold AWS API Documentation
810
+ #
811
+ # @overload create_legal_hold(params = {})
812
+ # @param [Hash] params ({})
813
+ def create_legal_hold(params = {}, options = {})
814
+ req = build_request(:create_legal_hold, params)
815
+ req.send_request(options)
816
+ end
817
+
705
818
  # Creates a report plan. A report plan is a document that contains
706
819
  # information about the contents of the report and where Backup will
707
820
  # deliver it.
@@ -767,6 +880,9 @@ module Aws::Backup
767
880
  # report_template: "string", # required
768
881
  # framework_arns: ["string"],
769
882
  # number_of_frameworks: 1,
883
+ # accounts: ["string"],
884
+ # organization_units: ["string"],
885
+ # regions: ["string"],
770
886
  # },
771
887
  # report_plan_tags: {
772
888
  # "string" => "string",
@@ -991,6 +1107,23 @@ module Aws::Backup
991
1107
  # endpoint deletes the existing continuous backup and stops future
992
1108
  # continuous backup.
993
1109
  #
1110
+ # When an IAM role's permissions are insufficient to call this API, the
1111
+ # service sends back an HTTP 200 response with an empty HTTP body, but
1112
+ # the recovery point is not deleted. Instead, it enters an `EXPIRED`
1113
+ # state.
1114
+ #
1115
+ # `EXPIRED` recovery points can be deleted with this API once the IAM
1116
+ # role has the `iam:CreateServiceLinkedRole` action. To learn more about
1117
+ # adding this role, see [ Troubleshooting manual deletions][1].
1118
+ #
1119
+ # If the user or role is deleted or the permission within the role is
1120
+ # removed, the deletion will not be successful and will enter an
1121
+ # `EXPIRED` state.
1122
+ #
1123
+ #
1124
+ #
1125
+ # [1]: https://docs.aws.amazon.com/aws-backup/latest/devguide/deleting-backups.html#deleting-backups-troubleshooting
1126
+ #
994
1127
  # @option params [required, String] :backup_vault_name
995
1128
  # The name of a logical container where backups are stored. Backup
996
1129
  # vaults are identified by names that are unique to the account used to
@@ -1069,6 +1202,10 @@ module Aws::Backup
1069
1202
  # * {Types::DescribeBackupJobOutput#start_by #start_by} => Time
1070
1203
  # * {Types::DescribeBackupJobOutput#backup_options #backup_options} => Hash&lt;String,String&gt;
1071
1204
  # * {Types::DescribeBackupJobOutput#backup_type #backup_type} => String
1205
+ # * {Types::DescribeBackupJobOutput#parent_job_id #parent_job_id} => String
1206
+ # * {Types::DescribeBackupJobOutput#is_parent #is_parent} => Boolean
1207
+ # * {Types::DescribeBackupJobOutput#number_of_child_jobs #number_of_child_jobs} => Integer
1208
+ # * {Types::DescribeBackupJobOutput#child_jobs_in_state #child_jobs_in_state} => Hash&lt;String,Integer&gt;
1072
1209
  #
1073
1210
  # @example Request syntax with placeholder values
1074
1211
  #
@@ -1086,7 +1223,7 @@ module Aws::Backup
1086
1223
  # resp.resource_arn #=> String
1087
1224
  # resp.creation_date #=> Time
1088
1225
  # resp.completion_date #=> Time
1089
- # resp.state #=> String, one of "CREATED", "PENDING", "RUNNING", "ABORTING", "ABORTED", "COMPLETED", "FAILED", "EXPIRED"
1226
+ # resp.state #=> String, one of "CREATED", "PENDING", "RUNNING", "ABORTING", "ABORTED", "COMPLETED", "FAILED", "EXPIRED", "PARTIAL"
1090
1227
  # resp.status_message #=> String
1091
1228
  # resp.percent_done #=> String
1092
1229
  # resp.backup_size_in_bytes #=> Integer
@@ -1102,6 +1239,11 @@ module Aws::Backup
1102
1239
  # resp.backup_options #=> Hash
1103
1240
  # resp.backup_options["BackupOptionKey"] #=> String
1104
1241
  # resp.backup_type #=> String
1242
+ # resp.parent_job_id #=> String
1243
+ # resp.is_parent #=> Boolean
1244
+ # resp.number_of_child_jobs #=> Integer
1245
+ # resp.child_jobs_in_state #=> Hash
1246
+ # resp.child_jobs_in_state["BackupJobState"] #=> Integer
1105
1247
  #
1106
1248
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJob AWS API Documentation
1107
1249
  #
@@ -1187,7 +1329,7 @@ module Aws::Backup
1187
1329
  # resp.copy_job.resource_arn #=> String
1188
1330
  # resp.copy_job.creation_date #=> Time
1189
1331
  # resp.copy_job.completion_date #=> Time
1190
- # resp.copy_job.state #=> String, one of "CREATED", "RUNNING", "COMPLETED", "FAILED"
1332
+ # resp.copy_job.state #=> String, one of "CREATED", "RUNNING", "COMPLETED", "FAILED", "PARTIAL"
1191
1333
  # resp.copy_job.status_message #=> String
1192
1334
  # resp.copy_job.backup_size_in_bytes #=> Integer
1193
1335
  # resp.copy_job.iam_role_arn #=> String
@@ -1196,6 +1338,12 @@ module Aws::Backup
1196
1338
  # resp.copy_job.created_by.backup_plan_version #=> String
1197
1339
  # resp.copy_job.created_by.backup_rule_id #=> String
1198
1340
  # resp.copy_job.resource_type #=> String
1341
+ # resp.copy_job.parent_job_id #=> String
1342
+ # resp.copy_job.is_parent #=> Boolean
1343
+ # resp.copy_job.composite_member_identifier #=> String
1344
+ # resp.copy_job.number_of_child_jobs #=> Integer
1345
+ # resp.copy_job.child_jobs_in_state #=> Hash
1346
+ # resp.copy_job.child_jobs_in_state["CopyJobState"] #=> Integer
1199
1347
  #
1200
1348
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeCopyJob AWS API Documentation
1201
1349
  #
@@ -1353,6 +1501,9 @@ module Aws::Backup
1353
1501
  # * {Types::DescribeRecoveryPointOutput#is_encrypted #is_encrypted} => Boolean
1354
1502
  # * {Types::DescribeRecoveryPointOutput#storage_class #storage_class} => String
1355
1503
  # * {Types::DescribeRecoveryPointOutput#last_restore_time #last_restore_time} => Time
1504
+ # * {Types::DescribeRecoveryPointOutput#parent_recovery_point_arn #parent_recovery_point_arn} => String
1505
+ # * {Types::DescribeRecoveryPointOutput#composite_member_identifier #composite_member_identifier} => String
1506
+ # * {Types::DescribeRecoveryPointOutput#is_parent #is_parent} => Boolean
1356
1507
  #
1357
1508
  # @example Request syntax with placeholder values
1358
1509
  #
@@ -1387,6 +1538,9 @@ module Aws::Backup
1387
1538
  # resp.is_encrypted #=> Boolean
1388
1539
  # resp.storage_class #=> String, one of "WARM", "COLD", "DELETED"
1389
1540
  # resp.last_restore_time #=> Time
1541
+ # resp.parent_recovery_point_arn #=> String
1542
+ # resp.composite_member_identifier #=> String
1543
+ # resp.is_parent #=> Boolean
1390
1544
  #
1391
1545
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRecoveryPoint AWS API Documentation
1392
1546
  #
@@ -1489,6 +1643,12 @@ module Aws::Backup
1489
1643
  # resp.report_plan.report_setting.framework_arns #=> Array
1490
1644
  # resp.report_plan.report_setting.framework_arns[0] #=> String
1491
1645
  # resp.report_plan.report_setting.number_of_frameworks #=> Integer
1646
+ # resp.report_plan.report_setting.accounts #=> Array
1647
+ # resp.report_plan.report_setting.accounts[0] #=> String
1648
+ # resp.report_plan.report_setting.organization_units #=> Array
1649
+ # resp.report_plan.report_setting.organization_units[0] #=> String
1650
+ # resp.report_plan.report_setting.regions #=> Array
1651
+ # resp.report_plan.report_setting.regions[0] #=> String
1492
1652
  # resp.report_plan.report_delivery_channel.s3_bucket_name #=> String
1493
1653
  # resp.report_plan.report_delivery_channel.s3_key_prefix #=> String
1494
1654
  # resp.report_plan.report_delivery_channel.formats #=> Array
@@ -1593,6 +1753,40 @@ module Aws::Backup
1593
1753
  req.send_request(options)
1594
1754
  end
1595
1755
 
1756
+ # This action to a specific child (nested) recovery point removes the
1757
+ # relationship between the specified recovery point and its parent
1758
+ # (composite) recovery point.
1759
+ #
1760
+ # @option params [required, String] :backup_vault_name
1761
+ # This is the name of a logical container where the child (nested)
1762
+ # recovery point is stored. Backup vaults are identified by names that
1763
+ # are unique to the account used to create them and the Amazon Web
1764
+ # Services Region where they are created. They consist of lowercase
1765
+ # letters, numbers, and hyphens.
1766
+ #
1767
+ # @option params [required, String] :recovery_point_arn
1768
+ # This is the Amazon Resource Name (ARN) that uniquely identifies the
1769
+ # child (nested) recovery point; for example,
1770
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.`
1771
+ #
1772
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1773
+ #
1774
+ # @example Request syntax with placeholder values
1775
+ #
1776
+ # resp = client.disassociate_recovery_point_from_parent({
1777
+ # backup_vault_name: "BackupVaultName", # required
1778
+ # recovery_point_arn: "ARN", # required
1779
+ # })
1780
+ #
1781
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DisassociateRecoveryPointFromParent AWS API Documentation
1782
+ #
1783
+ # @overload disassociate_recovery_point_from_parent(params = {})
1784
+ # @param [Hash] params ({})
1785
+ def disassociate_recovery_point_from_parent(params = {}, options = {})
1786
+ req = build_request(:disassociate_recovery_point_from_parent, params)
1787
+ req.send_request(options)
1788
+ end
1789
+
1596
1790
  # Returns the backup plan that is specified by the plan ID as a backup
1597
1791
  # template.
1598
1792
  #
@@ -1929,6 +2123,59 @@ module Aws::Backup
1929
2123
  req.send_request(options)
1930
2124
  end
1931
2125
 
2126
+ # This action returns details for a specified legal hold. The details
2127
+ # are the body of a legal hold in JSON format, in addition to metadata.
2128
+ #
2129
+ # @option params [required, String] :legal_hold_id
2130
+ # This is the ID required to use `GetLegalHold`. This unique ID is
2131
+ # associated with a specific legal hold.
2132
+ #
2133
+ # @return [Types::GetLegalHoldOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2134
+ #
2135
+ # * {Types::GetLegalHoldOutput#title #title} => String
2136
+ # * {Types::GetLegalHoldOutput#status #status} => String
2137
+ # * {Types::GetLegalHoldOutput#description #description} => String
2138
+ # * {Types::GetLegalHoldOutput#cancel_description #cancel_description} => String
2139
+ # * {Types::GetLegalHoldOutput#legal_hold_id #legal_hold_id} => String
2140
+ # * {Types::GetLegalHoldOutput#legal_hold_arn #legal_hold_arn} => String
2141
+ # * {Types::GetLegalHoldOutput#creation_date #creation_date} => Time
2142
+ # * {Types::GetLegalHoldOutput#cancellation_date #cancellation_date} => Time
2143
+ # * {Types::GetLegalHoldOutput#retain_record_until #retain_record_until} => Time
2144
+ # * {Types::GetLegalHoldOutput#recovery_point_selection #recovery_point_selection} => Types::RecoveryPointSelection
2145
+ #
2146
+ # @example Request syntax with placeholder values
2147
+ #
2148
+ # resp = client.get_legal_hold({
2149
+ # legal_hold_id: "string", # required
2150
+ # })
2151
+ #
2152
+ # @example Response structure
2153
+ #
2154
+ # resp.title #=> String
2155
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "CANCELING", "CANCELED"
2156
+ # resp.description #=> String
2157
+ # resp.cancel_description #=> String
2158
+ # resp.legal_hold_id #=> String
2159
+ # resp.legal_hold_arn #=> String
2160
+ # resp.creation_date #=> Time
2161
+ # resp.cancellation_date #=> Time
2162
+ # resp.retain_record_until #=> Time
2163
+ # resp.recovery_point_selection.vault_names #=> Array
2164
+ # resp.recovery_point_selection.vault_names[0] #=> String
2165
+ # resp.recovery_point_selection.resource_identifiers #=> Array
2166
+ # resp.recovery_point_selection.resource_identifiers[0] #=> String
2167
+ # resp.recovery_point_selection.date_range.from_date #=> Time
2168
+ # resp.recovery_point_selection.date_range.to_date #=> Time
2169
+ #
2170
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetLegalHold AWS API Documentation
2171
+ #
2172
+ # @overload get_legal_hold(params = {})
2173
+ # @param [Hash] params ({})
2174
+ def get_legal_hold(params = {}, options = {})
2175
+ req = build_request(:get_legal_hold, params)
2176
+ req.send_request(options)
2177
+ end
2178
+
1932
2179
  # Returns a set of metadata key-value pairs that were used to create the
1933
2180
  # backup.
1934
2181
  #
@@ -2071,6 +2318,9 @@ module Aws::Backup
2071
2318
  # Returns only backup jobs completed before a date expressed in Unix
2072
2319
  # format and Coordinated Universal Time (UTC).
2073
2320
  #
2321
+ # @option params [String] :by_parent_job_id
2322
+ # This is a filter to list child (nested) jobs based on parent job ID.
2323
+ #
2074
2324
  # @return [Types::ListBackupJobsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2075
2325
  #
2076
2326
  # * {Types::ListBackupJobsOutput#backup_jobs #backup_jobs} => Array&lt;Types::BackupJob&gt;
@@ -2084,7 +2334,7 @@ module Aws::Backup
2084
2334
  # next_token: "string",
2085
2335
  # max_results: 1,
2086
2336
  # by_resource_arn: "ARN",
2087
- # by_state: "CREATED", # accepts CREATED, PENDING, RUNNING, ABORTING, ABORTED, COMPLETED, FAILED, EXPIRED
2337
+ # by_state: "CREATED", # accepts CREATED, PENDING, RUNNING, ABORTING, ABORTED, COMPLETED, FAILED, EXPIRED, PARTIAL
2088
2338
  # by_backup_vault_name: "BackupVaultName",
2089
2339
  # by_created_before: Time.now,
2090
2340
  # by_created_after: Time.now,
@@ -2092,6 +2342,7 @@ module Aws::Backup
2092
2342
  # by_account_id: "AccountId",
2093
2343
  # by_complete_after: Time.now,
2094
2344
  # by_complete_before: Time.now,
2345
+ # by_parent_job_id: "string",
2095
2346
  # })
2096
2347
  #
2097
2348
  # @example Response structure
@@ -2105,7 +2356,7 @@ module Aws::Backup
2105
2356
  # resp.backup_jobs[0].resource_arn #=> String
2106
2357
  # resp.backup_jobs[0].creation_date #=> Time
2107
2358
  # resp.backup_jobs[0].completion_date #=> Time
2108
- # resp.backup_jobs[0].state #=> String, one of "CREATED", "PENDING", "RUNNING", "ABORTING", "ABORTED", "COMPLETED", "FAILED", "EXPIRED"
2359
+ # resp.backup_jobs[0].state #=> String, one of "CREATED", "PENDING", "RUNNING", "ABORTING", "ABORTED", "COMPLETED", "FAILED", "EXPIRED", "PARTIAL"
2109
2360
  # resp.backup_jobs[0].status_message #=> String
2110
2361
  # resp.backup_jobs[0].percent_done #=> String
2111
2362
  # resp.backup_jobs[0].backup_size_in_bytes #=> Integer
@@ -2121,6 +2372,8 @@ module Aws::Backup
2121
2372
  # resp.backup_jobs[0].backup_options #=> Hash
2122
2373
  # resp.backup_jobs[0].backup_options["BackupOptionKey"] #=> String
2123
2374
  # resp.backup_jobs[0].backup_type #=> String
2375
+ # resp.backup_jobs[0].parent_job_id #=> String
2376
+ # resp.backup_jobs[0].is_parent #=> Boolean
2124
2377
  # resp.next_token #=> String
2125
2378
  #
2126
2379
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobs AWS API Documentation
@@ -2458,6 +2711,9 @@ module Aws::Backup
2458
2711
  # Returns only copy jobs completed after a date expressed in Unix format
2459
2712
  # and Coordinated Universal Time (UTC).
2460
2713
  #
2714
+ # @option params [String] :by_parent_job_id
2715
+ # This is a filter to list child (nested) jobs based on parent job ID.
2716
+ #
2461
2717
  # @return [Types::ListCopyJobsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2462
2718
  #
2463
2719
  # * {Types::ListCopyJobsOutput#copy_jobs #copy_jobs} => Array&lt;Types::CopyJob&gt;
@@ -2471,7 +2727,7 @@ module Aws::Backup
2471
2727
  # next_token: "string",
2472
2728
  # max_results: 1,
2473
2729
  # by_resource_arn: "ARN",
2474
- # by_state: "CREATED", # accepts CREATED, RUNNING, COMPLETED, FAILED
2730
+ # by_state: "CREATED", # accepts CREATED, RUNNING, COMPLETED, FAILED, PARTIAL
2475
2731
  # by_created_before: Time.now,
2476
2732
  # by_created_after: Time.now,
2477
2733
  # by_resource_type: "ResourceType",
@@ -2479,6 +2735,7 @@ module Aws::Backup
2479
2735
  # by_account_id: "AccountId",
2480
2736
  # by_complete_before: Time.now,
2481
2737
  # by_complete_after: Time.now,
2738
+ # by_parent_job_id: "string",
2482
2739
  # })
2483
2740
  #
2484
2741
  # @example Response structure
@@ -2493,7 +2750,7 @@ module Aws::Backup
2493
2750
  # resp.copy_jobs[0].resource_arn #=> String
2494
2751
  # resp.copy_jobs[0].creation_date #=> Time
2495
2752
  # resp.copy_jobs[0].completion_date #=> Time
2496
- # resp.copy_jobs[0].state #=> String, one of "CREATED", "RUNNING", "COMPLETED", "FAILED"
2753
+ # resp.copy_jobs[0].state #=> String, one of "CREATED", "RUNNING", "COMPLETED", "FAILED", "PARTIAL"
2497
2754
  # resp.copy_jobs[0].status_message #=> String
2498
2755
  # resp.copy_jobs[0].backup_size_in_bytes #=> Integer
2499
2756
  # resp.copy_jobs[0].iam_role_arn #=> String
@@ -2502,6 +2759,12 @@ module Aws::Backup
2502
2759
  # resp.copy_jobs[0].created_by.backup_plan_version #=> String
2503
2760
  # resp.copy_jobs[0].created_by.backup_rule_id #=> String
2504
2761
  # resp.copy_jobs[0].resource_type #=> String
2762
+ # resp.copy_jobs[0].parent_job_id #=> String
2763
+ # resp.copy_jobs[0].is_parent #=> Boolean
2764
+ # resp.copy_jobs[0].composite_member_identifier #=> String
2765
+ # resp.copy_jobs[0].number_of_child_jobs #=> Integer
2766
+ # resp.copy_jobs[0].child_jobs_in_state #=> Hash
2767
+ # resp.copy_jobs[0].child_jobs_in_state["CopyJobState"] #=> Integer
2505
2768
  # resp.next_token #=> String
2506
2769
  #
2507
2770
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobs AWS API Documentation
@@ -2559,6 +2822,52 @@ module Aws::Backup
2559
2822
  req.send_request(options)
2560
2823
  end
2561
2824
 
2825
+ # This action returns metadata about active and previous legal holds.
2826
+ #
2827
+ # @option params [String] :next_token
2828
+ # The next item following a partial list of returned resources. For
2829
+ # example, if a request is made to return `maxResults` number of
2830
+ # resources, `NextToken` allows you to return more items in your list
2831
+ # starting at the location pointed to by the next token.
2832
+ #
2833
+ # @option params [Integer] :max_results
2834
+ # The maximum number of resource list items to be returned.
2835
+ #
2836
+ # @return [Types::ListLegalHoldsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2837
+ #
2838
+ # * {Types::ListLegalHoldsOutput#next_token #next_token} => String
2839
+ # * {Types::ListLegalHoldsOutput#legal_holds #legal_holds} => Array&lt;Types::LegalHold&gt;
2840
+ #
2841
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2842
+ #
2843
+ # @example Request syntax with placeholder values
2844
+ #
2845
+ # resp = client.list_legal_holds({
2846
+ # next_token: "string",
2847
+ # max_results: 1,
2848
+ # })
2849
+ #
2850
+ # @example Response structure
2851
+ #
2852
+ # resp.next_token #=> String
2853
+ # resp.legal_holds #=> Array
2854
+ # resp.legal_holds[0].title #=> String
2855
+ # resp.legal_holds[0].status #=> String, one of "CREATING", "ACTIVE", "CANCELING", "CANCELED"
2856
+ # resp.legal_holds[0].description #=> String
2857
+ # resp.legal_holds[0].legal_hold_id #=> String
2858
+ # resp.legal_holds[0].legal_hold_arn #=> String
2859
+ # resp.legal_holds[0].creation_date #=> Time
2860
+ # resp.legal_holds[0].cancellation_date #=> Time
2861
+ #
2862
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListLegalHolds AWS API Documentation
2863
+ #
2864
+ # @overload list_legal_holds(params = {})
2865
+ # @param [Hash] params ({})
2866
+ def list_legal_holds(params = {}, options = {})
2867
+ req = build_request(:list_legal_holds, params)
2868
+ req.send_request(options)
2869
+ end
2870
+
2562
2871
  # Returns an array of resources successfully backed up by Backup,
2563
2872
  # including the time the resource was saved, an Amazon Resource Name
2564
2873
  # (ARN) of the resource, and a resource type.
@@ -2644,6 +2953,10 @@ module Aws::Backup
2644
2953
  # Returns only recovery points that were created after the specified
2645
2954
  # timestamp.
2646
2955
  #
2956
+ # @option params [String] :by_parent_recovery_point_arn
2957
+ # This returns only recovery points that match the specified parent
2958
+ # (composite) recovery point Amazon Resource Name (ARN).
2959
+ #
2647
2960
  # @return [Types::ListRecoveryPointsByBackupVaultOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2648
2961
  #
2649
2962
  # * {Types::ListRecoveryPointsByBackupVaultOutput#next_token #next_token} => String
@@ -2662,6 +2975,7 @@ module Aws::Backup
2662
2975
  # by_backup_plan_id: "string",
2663
2976
  # by_created_before: Time.now,
2664
2977
  # by_created_after: Time.now,
2978
+ # by_parent_recovery_point_arn: "ARN",
2665
2979
  # })
2666
2980
  #
2667
2981
  # @example Response structure
@@ -2691,6 +3005,9 @@ module Aws::Backup
2691
3005
  # resp.recovery_points[0].encryption_key_arn #=> String
2692
3006
  # resp.recovery_points[0].is_encrypted #=> Boolean
2693
3007
  # resp.recovery_points[0].last_restore_time #=> Time
3008
+ # resp.recovery_points[0].parent_recovery_point_arn #=> String
3009
+ # resp.recovery_points[0].composite_member_identifier #=> String
3010
+ # resp.recovery_points[0].is_parent #=> Boolean
2694
3011
  #
2695
3012
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByBackupVault AWS API Documentation
2696
3013
  #
@@ -2701,6 +3018,51 @@ module Aws::Backup
2701
3018
  req.send_request(options)
2702
3019
  end
2703
3020
 
3021
+ # This action returns recovery point ARNs (Amazon Resource Names) of the
3022
+ # specified legal hold.
3023
+ #
3024
+ # @option params [required, String] :legal_hold_id
3025
+ # This is the ID of the legal hold.
3026
+ #
3027
+ # @option params [String] :next_token
3028
+ # This is the next item following a partial list of returned resources.
3029
+ # For example, if a request is made to return `maxResults` number of
3030
+ # resources, `NextToken` allows you to return more items in your list
3031
+ # starting at the location pointed to by the next token.
3032
+ #
3033
+ # @option params [Integer] :max_results
3034
+ # This is the maximum number of resource list items to be returned.
3035
+ #
3036
+ # @return [Types::ListRecoveryPointsByLegalHoldOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3037
+ #
3038
+ # * {Types::ListRecoveryPointsByLegalHoldOutput#recovery_points #recovery_points} => Array&lt;Types::RecoveryPointMember&gt;
3039
+ # * {Types::ListRecoveryPointsByLegalHoldOutput#next_token #next_token} => String
3040
+ #
3041
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3042
+ #
3043
+ # @example Request syntax with placeholder values
3044
+ #
3045
+ # resp = client.list_recovery_points_by_legal_hold({
3046
+ # legal_hold_id: "string", # required
3047
+ # next_token: "string",
3048
+ # max_results: 1,
3049
+ # })
3050
+ #
3051
+ # @example Response structure
3052
+ #
3053
+ # resp.recovery_points #=> Array
3054
+ # resp.recovery_points[0].recovery_point_arn #=> String
3055
+ # resp.next_token #=> String
3056
+ #
3057
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByLegalHold AWS API Documentation
3058
+ #
3059
+ # @overload list_recovery_points_by_legal_hold(params = {})
3060
+ # @param [Hash] params ({})
3061
+ def list_recovery_points_by_legal_hold(params = {}, options = {})
3062
+ req = build_request(:list_recovery_points_by_legal_hold, params)
3063
+ req.send_request(options)
3064
+ end
3065
+
2704
3066
  # Returns detailed information about all the recovery points of the type
2705
3067
  # specified by a resource Amazon Resource Name (ARN).
2706
3068
  #
@@ -2752,6 +3114,8 @@ module Aws::Backup
2752
3114
  # resp.recovery_points[0].encryption_key_arn #=> String
2753
3115
  # resp.recovery_points[0].backup_size_bytes #=> Integer
2754
3116
  # resp.recovery_points[0].backup_vault_name #=> String
3117
+ # resp.recovery_points[0].is_parent #=> Boolean
3118
+ # resp.recovery_points[0].parent_recovery_point_arn #=> String
2755
3119
  #
2756
3120
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResource AWS API Documentation
2757
3121
  #
@@ -2872,6 +3236,12 @@ module Aws::Backup
2872
3236
  # resp.report_plans[0].report_setting.framework_arns #=> Array
2873
3237
  # resp.report_plans[0].report_setting.framework_arns[0] #=> String
2874
3238
  # resp.report_plans[0].report_setting.number_of_frameworks #=> Integer
3239
+ # resp.report_plans[0].report_setting.accounts #=> Array
3240
+ # resp.report_plans[0].report_setting.accounts[0] #=> String
3241
+ # resp.report_plans[0].report_setting.organization_units #=> Array
3242
+ # resp.report_plans[0].report_setting.organization_units[0] #=> String
3243
+ # resp.report_plans[0].report_setting.regions #=> Array
3244
+ # resp.report_plans[0].report_setting.regions[0] #=> String
2875
3245
  # resp.report_plans[0].report_delivery_channel.s3_bucket_name #=> String
2876
3246
  # resp.report_plans[0].report_delivery_channel.s3_key_prefix #=> String
2877
3247
  # resp.report_plans[0].report_delivery_channel.formats #=> Array
@@ -3189,8 +3559,10 @@ module Aws::Backup
3189
3559
  #
3190
3560
  # * `S3_BACKUP_OBJECT_FAILED` \| `S3_RESTORE_OBJECT_FAILED`
3191
3561
  #
3192
- # <note markdown="1"> Ignore the list below because it includes deprecated events. Refer to
3193
- # the list above.
3562
+ # <note markdown="1"> The list below shows items that are deprecated events (for reference)
3563
+ # and are no longer in use. They are no longer supported and will not
3564
+ # return statuses or notifications. Refer to the list above for current
3565
+ # supported events.
3194
3566
  #
3195
3567
  # </note>
3196
3568
  #
@@ -3242,7 +3614,8 @@ module Aws::Backup
3242
3614
  # @option params [Integer] :start_window_minutes
3243
3615
  # A value in minutes after a backup is scheduled before a job will be
3244
3616
  # canceled if it doesn't start successfully. This value is optional,
3245
- # and the default is 8 hours.
3617
+ # and the default is 8 hours. If this value is included, it must be at
3618
+ # least 60 minutes to avoid errors.
3246
3619
  #
3247
3620
  # @option params [Integer] :complete_window_minutes
3248
3621
  # A value in minutes during which a successfully started backup must
@@ -3290,6 +3663,7 @@ module Aws::Backup
3290
3663
  # * {Types::StartBackupJobOutput#backup_job_id #backup_job_id} => String
3291
3664
  # * {Types::StartBackupJobOutput#recovery_point_arn #recovery_point_arn} => String
3292
3665
  # * {Types::StartBackupJobOutput#creation_date #creation_date} => Time
3666
+ # * {Types::StartBackupJobOutput#is_parent #is_parent} => Boolean
3293
3667
  #
3294
3668
  # @example Request syntax with placeholder values
3295
3669
  #
@@ -3317,6 +3691,7 @@ module Aws::Backup
3317
3691
  # resp.backup_job_id #=> String
3318
3692
  # resp.recovery_point_arn #=> String
3319
3693
  # resp.creation_date #=> Time
3694
+ # resp.is_parent #=> Boolean
3320
3695
  #
3321
3696
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJob AWS API Documentation
3322
3697
  #
@@ -3380,6 +3755,7 @@ module Aws::Backup
3380
3755
  #
3381
3756
  # * {Types::StartCopyJobOutput#copy_job_id #copy_job_id} => String
3382
3757
  # * {Types::StartCopyJobOutput#creation_date #creation_date} => Time
3758
+ # * {Types::StartCopyJobOutput#is_parent #is_parent} => Boolean
3383
3759
  #
3384
3760
  # @example Request syntax with placeholder values
3385
3761
  #
@@ -3399,6 +3775,7 @@ module Aws::Backup
3399
3775
  #
3400
3776
  # resp.copy_job_id #=> String
3401
3777
  # resp.creation_date #=> Time
3778
+ # resp.is_parent #=> Boolean
3402
3779
  #
3403
3780
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartCopyJob AWS API Documentation
3404
3781
  #
@@ -3496,7 +3873,7 @@ module Aws::Backup
3496
3873
  #
3497
3874
  # @option params [String] :iam_role_arn
3498
3875
  # The Amazon Resource Name (ARN) of the IAM role that Backup uses to
3499
- # create the target recovery point; for example,
3876
+ # create the target resource; for example:
3500
3877
  # `arn:aws:iam::123456789012:role/S3Access`.
3501
3878
  #
3502
3879
  # @option params [String] :idempotency_token
@@ -3564,6 +3941,11 @@ module Aws::Backup
3564
3941
 
3565
3942
  # Attempts to cancel a job to create a one-time backup of a resource.
3566
3943
  #
3944
+ # This action is not supported for the following services: Amazon FSx
3945
+ # for Windows File Server, Amazon FSx for Lustre, FSx for ONTAP , Amazon
3946
+ # FSx for OpenZFS, Amazon DocumentDB (with MongoDB compatibility),
3947
+ # Amazon RDS, Amazon Aurora, and Amazon Neptune.
3948
+ #
3567
3949
  # @option params [required, String] :backup_job_id
3568
3950
  # Uniquely identifies a request to Backup to back up a resource.
3569
3951
  #
@@ -4012,6 +4394,9 @@ module Aws::Backup
4012
4394
  # report_template: "string", # required
4013
4395
  # framework_arns: ["string"],
4014
4396
  # number_of_frameworks: 1,
4397
+ # accounts: ["string"],
4398
+ # organization_units: ["string"],
4399
+ # regions: ["string"],
4015
4400
  # },
4016
4401
  # idempotency_token: "string",
4017
4402
  # })
@@ -4044,7 +4429,7 @@ module Aws::Backup
4044
4429
  params: params,
4045
4430
  config: config)
4046
4431
  context[:gem_name] = 'aws-sdk-backup'
4047
- context[:gem_version] = '1.46.0'
4432
+ context[:gem_version] = '1.47.0'
4048
4433
  Seahorse::Client::Request.new(handlers, context)
4049
4434
  end
4050
4435