aws-sdk-backup 1.45.0 → 1.47.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:backup)
@@ -79,8 +79,9 @@ module Aws::Backup
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::RestJson)
84
+ add_plugin(Aws::Backup::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -287,6 +288,19 @@ module Aws::Backup
287
288
  # ** Please note ** When response stubbing is enabled, no HTTP
288
289
  # requests are made, and retries are disabled.
289
290
  #
291
+ # @option options [Aws::TokenProvider] :token_provider
292
+ # A Bearer Token Provider. This can be an instance of any one of the
293
+ # following classes:
294
+ #
295
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
296
+ # tokens.
297
+ #
298
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
299
+ # access token generated from `aws login`.
300
+ #
301
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
302
+ # will be used to search for tokens configured for your profile in shared configuration files.
303
+ #
290
304
  # @option options [Boolean] :use_dualstack_endpoint
291
305
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
292
306
  # will be used if available.
@@ -300,6 +314,9 @@ module Aws::Backup
300
314
  # When `true`, request parameters are validated before
301
315
  # sending the request.
302
316
  #
317
+ # @option options [Aws::Backup::EndpointProvider] :endpoint_provider
318
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Backup::EndpointParameters`
319
+ #
303
320
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
304
321
  # requests through. Formatted like 'http://proxy.com:123'.
305
322
  #
@@ -351,6 +368,39 @@ module Aws::Backup
351
368
 
352
369
  # @!group API Operations
353
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
+
354
404
  # Creates a backup plan using a backup plan name and backup rules. A
355
405
  # backup plan is a document that contains information that Backup uses
356
406
  # to schedule tasks that create recovery points for resources.
@@ -685,6 +735,86 @@ module Aws::Backup
685
735
  req.send_request(options)
686
736
  end
687
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
+
688
818
  # Creates a report plan. A report plan is a document that contains
689
819
  # information about the contents of the report and where Backup will
690
820
  # deliver it.
@@ -750,6 +880,9 @@ module Aws::Backup
750
880
  # report_template: "string", # required
751
881
  # framework_arns: ["string"],
752
882
  # number_of_frameworks: 1,
883
+ # accounts: ["string"],
884
+ # organization_units: ["string"],
885
+ # regions: ["string"],
753
886
  # },
754
887
  # report_plan_tags: {
755
888
  # "string" => "string",
@@ -974,6 +1107,23 @@ module Aws::Backup
974
1107
  # endpoint deletes the existing continuous backup and stops future
975
1108
  # continuous backup.
976
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
+ #
977
1127
  # @option params [required, String] :backup_vault_name
978
1128
  # The name of a logical container where backups are stored. Backup
979
1129
  # vaults are identified by names that are unique to the account used to
@@ -1052,6 +1202,10 @@ module Aws::Backup
1052
1202
  # * {Types::DescribeBackupJobOutput#start_by #start_by} => Time
1053
1203
  # * {Types::DescribeBackupJobOutput#backup_options #backup_options} => Hash&lt;String,String&gt;
1054
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;
1055
1209
  #
1056
1210
  # @example Request syntax with placeholder values
1057
1211
  #
@@ -1069,7 +1223,7 @@ module Aws::Backup
1069
1223
  # resp.resource_arn #=> String
1070
1224
  # resp.creation_date #=> Time
1071
1225
  # resp.completion_date #=> Time
1072
- # 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"
1073
1227
  # resp.status_message #=> String
1074
1228
  # resp.percent_done #=> String
1075
1229
  # resp.backup_size_in_bytes #=> Integer
@@ -1085,6 +1239,11 @@ module Aws::Backup
1085
1239
  # resp.backup_options #=> Hash
1086
1240
  # resp.backup_options["BackupOptionKey"] #=> String
1087
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
1088
1247
  #
1089
1248
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJob AWS API Documentation
1090
1249
  #
@@ -1170,7 +1329,7 @@ module Aws::Backup
1170
1329
  # resp.copy_job.resource_arn #=> String
1171
1330
  # resp.copy_job.creation_date #=> Time
1172
1331
  # resp.copy_job.completion_date #=> Time
1173
- # resp.copy_job.state #=> String, one of "CREATED", "RUNNING", "COMPLETED", "FAILED"
1332
+ # resp.copy_job.state #=> String, one of "CREATED", "RUNNING", "COMPLETED", "FAILED", "PARTIAL"
1174
1333
  # resp.copy_job.status_message #=> String
1175
1334
  # resp.copy_job.backup_size_in_bytes #=> Integer
1176
1335
  # resp.copy_job.iam_role_arn #=> String
@@ -1179,6 +1338,12 @@ module Aws::Backup
1179
1338
  # resp.copy_job.created_by.backup_plan_version #=> String
1180
1339
  # resp.copy_job.created_by.backup_rule_id #=> String
1181
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
1182
1347
  #
1183
1348
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeCopyJob AWS API Documentation
1184
1349
  #
@@ -1336,6 +1501,9 @@ module Aws::Backup
1336
1501
  # * {Types::DescribeRecoveryPointOutput#is_encrypted #is_encrypted} => Boolean
1337
1502
  # * {Types::DescribeRecoveryPointOutput#storage_class #storage_class} => String
1338
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
1339
1507
  #
1340
1508
  # @example Request syntax with placeholder values
1341
1509
  #
@@ -1370,6 +1538,9 @@ module Aws::Backup
1370
1538
  # resp.is_encrypted #=> Boolean
1371
1539
  # resp.storage_class #=> String, one of "WARM", "COLD", "DELETED"
1372
1540
  # resp.last_restore_time #=> Time
1541
+ # resp.parent_recovery_point_arn #=> String
1542
+ # resp.composite_member_identifier #=> String
1543
+ # resp.is_parent #=> Boolean
1373
1544
  #
1374
1545
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRecoveryPoint AWS API Documentation
1375
1546
  #
@@ -1472,6 +1643,12 @@ module Aws::Backup
1472
1643
  # resp.report_plan.report_setting.framework_arns #=> Array
1473
1644
  # resp.report_plan.report_setting.framework_arns[0] #=> String
1474
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
1475
1652
  # resp.report_plan.report_delivery_channel.s3_bucket_name #=> String
1476
1653
  # resp.report_plan.report_delivery_channel.s3_key_prefix #=> String
1477
1654
  # resp.report_plan.report_delivery_channel.formats #=> Array
@@ -1576,6 +1753,40 @@ module Aws::Backup
1576
1753
  req.send_request(options)
1577
1754
  end
1578
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
+
1579
1790
  # Returns the backup plan that is specified by the plan ID as a backup
1580
1791
  # template.
1581
1792
  #
@@ -1912,6 +2123,59 @@ module Aws::Backup
1912
2123
  req.send_request(options)
1913
2124
  end
1914
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
+
1915
2179
  # Returns a set of metadata key-value pairs that were used to create the
1916
2180
  # backup.
1917
2181
  #
@@ -2054,6 +2318,9 @@ module Aws::Backup
2054
2318
  # Returns only backup jobs completed before a date expressed in Unix
2055
2319
  # format and Coordinated Universal Time (UTC).
2056
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
+ #
2057
2324
  # @return [Types::ListBackupJobsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2058
2325
  #
2059
2326
  # * {Types::ListBackupJobsOutput#backup_jobs #backup_jobs} => Array&lt;Types::BackupJob&gt;
@@ -2067,7 +2334,7 @@ module Aws::Backup
2067
2334
  # next_token: "string",
2068
2335
  # max_results: 1,
2069
2336
  # by_resource_arn: "ARN",
2070
- # 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
2071
2338
  # by_backup_vault_name: "BackupVaultName",
2072
2339
  # by_created_before: Time.now,
2073
2340
  # by_created_after: Time.now,
@@ -2075,6 +2342,7 @@ module Aws::Backup
2075
2342
  # by_account_id: "AccountId",
2076
2343
  # by_complete_after: Time.now,
2077
2344
  # by_complete_before: Time.now,
2345
+ # by_parent_job_id: "string",
2078
2346
  # })
2079
2347
  #
2080
2348
  # @example Response structure
@@ -2088,7 +2356,7 @@ module Aws::Backup
2088
2356
  # resp.backup_jobs[0].resource_arn #=> String
2089
2357
  # resp.backup_jobs[0].creation_date #=> Time
2090
2358
  # resp.backup_jobs[0].completion_date #=> Time
2091
- # 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"
2092
2360
  # resp.backup_jobs[0].status_message #=> String
2093
2361
  # resp.backup_jobs[0].percent_done #=> String
2094
2362
  # resp.backup_jobs[0].backup_size_in_bytes #=> Integer
@@ -2104,6 +2372,8 @@ module Aws::Backup
2104
2372
  # resp.backup_jobs[0].backup_options #=> Hash
2105
2373
  # resp.backup_jobs[0].backup_options["BackupOptionKey"] #=> String
2106
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
2107
2377
  # resp.next_token #=> String
2108
2378
  #
2109
2379
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobs AWS API Documentation
@@ -2441,6 +2711,9 @@ module Aws::Backup
2441
2711
  # Returns only copy jobs completed after a date expressed in Unix format
2442
2712
  # and Coordinated Universal Time (UTC).
2443
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
+ #
2444
2717
  # @return [Types::ListCopyJobsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2445
2718
  #
2446
2719
  # * {Types::ListCopyJobsOutput#copy_jobs #copy_jobs} => Array&lt;Types::CopyJob&gt;
@@ -2454,7 +2727,7 @@ module Aws::Backup
2454
2727
  # next_token: "string",
2455
2728
  # max_results: 1,
2456
2729
  # by_resource_arn: "ARN",
2457
- # by_state: "CREATED", # accepts CREATED, RUNNING, COMPLETED, FAILED
2730
+ # by_state: "CREATED", # accepts CREATED, RUNNING, COMPLETED, FAILED, PARTIAL
2458
2731
  # by_created_before: Time.now,
2459
2732
  # by_created_after: Time.now,
2460
2733
  # by_resource_type: "ResourceType",
@@ -2462,6 +2735,7 @@ module Aws::Backup
2462
2735
  # by_account_id: "AccountId",
2463
2736
  # by_complete_before: Time.now,
2464
2737
  # by_complete_after: Time.now,
2738
+ # by_parent_job_id: "string",
2465
2739
  # })
2466
2740
  #
2467
2741
  # @example Response structure
@@ -2476,7 +2750,7 @@ module Aws::Backup
2476
2750
  # resp.copy_jobs[0].resource_arn #=> String
2477
2751
  # resp.copy_jobs[0].creation_date #=> Time
2478
2752
  # resp.copy_jobs[0].completion_date #=> Time
2479
- # 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"
2480
2754
  # resp.copy_jobs[0].status_message #=> String
2481
2755
  # resp.copy_jobs[0].backup_size_in_bytes #=> Integer
2482
2756
  # resp.copy_jobs[0].iam_role_arn #=> String
@@ -2485,6 +2759,12 @@ module Aws::Backup
2485
2759
  # resp.copy_jobs[0].created_by.backup_plan_version #=> String
2486
2760
  # resp.copy_jobs[0].created_by.backup_rule_id #=> String
2487
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
2488
2768
  # resp.next_token #=> String
2489
2769
  #
2490
2770
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobs AWS API Documentation
@@ -2542,6 +2822,52 @@ module Aws::Backup
2542
2822
  req.send_request(options)
2543
2823
  end
2544
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
+
2545
2871
  # Returns an array of resources successfully backed up by Backup,
2546
2872
  # including the time the resource was saved, an Amazon Resource Name
2547
2873
  # (ARN) of the resource, and a resource type.
@@ -2627,6 +2953,10 @@ module Aws::Backup
2627
2953
  # Returns only recovery points that were created after the specified
2628
2954
  # timestamp.
2629
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
+ #
2630
2960
  # @return [Types::ListRecoveryPointsByBackupVaultOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2631
2961
  #
2632
2962
  # * {Types::ListRecoveryPointsByBackupVaultOutput#next_token #next_token} => String
@@ -2645,6 +2975,7 @@ module Aws::Backup
2645
2975
  # by_backup_plan_id: "string",
2646
2976
  # by_created_before: Time.now,
2647
2977
  # by_created_after: Time.now,
2978
+ # by_parent_recovery_point_arn: "ARN",
2648
2979
  # })
2649
2980
  #
2650
2981
  # @example Response structure
@@ -2674,6 +3005,9 @@ module Aws::Backup
2674
3005
  # resp.recovery_points[0].encryption_key_arn #=> String
2675
3006
  # resp.recovery_points[0].is_encrypted #=> Boolean
2676
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
2677
3011
  #
2678
3012
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByBackupVault AWS API Documentation
2679
3013
  #
@@ -2684,6 +3018,51 @@ module Aws::Backup
2684
3018
  req.send_request(options)
2685
3019
  end
2686
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
+
2687
3066
  # Returns detailed information about all the recovery points of the type
2688
3067
  # specified by a resource Amazon Resource Name (ARN).
2689
3068
  #
@@ -2735,6 +3114,8 @@ module Aws::Backup
2735
3114
  # resp.recovery_points[0].encryption_key_arn #=> String
2736
3115
  # resp.recovery_points[0].backup_size_bytes #=> Integer
2737
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
2738
3119
  #
2739
3120
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResource AWS API Documentation
2740
3121
  #
@@ -2855,6 +3236,12 @@ module Aws::Backup
2855
3236
  # resp.report_plans[0].report_setting.framework_arns #=> Array
2856
3237
  # resp.report_plans[0].report_setting.framework_arns[0] #=> String
2857
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
2858
3245
  # resp.report_plans[0].report_delivery_channel.s3_bucket_name #=> String
2859
3246
  # resp.report_plans[0].report_delivery_channel.s3_key_prefix #=> String
2860
3247
  # resp.report_plans[0].report_delivery_channel.formats #=> Array
@@ -3172,8 +3559,10 @@ module Aws::Backup
3172
3559
  #
3173
3560
  # * `S3_BACKUP_OBJECT_FAILED` \| `S3_RESTORE_OBJECT_FAILED`
3174
3561
  #
3175
- # <note markdown="1"> Ignore the list below because it includes deprecated events. Refer to
3176
- # 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.
3177
3566
  #
3178
3567
  # </note>
3179
3568
  #
@@ -3225,7 +3614,8 @@ module Aws::Backup
3225
3614
  # @option params [Integer] :start_window_minutes
3226
3615
  # A value in minutes after a backup is scheduled before a job will be
3227
3616
  # canceled if it doesn't start successfully. This value is optional,
3228
- # 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.
3229
3619
  #
3230
3620
  # @option params [Integer] :complete_window_minutes
3231
3621
  # A value in minutes during which a successfully started backup must
@@ -3273,6 +3663,7 @@ module Aws::Backup
3273
3663
  # * {Types::StartBackupJobOutput#backup_job_id #backup_job_id} => String
3274
3664
  # * {Types::StartBackupJobOutput#recovery_point_arn #recovery_point_arn} => String
3275
3665
  # * {Types::StartBackupJobOutput#creation_date #creation_date} => Time
3666
+ # * {Types::StartBackupJobOutput#is_parent #is_parent} => Boolean
3276
3667
  #
3277
3668
  # @example Request syntax with placeholder values
3278
3669
  #
@@ -3300,6 +3691,7 @@ module Aws::Backup
3300
3691
  # resp.backup_job_id #=> String
3301
3692
  # resp.recovery_point_arn #=> String
3302
3693
  # resp.creation_date #=> Time
3694
+ # resp.is_parent #=> Boolean
3303
3695
  #
3304
3696
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJob AWS API Documentation
3305
3697
  #
@@ -3363,6 +3755,7 @@ module Aws::Backup
3363
3755
  #
3364
3756
  # * {Types::StartCopyJobOutput#copy_job_id #copy_job_id} => String
3365
3757
  # * {Types::StartCopyJobOutput#creation_date #creation_date} => Time
3758
+ # * {Types::StartCopyJobOutput#is_parent #is_parent} => Boolean
3366
3759
  #
3367
3760
  # @example Request syntax with placeholder values
3368
3761
  #
@@ -3382,6 +3775,7 @@ module Aws::Backup
3382
3775
  #
3383
3776
  # resp.copy_job_id #=> String
3384
3777
  # resp.creation_date #=> Time
3778
+ # resp.is_parent #=> Boolean
3385
3779
  #
3386
3780
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartCopyJob AWS API Documentation
3387
3781
  #
@@ -3479,7 +3873,7 @@ module Aws::Backup
3479
3873
  #
3480
3874
  # @option params [String] :iam_role_arn
3481
3875
  # The Amazon Resource Name (ARN) of the IAM role that Backup uses to
3482
- # create the target recovery point; for example,
3876
+ # create the target resource; for example:
3483
3877
  # `arn:aws:iam::123456789012:role/S3Access`.
3484
3878
  #
3485
3879
  # @option params [String] :idempotency_token
@@ -3547,6 +3941,11 @@ module Aws::Backup
3547
3941
 
3548
3942
  # Attempts to cancel a job to create a one-time backup of a resource.
3549
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
+ #
3550
3949
  # @option params [required, String] :backup_job_id
3551
3950
  # Uniquely identifies a request to Backup to back up a resource.
3552
3951
  #
@@ -3995,6 +4394,9 @@ module Aws::Backup
3995
4394
  # report_template: "string", # required
3996
4395
  # framework_arns: ["string"],
3997
4396
  # number_of_frameworks: 1,
4397
+ # accounts: ["string"],
4398
+ # organization_units: ["string"],
4399
+ # regions: ["string"],
3998
4400
  # },
3999
4401
  # idempotency_token: "string",
4000
4402
  # })
@@ -4027,7 +4429,7 @@ module Aws::Backup
4027
4429
  params: params,
4028
4430
  config: config)
4029
4431
  context[:gem_name] = 'aws-sdk-backup'
4030
- context[:gem_version] = '1.45.0'
4432
+ context[:gem_version] = '1.47.0'
4031
4433
  Seahorse::Client::Request.new(handlers, context)
4032
4434
  end
4033
4435