aws-sdk-backup 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
File without changes
@@ -0,0 +1,14 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::Backup
9
+ module Errors
10
+
11
+ extend Aws::Errors::DynamicErrors
12
+
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::Backup
9
+ class Resource
10
+
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
16
+
17
+ # @return [Client]
18
+ def client
19
+ @client
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,3451 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::Backup
9
+ module Types
10
+
11
+ # Contains detailed information about a backup job.
12
+ #
13
+ # @!attribute [rw] backup_job_id
14
+ # Uniquely identifies a request to AWS Backup to back up a resource.
15
+ # @return [String]
16
+ #
17
+ # @!attribute [rw] backup_vault_name
18
+ # The name of a logical container where backups are stored. Backup
19
+ # vaults are identified by names that are unique to the account used
20
+ # to create them and the AWS Region where they are created. They
21
+ # consist of lowercase letters, numbers, and hyphens.
22
+ # @return [String]
23
+ #
24
+ # @!attribute [rw] backup_vault_arn
25
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
26
+ # vault; for example,
27
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
28
+ # @return [String]
29
+ #
30
+ # @!attribute [rw] recovery_point_arn
31
+ # An ARN that uniquely identifies a recovery point; for example,
32
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
33
+ # @return [String]
34
+ #
35
+ # @!attribute [rw] resource_arn
36
+ # An ARN that uniquely identifies a resource. The format of the ARN
37
+ # depends on the resource type.
38
+ # @return [String]
39
+ #
40
+ # @!attribute [rw] creation_date
41
+ # The date and time a backup job is created, in Unix format and
42
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
43
+ # accurate to milliseconds. For example, the value 1516925490.087
44
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
45
+ # @return [Time]
46
+ #
47
+ # @!attribute [rw] completion_date
48
+ # The date and time a job to create a backup job is completed, in Unix
49
+ # format and Coordinated Universal Time (UTC). The value of
50
+ # `CompletionDate` is accurate to milliseconds. For example, the value
51
+ # 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
52
+ # @return [Time]
53
+ #
54
+ # @!attribute [rw] state
55
+ # The current state of a resource recovery point.
56
+ # @return [String]
57
+ #
58
+ # @!attribute [rw] status_message
59
+ # A detailed message explaining the status of the job to back up a
60
+ # resource.
61
+ # @return [String]
62
+ #
63
+ # @!attribute [rw] percent_done
64
+ # Contains an estimated percentage complete of a job at the time the
65
+ # job status was queried.
66
+ # @return [String]
67
+ #
68
+ # @!attribute [rw] backup_size_in_bytes
69
+ # The size, in bytes, of a backup.
70
+ # @return [Integer]
71
+ #
72
+ # @!attribute [rw] iam_role_arn
73
+ # Specifies the IAM role ARN used to create the target recovery point;
74
+ # for example, `arn:aws:iam::123456789012:role/S3Access`.
75
+ # @return [String]
76
+ #
77
+ # @!attribute [rw] created_by
78
+ # Contains identifying information about the creation of a backup job,
79
+ # including the `BackupPlanArn`, `BackupPlanId`, `BackupPlanVersion`,
80
+ # and `BackupRuleId` of the backup plan used to create it.
81
+ # @return [Types::RecoveryPointCreator]
82
+ #
83
+ # @!attribute [rw] expected_completion_date
84
+ # The date and time a job to back up resources is expected to be
85
+ # completed, in Unix format and Coordinated Universal Time (UTC). The
86
+ # value of `ExpectedCompletionDate` is accurate to milliseconds. For
87
+ # example, the value 1516925490.087 represents Friday, January 26,
88
+ # 2018 12:11:30.087 AM.
89
+ # @return [Time]
90
+ #
91
+ # @!attribute [rw] start_by
92
+ # Specifies the time in Unix format and Coordinated Universal Time
93
+ # (UTC) when a backup job must be started before it is canceled. The
94
+ # value is calculated by adding the start window to the scheduled
95
+ # time. So if the scheduled time were 6:00 PM and the start window is
96
+ # 2 hours, the `StartBy` time would be 8:00 PM on the date specified.
97
+ # The value of `StartBy` is accurate to milliseconds. For example, the
98
+ # value 1516925490.087 represents Friday, January 26, 2018
99
+ # 12:11:30.087 AM.
100
+ # @return [Time]
101
+ #
102
+ # @!attribute [rw] resource_type
103
+ # The type of AWS resource to be backed-up; for example, an Amazon
104
+ # Elastic Block Store (Amazon EBS) volume or an Amazon Relational
105
+ # Database Service (Amazon RDS) database.
106
+ # @return [String]
107
+ #
108
+ # @!attribute [rw] bytes_transferred
109
+ # The size in bytes transferred to a backup vault at the time that the
110
+ # job status was queried.
111
+ # @return [Integer]
112
+ #
113
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupJob AWS API Documentation
114
+ #
115
+ class BackupJob < Struct.new(
116
+ :backup_job_id,
117
+ :backup_vault_name,
118
+ :backup_vault_arn,
119
+ :recovery_point_arn,
120
+ :resource_arn,
121
+ :creation_date,
122
+ :completion_date,
123
+ :state,
124
+ :status_message,
125
+ :percent_done,
126
+ :backup_size_in_bytes,
127
+ :iam_role_arn,
128
+ :created_by,
129
+ :expected_completion_date,
130
+ :start_by,
131
+ :resource_type,
132
+ :bytes_transferred)
133
+ include Aws::Structure
134
+ end
135
+
136
+ # Contains an optional backup plan display name and an array of
137
+ # `BackupRule` objects, each of which specifies a backup rule. Each rule
138
+ # in a backup plan is a separate scheduled task and can back up a
139
+ # different selection of AWS resources.
140
+ #
141
+ # @!attribute [rw] backup_plan_name
142
+ # The display name of a backup plan.
143
+ # @return [String]
144
+ #
145
+ # @!attribute [rw] rules
146
+ # An array of `BackupRule` objects, each of which specifies a
147
+ # scheduled task that is used to back up a selection of resources.
148
+ # @return [Array<Types::BackupRule>]
149
+ #
150
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupPlan AWS API Documentation
151
+ #
152
+ class BackupPlan < Struct.new(
153
+ :backup_plan_name,
154
+ :rules)
155
+ include Aws::Structure
156
+ end
157
+
158
+ # Contains an optional backup plan display name and an array of
159
+ # `BackupRule` objects, each of which specifies a backup rule. Each rule
160
+ # in a backup plan is a separate scheduled task and can back up a
161
+ # different selection of AWS resources.
162
+ #
163
+ # @note When making an API call, you may pass BackupPlanInput
164
+ # data as a hash:
165
+ #
166
+ # {
167
+ # backup_plan_name: "BackupPlanName", # required
168
+ # rules: [ # required
169
+ # {
170
+ # rule_name: "BackupRuleName", # required
171
+ # target_backup_vault_name: "BackupVaultName", # required
172
+ # schedule_expression: "CronExpression",
173
+ # start_window_minutes: 1,
174
+ # completion_window_minutes: 1,
175
+ # lifecycle: {
176
+ # move_to_cold_storage_after_days: 1,
177
+ # delete_after_days: 1,
178
+ # },
179
+ # recovery_point_tags: {
180
+ # "TagKey" => "TagValue",
181
+ # },
182
+ # },
183
+ # ],
184
+ # }
185
+ #
186
+ # @!attribute [rw] backup_plan_name
187
+ # The display name of a backup plan.
188
+ # @return [String]
189
+ #
190
+ # @!attribute [rw] rules
191
+ # An array of `BackupRule` objects, each of which specifies a
192
+ # scheduled task that is used to back up a selection of resources.
193
+ # @return [Array<Types::BackupRuleInput>]
194
+ #
195
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupPlanInput AWS API Documentation
196
+ #
197
+ class BackupPlanInput < Struct.new(
198
+ :backup_plan_name,
199
+ :rules)
200
+ include Aws::Structure
201
+ end
202
+
203
+ # An object specifying metadata associated with a backup plan template.
204
+ #
205
+ # @!attribute [rw] backup_plan_template_id
206
+ # Uniquely identifies a stored backup plan template.
207
+ # @return [String]
208
+ #
209
+ # @!attribute [rw] backup_plan_template_name
210
+ # The optional display name of a backup plan template.
211
+ # @return [String]
212
+ #
213
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupPlanTemplatesListMember AWS API Documentation
214
+ #
215
+ class BackupPlanTemplatesListMember < Struct.new(
216
+ :backup_plan_template_id,
217
+ :backup_plan_template_name)
218
+ include Aws::Structure
219
+ end
220
+
221
+ # Contains metadata about a backup plan.
222
+ #
223
+ # @!attribute [rw] backup_plan_arn
224
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
225
+ # plan; for example,
226
+ # `arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50`.
227
+ # @return [String]
228
+ #
229
+ # @!attribute [rw] backup_plan_id
230
+ # Uniquely identifies a backup plan.
231
+ # @return [String]
232
+ #
233
+ # @!attribute [rw] creation_date
234
+ # The date and time a resource backup plan is created, in Unix format
235
+ # and Coordinated Universal Time (UTC). The value of `CreationDate` is
236
+ # accurate to milliseconds. For example, the value 1516925490.087
237
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
238
+ # @return [Time]
239
+ #
240
+ # @!attribute [rw] deletion_date
241
+ # The date and time a backup plan is deleted, in Unix format and
242
+ # Coordinated Universal Time (UTC). The value of `DeletionDate` is
243
+ # accurate to milliseconds. For example, the value 1516925490.087
244
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
245
+ # @return [Time]
246
+ #
247
+ # @!attribute [rw] version_id
248
+ # Unique, randomly generated, Unicode, UTF-8 encoded strings that are
249
+ # at most 1,024 bytes long. Version IDs cannot be edited.
250
+ # @return [String]
251
+ #
252
+ # @!attribute [rw] backup_plan_name
253
+ # The display name of a saved backup plan.
254
+ # @return [String]
255
+ #
256
+ # @!attribute [rw] creator_request_id
257
+ # A unique string that identifies the request and allows failed
258
+ # requests to be retried without the risk of executing the operation
259
+ # twice.
260
+ # @return [String]
261
+ #
262
+ # @!attribute [rw] last_execution_date
263
+ # The last time a job to back up resources was executed with this
264
+ # rule. A date and time, in Unix format and Coordinated Universal Time
265
+ # (UTC). The value of `LastExecutionDate` is accurate to milliseconds.
266
+ # For example, the value 1516925490.087 represents Friday, January 26,
267
+ # 2018 12:11:30.087 AM.
268
+ # @return [Time]
269
+ #
270
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupPlansListMember AWS API Documentation
271
+ #
272
+ class BackupPlansListMember < Struct.new(
273
+ :backup_plan_arn,
274
+ :backup_plan_id,
275
+ :creation_date,
276
+ :deletion_date,
277
+ :version_id,
278
+ :backup_plan_name,
279
+ :creator_request_id,
280
+ :last_execution_date)
281
+ include Aws::Structure
282
+ end
283
+
284
+ # Specifies a scheduled task used to back up a selection of resources.
285
+ #
286
+ # @!attribute [rw] rule_name
287
+ # An optional display name for a backup rule.
288
+ # @return [String]
289
+ #
290
+ # @!attribute [rw] target_backup_vault_name
291
+ # The name of a logical container where backups are stored. Backup
292
+ # vaults are identified by names that are unique to the account used
293
+ # to create them and the AWS Region where they are created. They
294
+ # consist of lowercase letters, numbers, and hyphens.
295
+ # @return [String]
296
+ #
297
+ # @!attribute [rw] schedule_expression
298
+ # A CRON expression specifying when AWS Backup initiates a backup job.
299
+ # @return [String]
300
+ #
301
+ # @!attribute [rw] start_window_minutes
302
+ # An optional value that specifies a period of time in minutes after a
303
+ # backup is scheduled before a job is canceled if it doesn't start
304
+ # successfully.
305
+ # @return [Integer]
306
+ #
307
+ # @!attribute [rw] completion_window_minutes
308
+ # A value in minutes after a backup job is successfully started before
309
+ # it must be completed or it is canceled by AWS Backup. This value is
310
+ # optional.
311
+ # @return [Integer]
312
+ #
313
+ # @!attribute [rw] lifecycle
314
+ # The lifecycle defines when a protected resource is transitioned to
315
+ # cold storage and when it expires. AWS Backup transitions and expires
316
+ # backups automatically according to the lifecycle that you define.
317
+ #
318
+ # Backups transitioned to cold storage must be stored in cold storage
319
+ # for a minimum of 90 days. Therefore, the “expire after days” setting
320
+ # must be 90 days greater than the “transition to cold after days”
321
+ # setting. The “transition to cold after days” setting cannot be
322
+ # changed after a backup has been transitioned to cold.
323
+ # @return [Types::Lifecycle]
324
+ #
325
+ # @!attribute [rw] recovery_point_tags
326
+ # An array of key-value pair strings that are assigned to resources
327
+ # that are associated with this rule when restored from backup.
328
+ # @return [Hash<String,String>]
329
+ #
330
+ # @!attribute [rw] rule_id
331
+ # Uniquely identifies a rule that is used to schedule the backup of a
332
+ # selection of resources.
333
+ # @return [String]
334
+ #
335
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupRule AWS API Documentation
336
+ #
337
+ class BackupRule < Struct.new(
338
+ :rule_name,
339
+ :target_backup_vault_name,
340
+ :schedule_expression,
341
+ :start_window_minutes,
342
+ :completion_window_minutes,
343
+ :lifecycle,
344
+ :recovery_point_tags,
345
+ :rule_id)
346
+ include Aws::Structure
347
+ end
348
+
349
+ # Specifies a scheduled task used to back up a selection of resources.
350
+ #
351
+ # @note When making an API call, you may pass BackupRuleInput
352
+ # data as a hash:
353
+ #
354
+ # {
355
+ # rule_name: "BackupRuleName", # required
356
+ # target_backup_vault_name: "BackupVaultName", # required
357
+ # schedule_expression: "CronExpression",
358
+ # start_window_minutes: 1,
359
+ # completion_window_minutes: 1,
360
+ # lifecycle: {
361
+ # move_to_cold_storage_after_days: 1,
362
+ # delete_after_days: 1,
363
+ # },
364
+ # recovery_point_tags: {
365
+ # "TagKey" => "TagValue",
366
+ # },
367
+ # }
368
+ #
369
+ # @!attribute [rw] rule_name
370
+ # &gt;An optional display name for a backup rule.
371
+ # @return [String]
372
+ #
373
+ # @!attribute [rw] target_backup_vault_name
374
+ # The name of a logical container where backups are stored. Backup
375
+ # vaults are identified by names that are unique to the account used
376
+ # to create them and the AWS Region where they are created. They
377
+ # consist of lowercase letters, numbers, and hyphens.
378
+ # @return [String]
379
+ #
380
+ # @!attribute [rw] schedule_expression
381
+ # A CRON expression specifying when AWS Backup initiates a backup job.
382
+ # @return [String]
383
+ #
384
+ # @!attribute [rw] start_window_minutes
385
+ # The amount of time in minutes before beginning a backup.
386
+ # @return [Integer]
387
+ #
388
+ # @!attribute [rw] completion_window_minutes
389
+ # The amount of time AWS Backup attempts a backup before canceling the
390
+ # job and returning an error.
391
+ # @return [Integer]
392
+ #
393
+ # @!attribute [rw] lifecycle
394
+ # The lifecycle defines when a protected resource is transitioned to
395
+ # cold storage and when it expires. AWS Backup will transition and
396
+ # expire backups automatically according to the lifecycle that you
397
+ # define.
398
+ #
399
+ # Backups transitioned to cold storage must be stored in cold storage
400
+ # for a minimum of 90 days. Therefore, the “expire after days” setting
401
+ # must be 90 days greater than the “transition to cold after days”.
402
+ # The “transition to cold after days” setting cannot be changed after
403
+ # a backup has been transitioned to cold.
404
+ # @return [Types::Lifecycle]
405
+ #
406
+ # @!attribute [rw] recovery_point_tags
407
+ # To help organize your resources, you can assign your own metadata to
408
+ # the resources that you create. Each tag is a key-value pair.
409
+ # @return [Hash<String,String>]
410
+ #
411
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupRuleInput AWS API Documentation
412
+ #
413
+ class BackupRuleInput < Struct.new(
414
+ :rule_name,
415
+ :target_backup_vault_name,
416
+ :schedule_expression,
417
+ :start_window_minutes,
418
+ :completion_window_minutes,
419
+ :lifecycle,
420
+ :recovery_point_tags)
421
+ include Aws::Structure
422
+ end
423
+
424
+ # Used to specify a set of resources to a backup plan.
425
+ #
426
+ # @note When making an API call, you may pass BackupSelection
427
+ # data as a hash:
428
+ #
429
+ # {
430
+ # selection_name: "BackupSelectionName", # required
431
+ # iam_role_arn: "IAMRoleArn", # required
432
+ # resources: ["ARN"],
433
+ # list_of_tags: [
434
+ # {
435
+ # condition_type: "STRINGEQUALS", # required, accepts STRINGEQUALS
436
+ # condition_key: "ConditionKey", # required
437
+ # condition_value: "ConditionValue", # required
438
+ # },
439
+ # ],
440
+ # }
441
+ #
442
+ # @!attribute [rw] selection_name
443
+ # The display name of a resource selection document.
444
+ # @return [String]
445
+ #
446
+ # @!attribute [rw] iam_role_arn
447
+ # The ARN of the IAM role that AWS Backup uses to authenticate when
448
+ # restoring the target resource; for example,
449
+ # `arn:aws:iam::123456789012:role/S3Access`.
450
+ # @return [String]
451
+ #
452
+ # @!attribute [rw] resources
453
+ # An array of strings that either contain Amazon Resource Names (ARNs)
454
+ # or match patterns such as
455
+ # "`arn:aws:ec2:us-east-1:123456789012:volume/*`" of resources to
456
+ # assign to a backup plan.
457
+ # @return [Array<String>]
458
+ #
459
+ # @!attribute [rw] list_of_tags
460
+ # An array of conditions used to specify a set of resources to assign
461
+ # to a backup plan; for example, `"StringEquals":
462
+ # \{"ec2:ResourceTag/Department": "accounting"`.
463
+ # @return [Array<Types::Condition>]
464
+ #
465
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupSelection AWS API Documentation
466
+ #
467
+ class BackupSelection < Struct.new(
468
+ :selection_name,
469
+ :iam_role_arn,
470
+ :resources,
471
+ :list_of_tags)
472
+ include Aws::Structure
473
+ end
474
+
475
+ # Contains metadata about a `BackupSelection` object.
476
+ #
477
+ # @!attribute [rw] selection_id
478
+ # Uniquely identifies a request to assign a set of resources to a
479
+ # backup plan.
480
+ # @return [String]
481
+ #
482
+ # @!attribute [rw] selection_name
483
+ # The display name of a resource selection document.
484
+ # @return [String]
485
+ #
486
+ # @!attribute [rw] backup_plan_id
487
+ # Uniquely identifies a backup plan.
488
+ # @return [String]
489
+ #
490
+ # @!attribute [rw] creation_date
491
+ # The date and time a backup plan is created, in Unix format and
492
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
493
+ # accurate to milliseconds. For example, the value 1516925490.087
494
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
495
+ # @return [Time]
496
+ #
497
+ # @!attribute [rw] creator_request_id
498
+ # A unique string that identifies the request and allows failed
499
+ # requests to be retried without the risk of executing the operation
500
+ # twice.
501
+ # @return [String]
502
+ #
503
+ # @!attribute [rw] iam_role_arn
504
+ # Specifies the IAM role Amazon Resource Name (ARN) to create the
505
+ # target recovery point; for example,
506
+ # `arn:aws:iam::123456789012:role/S3Access`.
507
+ # @return [String]
508
+ #
509
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupSelectionsListMember AWS API Documentation
510
+ #
511
+ class BackupSelectionsListMember < Struct.new(
512
+ :selection_id,
513
+ :selection_name,
514
+ :backup_plan_id,
515
+ :creation_date,
516
+ :creator_request_id,
517
+ :iam_role_arn)
518
+ include Aws::Structure
519
+ end
520
+
521
+ # Contains metadata about a backup vault.
522
+ #
523
+ # @!attribute [rw] backup_vault_name
524
+ # The name of a logical container where backups are stored. Backup
525
+ # vaults are identified by names that are unique to the account used
526
+ # to create them and the AWS Region where they are created. They
527
+ # consist of lowercase letters, numbers, and hyphens.
528
+ # @return [String]
529
+ #
530
+ # @!attribute [rw] backup_vault_arn
531
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
532
+ # vault; for example,
533
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
534
+ # @return [String]
535
+ #
536
+ # @!attribute [rw] creation_date
537
+ # The date and time a resource backup is created, in Unix format and
538
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
539
+ # accurate to milliseconds. For example, the value 1516925490.087
540
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
541
+ # @return [Time]
542
+ #
543
+ # @!attribute [rw] encryption_key_arn
544
+ # The server-side encryption key that is used to protect your backups;
545
+ # for example,
546
+ # `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`.
547
+ # @return [String]
548
+ #
549
+ # @!attribute [rw] creator_request_id
550
+ # A unique string that identifies the request and allows failed
551
+ # requests to be retried without the risk of executing the operation
552
+ # twice.
553
+ # @return [String]
554
+ #
555
+ # @!attribute [rw] number_of_recovery_points
556
+ # The number of recovery points that are stored in a backup vault.
557
+ # @return [Integer]
558
+ #
559
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupVaultListMember AWS API Documentation
560
+ #
561
+ class BackupVaultListMember < Struct.new(
562
+ :backup_vault_name,
563
+ :backup_vault_arn,
564
+ :creation_date,
565
+ :encryption_key_arn,
566
+ :creator_request_id,
567
+ :number_of_recovery_points)
568
+ include Aws::Structure
569
+ end
570
+
571
+ # Contains `DeleteAt` and `MoveToColdStorageAt` timestamps, which are
572
+ # used to specify a lifecycle for a recovery point.
573
+ #
574
+ # The lifecycle defines when a protected resource is transitioned to
575
+ # cold storage and when it expires. AWS Backup transitions and expires
576
+ # backups automatically according to the lifecycle that you define.
577
+ #
578
+ # Backups transitioned to cold storage must be stored in cold storage
579
+ # for a minimum of 90 days. Therefore, the “expire after days” setting
580
+ # must be 90 days greater than the “transition to cold after days”
581
+ # setting. The “transition to cold after days” setting cannot be changed
582
+ # after a backup has been transitioned to cold.
583
+ #
584
+ # @!attribute [rw] move_to_cold_storage_at
585
+ # A timestamp that specifies when to transition a recovery point to
586
+ # cold storage.
587
+ # @return [Time]
588
+ #
589
+ # @!attribute [rw] delete_at
590
+ # A timestamp that specifies when to delete a recovery point.
591
+ # @return [Time]
592
+ #
593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CalculatedLifecycle AWS API Documentation
594
+ #
595
+ class CalculatedLifecycle < Struct.new(
596
+ :move_to_cold_storage_at,
597
+ :delete_at)
598
+ include Aws::Structure
599
+ end
600
+
601
+ # Contains an array of triplets made up of a condition type (such as
602
+ # `StringEquals`), a key, and a value. Conditions are used to filter
603
+ # resources in a selection that is assigned to a backup plan.
604
+ #
605
+ # @note When making an API call, you may pass Condition
606
+ # data as a hash:
607
+ #
608
+ # {
609
+ # condition_type: "STRINGEQUALS", # required, accepts STRINGEQUALS
610
+ # condition_key: "ConditionKey", # required
611
+ # condition_value: "ConditionValue", # required
612
+ # }
613
+ #
614
+ # @!attribute [rw] condition_type
615
+ # An operation, such as `StringEquals`, that is applied to a key-value
616
+ # pair used to filter resources in a selection.
617
+ # @return [String]
618
+ #
619
+ # @!attribute [rw] condition_key
620
+ # The key in a key-value pair. For example, in
621
+ # `"ec2:ResourceTag/Department": "accounting"`,
622
+ # `"ec2:ResourceTag/Department"` is the key.
623
+ # @return [String]
624
+ #
625
+ # @!attribute [rw] condition_value
626
+ # The value in a key-value pair. For example, in
627
+ # `"ec2:ResourceTag/Department": "accounting"`, `"accounting"` is the
628
+ # value.
629
+ # @return [String]
630
+ #
631
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/Condition AWS API Documentation
632
+ #
633
+ class Condition < Struct.new(
634
+ :condition_type,
635
+ :condition_key,
636
+ :condition_value)
637
+ include Aws::Structure
638
+ end
639
+
640
+ # @note When making an API call, you may pass CreateBackupPlanInput
641
+ # data as a hash:
642
+ #
643
+ # {
644
+ # backup_plan: { # required
645
+ # backup_plan_name: "BackupPlanName", # required
646
+ # rules: [ # required
647
+ # {
648
+ # rule_name: "BackupRuleName", # required
649
+ # target_backup_vault_name: "BackupVaultName", # required
650
+ # schedule_expression: "CronExpression",
651
+ # start_window_minutes: 1,
652
+ # completion_window_minutes: 1,
653
+ # lifecycle: {
654
+ # move_to_cold_storage_after_days: 1,
655
+ # delete_after_days: 1,
656
+ # },
657
+ # recovery_point_tags: {
658
+ # "TagKey" => "TagValue",
659
+ # },
660
+ # },
661
+ # ],
662
+ # },
663
+ # backup_plan_tags: {
664
+ # "TagKey" => "TagValue",
665
+ # },
666
+ # creator_request_id: "string",
667
+ # }
668
+ #
669
+ # @!attribute [rw] backup_plan
670
+ # Specifies the body of a backup plan. Includes a `BackupPlanName` and
671
+ # one or more sets of `Rules`.
672
+ # @return [Types::BackupPlanInput]
673
+ #
674
+ # @!attribute [rw] backup_plan_tags
675
+ # To help organize your resources, you can assign your own metadata to
676
+ # the resources that you create. Each tag is a key-value pair. The
677
+ # specified tags are assigned to all backups created with this plan.
678
+ # @return [Hash<String,String>]
679
+ #
680
+ # @!attribute [rw] creator_request_id
681
+ # Identifies the request and allows failed requests to be retried
682
+ # without the risk of executing the operation twice. If the request
683
+ # includes a `CreatorRequestId` that matches an existing backup plan,
684
+ # that plan is returned. This parameter is optional.
685
+ # @return [String]
686
+ #
687
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupPlanInput AWS API Documentation
688
+ #
689
+ class CreateBackupPlanInput < Struct.new(
690
+ :backup_plan,
691
+ :backup_plan_tags,
692
+ :creator_request_id)
693
+ include Aws::Structure
694
+ end
695
+
696
+ # @!attribute [rw] backup_plan_id
697
+ # Uniquely identifies a backup plan.
698
+ # @return [String]
699
+ #
700
+ # @!attribute [rw] backup_plan_arn
701
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
702
+ # plan; for example,
703
+ # `arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50`.
704
+ # @return [String]
705
+ #
706
+ # @!attribute [rw] creation_date
707
+ # The date and time that a backup plan is created, in Unix format and
708
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
709
+ # accurate to milliseconds. For example, the value 1516925490.087
710
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
711
+ # @return [Time]
712
+ #
713
+ # @!attribute [rw] version_id
714
+ # Unique, randomly generated, Unicode, UTF-8 encoded strings that are
715
+ # at most 1024 bytes long. They cannot be edited.
716
+ # @return [String]
717
+ #
718
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupPlanOutput AWS API Documentation
719
+ #
720
+ class CreateBackupPlanOutput < Struct.new(
721
+ :backup_plan_id,
722
+ :backup_plan_arn,
723
+ :creation_date,
724
+ :version_id)
725
+ include Aws::Structure
726
+ end
727
+
728
+ # @note When making an API call, you may pass CreateBackupSelectionInput
729
+ # data as a hash:
730
+ #
731
+ # {
732
+ # backup_plan_id: "string", # required
733
+ # backup_selection: { # required
734
+ # selection_name: "BackupSelectionName", # required
735
+ # iam_role_arn: "IAMRoleArn", # required
736
+ # resources: ["ARN"],
737
+ # list_of_tags: [
738
+ # {
739
+ # condition_type: "STRINGEQUALS", # required, accepts STRINGEQUALS
740
+ # condition_key: "ConditionKey", # required
741
+ # condition_value: "ConditionValue", # required
742
+ # },
743
+ # ],
744
+ # },
745
+ # creator_request_id: "string",
746
+ # }
747
+ #
748
+ # @!attribute [rw] backup_plan_id
749
+ # Uniquely identifies the backup plan to be associated with the
750
+ # selection of resources.
751
+ # @return [String]
752
+ #
753
+ # @!attribute [rw] backup_selection
754
+ # Specifies the body of a request to assign a set of resources to a
755
+ # backup plan.
756
+ #
757
+ # It includes an array of resources, an optional array of patterns to
758
+ # exclude resources, an optional role to provide access to the AWS
759
+ # service the resource belongs to, and an optional array of tags used
760
+ # to identify a set of resources.
761
+ # @return [Types::BackupSelection]
762
+ #
763
+ # @!attribute [rw] creator_request_id
764
+ # A unique string that identifies the request and allows failed
765
+ # requests to be retried without the risk of executing the operation
766
+ # twice.
767
+ # @return [String]
768
+ #
769
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupSelectionInput AWS API Documentation
770
+ #
771
+ class CreateBackupSelectionInput < Struct.new(
772
+ :backup_plan_id,
773
+ :backup_selection,
774
+ :creator_request_id)
775
+ include Aws::Structure
776
+ end
777
+
778
+ # @!attribute [rw] selection_id
779
+ # Uniquely identifies the body of a request to assign a set of
780
+ # resources to a backup plan.
781
+ # @return [String]
782
+ #
783
+ # @!attribute [rw] backup_plan_id
784
+ # Uniquely identifies a backup plan.
785
+ # @return [String]
786
+ #
787
+ # @!attribute [rw] creation_date
788
+ # The date and time a backup selection is created, in Unix format and
789
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
790
+ # accurate to milliseconds. For example, the value 1516925490.087
791
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
792
+ # @return [Time]
793
+ #
794
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupSelectionOutput AWS API Documentation
795
+ #
796
+ class CreateBackupSelectionOutput < Struct.new(
797
+ :selection_id,
798
+ :backup_plan_id,
799
+ :creation_date)
800
+ include Aws::Structure
801
+ end
802
+
803
+ # @note When making an API call, you may pass CreateBackupVaultInput
804
+ # data as a hash:
805
+ #
806
+ # {
807
+ # backup_vault_name: "BackupVaultName", # required
808
+ # backup_vault_tags: {
809
+ # "TagKey" => "TagValue",
810
+ # },
811
+ # encryption_key_arn: "ARN",
812
+ # creator_request_id: "string",
813
+ # }
814
+ #
815
+ # @!attribute [rw] backup_vault_name
816
+ # The name of a logical container where backups are stored. Backup
817
+ # vaults are identified by names that are unique to the account used
818
+ # to create them and the AWS Region where they are created. They
819
+ # consist of lowercase letters, numbers, and hyphens.
820
+ # @return [String]
821
+ #
822
+ # @!attribute [rw] backup_vault_tags
823
+ # Metadata that you can assign to help organize the resources that you
824
+ # create. Each tag is a key-value pair.
825
+ # @return [Hash<String,String>]
826
+ #
827
+ # @!attribute [rw] encryption_key_arn
828
+ # The server-side encryption key that is used to protect your backups;
829
+ # for example,
830
+ # `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`.
831
+ # @return [String]
832
+ #
833
+ # @!attribute [rw] creator_request_id
834
+ # A unique string that identifies the request and allows failed
835
+ # requests to be retried without the risk of executing the operation
836
+ # twice.
837
+ # @return [String]
838
+ #
839
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupVaultInput AWS API Documentation
840
+ #
841
+ class CreateBackupVaultInput < Struct.new(
842
+ :backup_vault_name,
843
+ :backup_vault_tags,
844
+ :encryption_key_arn,
845
+ :creator_request_id)
846
+ include Aws::Structure
847
+ end
848
+
849
+ # @!attribute [rw] backup_vault_name
850
+ # The name of a logical container where backups are stored. Backup
851
+ # vaults are identified by names that are unique to the account used
852
+ # to create them and the Region where they are created. They consist
853
+ # of lowercase letters, numbers, and hyphens.
854
+ # @return [String]
855
+ #
856
+ # @!attribute [rw] backup_vault_arn
857
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
858
+ # vault; for example,
859
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
860
+ # @return [String]
861
+ #
862
+ # @!attribute [rw] creation_date
863
+ # The date and time a backup vault is created, in Unix format and
864
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
865
+ # accurate to milliseconds. For example, the value 1516925490.087
866
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
867
+ # @return [Time]
868
+ #
869
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupVaultOutput AWS API Documentation
870
+ #
871
+ class CreateBackupVaultOutput < Struct.new(
872
+ :backup_vault_name,
873
+ :backup_vault_arn,
874
+ :creation_date)
875
+ include Aws::Structure
876
+ end
877
+
878
+ # @note When making an API call, you may pass DeleteBackupPlanInput
879
+ # data as a hash:
880
+ #
881
+ # {
882
+ # backup_plan_id: "string", # required
883
+ # }
884
+ #
885
+ # @!attribute [rw] backup_plan_id
886
+ # Uniquely identifies a backup plan.
887
+ # @return [String]
888
+ #
889
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupPlanInput AWS API Documentation
890
+ #
891
+ class DeleteBackupPlanInput < Struct.new(
892
+ :backup_plan_id)
893
+ include Aws::Structure
894
+ end
895
+
896
+ # @!attribute [rw] backup_plan_id
897
+ # Uniquely identifies a backup plan.
898
+ # @return [String]
899
+ #
900
+ # @!attribute [rw] backup_plan_arn
901
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
902
+ # plan; for example,
903
+ # `arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50`.
904
+ # @return [String]
905
+ #
906
+ # @!attribute [rw] deletion_date
907
+ # The date and time a backup plan is deleted, in Unix format and
908
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
909
+ # accurate to milliseconds. For example, the value 1516925490.087
910
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
911
+ # @return [Time]
912
+ #
913
+ # @!attribute [rw] version_id
914
+ # Unique, randomly generated, Unicode, UTF-8 encoded strings that are
915
+ # at most 1,024 bytes long. Version Ids cannot be edited.
916
+ # @return [String]
917
+ #
918
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupPlanOutput AWS API Documentation
919
+ #
920
+ class DeleteBackupPlanOutput < Struct.new(
921
+ :backup_plan_id,
922
+ :backup_plan_arn,
923
+ :deletion_date,
924
+ :version_id)
925
+ include Aws::Structure
926
+ end
927
+
928
+ # @note When making an API call, you may pass DeleteBackupSelectionInput
929
+ # data as a hash:
930
+ #
931
+ # {
932
+ # backup_plan_id: "string", # required
933
+ # selection_id: "string", # required
934
+ # }
935
+ #
936
+ # @!attribute [rw] backup_plan_id
937
+ # Uniquely identifies a backup plan.
938
+ # @return [String]
939
+ #
940
+ # @!attribute [rw] selection_id
941
+ # Uniquely identifies the body of a request to assign a set of
942
+ # resources to a backup plan.
943
+ # @return [String]
944
+ #
945
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupSelectionInput AWS API Documentation
946
+ #
947
+ class DeleteBackupSelectionInput < Struct.new(
948
+ :backup_plan_id,
949
+ :selection_id)
950
+ include Aws::Structure
951
+ end
952
+
953
+ # @note When making an API call, you may pass DeleteBackupVaultAccessPolicyInput
954
+ # data as a hash:
955
+ #
956
+ # {
957
+ # backup_vault_name: "BackupVaultName", # required
958
+ # }
959
+ #
960
+ # @!attribute [rw] backup_vault_name
961
+ # The name of a logical container where backups are stored. Backup
962
+ # vaults are identified by names that are unique to the account used
963
+ # to create them and the AWS Region where they are created. They
964
+ # consist of lowercase letters, numbers, and hyphens.
965
+ # @return [String]
966
+ #
967
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupVaultAccessPolicyInput AWS API Documentation
968
+ #
969
+ class DeleteBackupVaultAccessPolicyInput < Struct.new(
970
+ :backup_vault_name)
971
+ include Aws::Structure
972
+ end
973
+
974
+ # @note When making an API call, you may pass DeleteBackupVaultInput
975
+ # data as a hash:
976
+ #
977
+ # {
978
+ # backup_vault_name: "string", # required
979
+ # }
980
+ #
981
+ # @!attribute [rw] backup_vault_name
982
+ # The name of a logical container where backups are stored. Backup
983
+ # vaults are identified by names that are unique to the account used
984
+ # to create them and theAWS Region where they are created. They
985
+ # consist of lowercase letters, numbers, and hyphens.
986
+ # @return [String]
987
+ #
988
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupVaultInput AWS API Documentation
989
+ #
990
+ class DeleteBackupVaultInput < Struct.new(
991
+ :backup_vault_name)
992
+ include Aws::Structure
993
+ end
994
+
995
+ # @note When making an API call, you may pass DeleteBackupVaultNotificationsInput
996
+ # data as a hash:
997
+ #
998
+ # {
999
+ # backup_vault_name: "BackupVaultName", # required
1000
+ # }
1001
+ #
1002
+ # @!attribute [rw] backup_vault_name
1003
+ # The name of a logical container where backups are stored. Backup
1004
+ # vaults are identified by names that are unique to the account used
1005
+ # to create them and the Region where they are created. They consist
1006
+ # of lowercase letters, numbers, and hyphens.
1007
+ # @return [String]
1008
+ #
1009
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupVaultNotificationsInput AWS API Documentation
1010
+ #
1011
+ class DeleteBackupVaultNotificationsInput < Struct.new(
1012
+ :backup_vault_name)
1013
+ include Aws::Structure
1014
+ end
1015
+
1016
+ # @note When making an API call, you may pass DeleteRecoveryPointInput
1017
+ # data as a hash:
1018
+ #
1019
+ # {
1020
+ # backup_vault_name: "BackupVaultName", # required
1021
+ # recovery_point_arn: "ARN", # required
1022
+ # }
1023
+ #
1024
+ # @!attribute [rw] backup_vault_name
1025
+ # The name of a logical container where backups are stored. Backup
1026
+ # vaults are identified by names that are unique to the account used
1027
+ # to create them and the AWS Region where they are created. They
1028
+ # consist of lowercase letters, numbers, and hyphens.
1029
+ # @return [String]
1030
+ #
1031
+ # @!attribute [rw] recovery_point_arn
1032
+ # An Amazon Resource Name (ARN) that uniquely identifies a recovery
1033
+ # point; for example,
1034
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
1035
+ # @return [String]
1036
+ #
1037
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRecoveryPointInput AWS API Documentation
1038
+ #
1039
+ class DeleteRecoveryPointInput < Struct.new(
1040
+ :backup_vault_name,
1041
+ :recovery_point_arn)
1042
+ include Aws::Structure
1043
+ end
1044
+
1045
+ # @note When making an API call, you may pass DescribeBackupJobInput
1046
+ # data as a hash:
1047
+ #
1048
+ # {
1049
+ # backup_job_id: "string", # required
1050
+ # }
1051
+ #
1052
+ # @!attribute [rw] backup_job_id
1053
+ # Uniquely identifies a request to AWS Backup to back up a resource.
1054
+ # @return [String]
1055
+ #
1056
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJobInput AWS API Documentation
1057
+ #
1058
+ class DescribeBackupJobInput < Struct.new(
1059
+ :backup_job_id)
1060
+ include Aws::Structure
1061
+ end
1062
+
1063
+ # @!attribute [rw] backup_job_id
1064
+ # Uniquely identifies a request to AWS Backup to back up a resource.
1065
+ # @return [String]
1066
+ #
1067
+ # @!attribute [rw] backup_vault_name
1068
+ # The name of a logical container where backups are stored. Backup
1069
+ # vaults are identified by names that are unique to the account used
1070
+ # to create them and the AWS Region where they are created. They
1071
+ # consist of lowercase letters, numbers, and hyphens.
1072
+ # @return [String]
1073
+ #
1074
+ # @!attribute [rw] backup_vault_arn
1075
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
1076
+ # vault; for example,
1077
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
1078
+ # @return [String]
1079
+ #
1080
+ # @!attribute [rw] recovery_point_arn
1081
+ # An ARN that uniquely identifies a recovery point; for example,
1082
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
1083
+ # @return [String]
1084
+ #
1085
+ # @!attribute [rw] resource_arn
1086
+ # An ARN that uniquely identifies a saved resource. The format of the
1087
+ # ARN depends on the resource type.
1088
+ # @return [String]
1089
+ #
1090
+ # @!attribute [rw] creation_date
1091
+ # The date and time that a backup job is created, in Unix format and
1092
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
1093
+ # accurate to milliseconds. For example, the value 1516925490.087
1094
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
1095
+ # @return [Time]
1096
+ #
1097
+ # @!attribute [rw] completion_date
1098
+ # The date and time that a job to create a backup job is completed, in
1099
+ # Unix format and Coordinated Universal Time (UTC). The value of
1100
+ # `CreationDate` is accurate to milliseconds. For example, the value
1101
+ # 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
1102
+ # @return [Time]
1103
+ #
1104
+ # @!attribute [rw] state
1105
+ # The current state of a resource recovery point.
1106
+ # @return [String]
1107
+ #
1108
+ # @!attribute [rw] status_message
1109
+ # A detailed message explaining the status of the job to back up a
1110
+ # resource.
1111
+ # @return [String]
1112
+ #
1113
+ # @!attribute [rw] percent_done
1114
+ # Contains an estimated percentage that is complete of a job at the
1115
+ # time the job status was queried.
1116
+ # @return [String]
1117
+ #
1118
+ # @!attribute [rw] backup_size_in_bytes
1119
+ # The size, in bytes, of a backup.
1120
+ # @return [Integer]
1121
+ #
1122
+ # @!attribute [rw] iam_role_arn
1123
+ # Specifies the IAM role ARN used to create the target recovery point;
1124
+ # for example, `arn:aws:iam::123456789012:role/S3Access`.
1125
+ # @return [String]
1126
+ #
1127
+ # @!attribute [rw] created_by
1128
+ # Contains identifying information about the creation of a backup job,
1129
+ # including the `BackupPlanArn`, `BackupPlanId`, `BackupPlanVersion`,
1130
+ # and `BackupRuleId` of the backup plan that is used to create it.
1131
+ # @return [Types::RecoveryPointCreator]
1132
+ #
1133
+ # @!attribute [rw] resource_type
1134
+ # The type of AWS resource to be backed-up; for example, an Amazon
1135
+ # Elastic Block Store (Amazon EBS) volume or an Amazon Relational
1136
+ # Database Service (Amazon RDS) database.
1137
+ # @return [String]
1138
+ #
1139
+ # @!attribute [rw] bytes_transferred
1140
+ # The size in bytes transferred to a backup vault at the time that the
1141
+ # job status was queried.
1142
+ # @return [Integer]
1143
+ #
1144
+ # @!attribute [rw] expected_completion_date
1145
+ # The date and time that a job to back up resources is expected to be
1146
+ # completed, in Unix format and Coordinated Universal Time (UTC). The
1147
+ # value of `ExpectedCompletionDate` is accurate to milliseconds. For
1148
+ # example, the value 1516925490.087 represents Friday, January 26,
1149
+ # 2018 12:11:30.087 AM.
1150
+ # @return [Time]
1151
+ #
1152
+ # @!attribute [rw] start_by
1153
+ # Specifies the time in Unix format and Coordinated Universal Time
1154
+ # (UTC) when a backup job must be started before it is canceled. The
1155
+ # value is calculated by adding the start window to the scheduled
1156
+ # time. So if the scheduled time were 6:00 PM and the start window is
1157
+ # 2 hours, the `StartBy` time would be 8:00 PM on the date specified.
1158
+ # The value of `StartBy` is accurate to milliseconds. For example, the
1159
+ # value 1516925490.087 represents Friday, January 26, 2018
1160
+ # 12:11:30.087 AM.
1161
+ # @return [Time]
1162
+ #
1163
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJobOutput AWS API Documentation
1164
+ #
1165
+ class DescribeBackupJobOutput < Struct.new(
1166
+ :backup_job_id,
1167
+ :backup_vault_name,
1168
+ :backup_vault_arn,
1169
+ :recovery_point_arn,
1170
+ :resource_arn,
1171
+ :creation_date,
1172
+ :completion_date,
1173
+ :state,
1174
+ :status_message,
1175
+ :percent_done,
1176
+ :backup_size_in_bytes,
1177
+ :iam_role_arn,
1178
+ :created_by,
1179
+ :resource_type,
1180
+ :bytes_transferred,
1181
+ :expected_completion_date,
1182
+ :start_by)
1183
+ include Aws::Structure
1184
+ end
1185
+
1186
+ # @note When making an API call, you may pass DescribeBackupVaultInput
1187
+ # data as a hash:
1188
+ #
1189
+ # {
1190
+ # backup_vault_name: "string", # required
1191
+ # }
1192
+ #
1193
+ # @!attribute [rw] backup_vault_name
1194
+ # The name of a logical container where backups are stored. Backup
1195
+ # vaults are identified by names that are unique to the account used
1196
+ # to create them and the AWS Region where they are created. They
1197
+ # consist of lowercase letters, numbers, and hyphens.
1198
+ # @return [String]
1199
+ #
1200
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVaultInput AWS API Documentation
1201
+ #
1202
+ class DescribeBackupVaultInput < Struct.new(
1203
+ :backup_vault_name)
1204
+ include Aws::Structure
1205
+ end
1206
+
1207
+ # @!attribute [rw] backup_vault_name
1208
+ # The name of a logical container where backups are stored. Backup
1209
+ # vaults are identified by names that are unique to the account used
1210
+ # to create them and the Region where they are created. They consist
1211
+ # of lowercase letters, numbers, and hyphens.
1212
+ # @return [String]
1213
+ #
1214
+ # @!attribute [rw] backup_vault_arn
1215
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
1216
+ # vault; for example,
1217
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
1218
+ # @return [String]
1219
+ #
1220
+ # @!attribute [rw] encryption_key_arn
1221
+ # The server-side encryption key that is used to protect your backups;
1222
+ # for example,
1223
+ # `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`.
1224
+ # @return [String]
1225
+ #
1226
+ # @!attribute [rw] creation_date
1227
+ # The date and time that a backup vault is created, in Unix format and
1228
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
1229
+ # accurate to milliseconds. For example, the value 1516925490.087
1230
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
1231
+ # @return [Time]
1232
+ #
1233
+ # @!attribute [rw] creator_request_id
1234
+ # A unique string that identifies the request and allows failed
1235
+ # requests to be retried without the risk of executing the operation
1236
+ # twice.
1237
+ # @return [String]
1238
+ #
1239
+ # @!attribute [rw] number_of_recovery_points
1240
+ # The number of recovery points that are stored in a backup vault.
1241
+ # @return [Integer]
1242
+ #
1243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVaultOutput AWS API Documentation
1244
+ #
1245
+ class DescribeBackupVaultOutput < Struct.new(
1246
+ :backup_vault_name,
1247
+ :backup_vault_arn,
1248
+ :encryption_key_arn,
1249
+ :creation_date,
1250
+ :creator_request_id,
1251
+ :number_of_recovery_points)
1252
+ include Aws::Structure
1253
+ end
1254
+
1255
+ # @note When making an API call, you may pass DescribeProtectedResourceInput
1256
+ # data as a hash:
1257
+ #
1258
+ # {
1259
+ # resource_arn: "ARN", # required
1260
+ # }
1261
+ #
1262
+ # @!attribute [rw] resource_arn
1263
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
1264
+ # The format of the ARN depends on the resource type.
1265
+ # @return [String]
1266
+ #
1267
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeProtectedResourceInput AWS API Documentation
1268
+ #
1269
+ class DescribeProtectedResourceInput < Struct.new(
1270
+ :resource_arn)
1271
+ include Aws::Structure
1272
+ end
1273
+
1274
+ # @!attribute [rw] resource_arn
1275
+ # An ARN that uniquely identifies a resource. The format of the ARN
1276
+ # depends on the resource type.
1277
+ # @return [String]
1278
+ #
1279
+ # @!attribute [rw] resource_type
1280
+ # The type of AWS resource saved as a recovery point; for example, an
1281
+ # EBS volume or an Amazon RDS database.
1282
+ # @return [String]
1283
+ #
1284
+ # @!attribute [rw] last_backup_time
1285
+ # The date and time that a resource was last backed up, in Unix format
1286
+ # and Coordinated Universal Time (UTC). The value of `LastBackupTime`
1287
+ # is accurate to milliseconds. For example, the value 1516925490.087
1288
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
1289
+ # @return [Time]
1290
+ #
1291
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeProtectedResourceOutput AWS API Documentation
1292
+ #
1293
+ class DescribeProtectedResourceOutput < Struct.new(
1294
+ :resource_arn,
1295
+ :resource_type,
1296
+ :last_backup_time)
1297
+ include Aws::Structure
1298
+ end
1299
+
1300
+ # @note When making an API call, you may pass DescribeRecoveryPointInput
1301
+ # data as a hash:
1302
+ #
1303
+ # {
1304
+ # backup_vault_name: "BackupVaultName", # required
1305
+ # recovery_point_arn: "ARN", # required
1306
+ # }
1307
+ #
1308
+ # @!attribute [rw] backup_vault_name
1309
+ # The name of a logical container where backups are stored. Backup
1310
+ # vaults are identified by names that are unique to the account used
1311
+ # to create them and the AWS Region where they are created. They
1312
+ # consist of lowercase letters, numbers, and hyphens.
1313
+ # @return [String]
1314
+ #
1315
+ # @!attribute [rw] recovery_point_arn
1316
+ # An Amazon Resource Name (ARN) that uniquely identifies a recovery
1317
+ # point; for example,
1318
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
1319
+ # @return [String]
1320
+ #
1321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRecoveryPointInput AWS API Documentation
1322
+ #
1323
+ class DescribeRecoveryPointInput < Struct.new(
1324
+ :backup_vault_name,
1325
+ :recovery_point_arn)
1326
+ include Aws::Structure
1327
+ end
1328
+
1329
+ # @!attribute [rw] recovery_point_arn
1330
+ # An ARN that uniquely identifies a recovery point; for example,
1331
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
1332
+ # @return [String]
1333
+ #
1334
+ # @!attribute [rw] backup_vault_name
1335
+ # The name of a logical container where backups are stored. Backup
1336
+ # vaults are identified by names that are unique to the account used
1337
+ # to create them and the Region where they are created. They consist
1338
+ # of lowercase letters, numbers, and hyphens.
1339
+ # @return [String]
1340
+ #
1341
+ # @!attribute [rw] backup_vault_arn
1342
+ # An ARN that uniquely identifies a backup vault; for example,
1343
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
1344
+ # @return [String]
1345
+ #
1346
+ # @!attribute [rw] resource_arn
1347
+ # An ARN that uniquely identifies a saved resource. The format of the
1348
+ # ARN depends on the resource type.
1349
+ # @return [String]
1350
+ #
1351
+ # @!attribute [rw] resource_type
1352
+ # The type of AWS resource to save as a recovery point; for example,
1353
+ # an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon
1354
+ # Relational Database Service (Amazon RDS) database.
1355
+ # @return [String]
1356
+ #
1357
+ # @!attribute [rw] created_by
1358
+ # Contains identifying information about the creation of a recovery
1359
+ # point, including the `BackupPlanArn`, `BackupPlanId`,
1360
+ # `BackupPlanVersion`, and `BackupRuleId` of the backup plan used to
1361
+ # create it.
1362
+ # @return [Types::RecoveryPointCreator]
1363
+ #
1364
+ # @!attribute [rw] iam_role_arn
1365
+ # Specifies the IAM role ARN used to create the target recovery point;
1366
+ # for example, `arn:aws:iam::123456789012:role/S3Access`.
1367
+ # @return [String]
1368
+ #
1369
+ # @!attribute [rw] status
1370
+ # A status code specifying the state of the recovery point.
1371
+ #
1372
+ # <note markdown="1"> A partial status indicates that the recovery point was not
1373
+ # successfully re-created and must be retried.
1374
+ #
1375
+ # </note>
1376
+ # @return [String]
1377
+ #
1378
+ # @!attribute [rw] creation_date
1379
+ # The date and time that a recovery point is created, in Unix format
1380
+ # and Coordinated Universal Time (UTC). The value of `CreationDate` is
1381
+ # accurate to milliseconds. For example, the value 1516925490.087
1382
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
1383
+ # @return [Time]
1384
+ #
1385
+ # @!attribute [rw] completion_date
1386
+ # The date and time that a job to create a recovery point is
1387
+ # completed, in Unix format and Coordinated Universal Time (UTC). The
1388
+ # value of `CompletionDate` is accurate to milliseconds. For example,
1389
+ # the value 1516925490.087 represents Friday, January 26, 2018
1390
+ # 12:11:30.087 AM.
1391
+ # @return [Time]
1392
+ #
1393
+ # @!attribute [rw] backup_size_in_bytes
1394
+ # The size, in bytes, of a backup.
1395
+ # @return [Integer]
1396
+ #
1397
+ # @!attribute [rw] calculated_lifecycle
1398
+ # A `CalculatedLifecycle` object containing `DeleteAt` and
1399
+ # `MoveToColdStorageAt` timestamps.
1400
+ # @return [Types::CalculatedLifecycle]
1401
+ #
1402
+ # @!attribute [rw] lifecycle
1403
+ # The lifecycle defines when a protected resource is transitioned to
1404
+ # cold storage and when it expires. AWS Backup transitions and expires
1405
+ # backups automatically according to the lifecycle that you define.
1406
+ #
1407
+ # Backups that are transitioned to cold storage must be stored in cold
1408
+ # storage for a minimum of 90 days. Therefore, the “expire after days”
1409
+ # setting must be 90 days greater than the “transition to cold after
1410
+ # days” setting. The “transition to cold after days” setting cannot be
1411
+ # changed after a backup has been transitioned to cold.
1412
+ # @return [Types::Lifecycle]
1413
+ #
1414
+ # @!attribute [rw] encryption_key_arn
1415
+ # The server-side encryption key used to protect your backups; for
1416
+ # example,
1417
+ # `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`.
1418
+ # @return [String]
1419
+ #
1420
+ # @!attribute [rw] is_encrypted
1421
+ # A Boolean value that is returned as `TRUE` if the specified recovery
1422
+ # point is encrypted, or `FALSE` if the recovery point is not
1423
+ # encrypted.
1424
+ # @return [Boolean]
1425
+ #
1426
+ # @!attribute [rw] storage_class
1427
+ # Specifies the storage class of the recovery point. Valid values are
1428
+ # `WARM` or `COLD`.
1429
+ # @return [String]
1430
+ #
1431
+ # @!attribute [rw] last_restore_time
1432
+ # The date and time that a recovery point was last restored, in Unix
1433
+ # format and Coordinated Universal Time (UTC). The value of
1434
+ # `LastRestoreTime` is accurate to milliseconds. For example, the
1435
+ # value 1516925490.087 represents Friday, January 26, 2018
1436
+ # 12:11:30.087 AM.
1437
+ # @return [Time]
1438
+ #
1439
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRecoveryPointOutput AWS API Documentation
1440
+ #
1441
+ class DescribeRecoveryPointOutput < Struct.new(
1442
+ :recovery_point_arn,
1443
+ :backup_vault_name,
1444
+ :backup_vault_arn,
1445
+ :resource_arn,
1446
+ :resource_type,
1447
+ :created_by,
1448
+ :iam_role_arn,
1449
+ :status,
1450
+ :creation_date,
1451
+ :completion_date,
1452
+ :backup_size_in_bytes,
1453
+ :calculated_lifecycle,
1454
+ :lifecycle,
1455
+ :encryption_key_arn,
1456
+ :is_encrypted,
1457
+ :storage_class,
1458
+ :last_restore_time)
1459
+ include Aws::Structure
1460
+ end
1461
+
1462
+ # @note When making an API call, you may pass DescribeRestoreJobInput
1463
+ # data as a hash:
1464
+ #
1465
+ # {
1466
+ # restore_job_id: "RestoreJobId", # required
1467
+ # }
1468
+ #
1469
+ # @!attribute [rw] restore_job_id
1470
+ # Uniquely identifies the job that restores a recovery point.
1471
+ # @return [String]
1472
+ #
1473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRestoreJobInput AWS API Documentation
1474
+ #
1475
+ class DescribeRestoreJobInput < Struct.new(
1476
+ :restore_job_id)
1477
+ include Aws::Structure
1478
+ end
1479
+
1480
+ # @!attribute [rw] restore_job_id
1481
+ # Uniquely identifies the job that restores a recovery point.
1482
+ # @return [String]
1483
+ #
1484
+ # @!attribute [rw] recovery_point_arn
1485
+ # An ARN that uniquely identifies a recovery point; for example,
1486
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
1487
+ # @return [String]
1488
+ #
1489
+ # @!attribute [rw] creation_date
1490
+ # The date and time that a restore job is created, in Unix format and
1491
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
1492
+ # accurate to milliseconds. For example, the value 1516925490.087
1493
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
1494
+ # @return [Time]
1495
+ #
1496
+ # @!attribute [rw] completion_date
1497
+ # The date and time that a job to restore a recovery point is
1498
+ # completed, in Unix format and Coordinated Universal Time (UTC). The
1499
+ # value of `CompletionDate` is accurate to milliseconds. For example,
1500
+ # the value 1516925490.087 represents Friday, January 26, 2018
1501
+ # 12:11:30.087 AM.
1502
+ # @return [Time]
1503
+ #
1504
+ # @!attribute [rw] status
1505
+ # Status code specifying the state of the job that is initiated by AWS
1506
+ # Backup to restore a recovery point.
1507
+ # @return [String]
1508
+ #
1509
+ # @!attribute [rw] status_message
1510
+ # A detailed message explaining the status of a job to restore a
1511
+ # recovery point.
1512
+ # @return [String]
1513
+ #
1514
+ # @!attribute [rw] percent_done
1515
+ # Contains an estimated percentage that is complete of a job at the
1516
+ # time the job status was queried.
1517
+ # @return [String]
1518
+ #
1519
+ # @!attribute [rw] backup_size_in_bytes
1520
+ # The size, in bytes, of the restored resource.
1521
+ # @return [Integer]
1522
+ #
1523
+ # @!attribute [rw] iam_role_arn
1524
+ # Specifies the IAM role ARN used to create the target recovery point;
1525
+ # for example, `arn:aws:iam::123456789012:role/S3Access`.
1526
+ # @return [String]
1527
+ #
1528
+ # @!attribute [rw] expected_completion_time_minutes
1529
+ # The amount of time in minutes that a job restoring a recovery point
1530
+ # is expected to take.
1531
+ # @return [Integer]
1532
+ #
1533
+ # @!attribute [rw] created_resource_arn
1534
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource
1535
+ # whose recovery point is being restored. The format of the ARN
1536
+ # depends on the resource type of the backed-up resource.
1537
+ # @return [String]
1538
+ #
1539
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRestoreJobOutput AWS API Documentation
1540
+ #
1541
+ class DescribeRestoreJobOutput < Struct.new(
1542
+ :restore_job_id,
1543
+ :recovery_point_arn,
1544
+ :creation_date,
1545
+ :completion_date,
1546
+ :status,
1547
+ :status_message,
1548
+ :percent_done,
1549
+ :backup_size_in_bytes,
1550
+ :iam_role_arn,
1551
+ :expected_completion_time_minutes,
1552
+ :created_resource_arn)
1553
+ include Aws::Structure
1554
+ end
1555
+
1556
+ # @note When making an API call, you may pass ExportBackupPlanTemplateInput
1557
+ # data as a hash:
1558
+ #
1559
+ # {
1560
+ # backup_plan_id: "string", # required
1561
+ # }
1562
+ #
1563
+ # @!attribute [rw] backup_plan_id
1564
+ # Uniquely identifies a backup plan.
1565
+ # @return [String]
1566
+ #
1567
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ExportBackupPlanTemplateInput AWS API Documentation
1568
+ #
1569
+ class ExportBackupPlanTemplateInput < Struct.new(
1570
+ :backup_plan_id)
1571
+ include Aws::Structure
1572
+ end
1573
+
1574
+ # @!attribute [rw] backup_plan_template_json
1575
+ # The body of a backup plan template in JSON format.
1576
+ #
1577
+ # <note markdown="1"> This is a signed JSON document that cannot be modified before being
1578
+ # passed to `GetBackupPlanFromJSON.`
1579
+ #
1580
+ # </note>
1581
+ # @return [String]
1582
+ #
1583
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ExportBackupPlanTemplateOutput AWS API Documentation
1584
+ #
1585
+ class ExportBackupPlanTemplateOutput < Struct.new(
1586
+ :backup_plan_template_json)
1587
+ include Aws::Structure
1588
+ end
1589
+
1590
+ # @note When making an API call, you may pass GetBackupPlanFromJSONInput
1591
+ # data as a hash:
1592
+ #
1593
+ # {
1594
+ # backup_plan_template_json: "string", # required
1595
+ # }
1596
+ #
1597
+ # @!attribute [rw] backup_plan_template_json
1598
+ # A customer-supplied backup plan document in JSON format.
1599
+ # @return [String]
1600
+ #
1601
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupPlanFromJSONInput AWS API Documentation
1602
+ #
1603
+ class GetBackupPlanFromJSONInput < Struct.new(
1604
+ :backup_plan_template_json)
1605
+ include Aws::Structure
1606
+ end
1607
+
1608
+ # @!attribute [rw] backup_plan
1609
+ # Specifies the body of a backup plan. Includes a `BackupPlanName` and
1610
+ # one or more sets of `Rules`.
1611
+ # @return [Types::BackupPlan]
1612
+ #
1613
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupPlanFromJSONOutput AWS API Documentation
1614
+ #
1615
+ class GetBackupPlanFromJSONOutput < Struct.new(
1616
+ :backup_plan)
1617
+ include Aws::Structure
1618
+ end
1619
+
1620
+ # @note When making an API call, you may pass GetBackupPlanFromTemplateInput
1621
+ # data as a hash:
1622
+ #
1623
+ # {
1624
+ # backup_plan_template_id: "string", # required
1625
+ # }
1626
+ #
1627
+ # @!attribute [rw] backup_plan_template_id
1628
+ # Uniquely identifies a stored backup plan template.
1629
+ # @return [String]
1630
+ #
1631
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupPlanFromTemplateInput AWS API Documentation
1632
+ #
1633
+ class GetBackupPlanFromTemplateInput < Struct.new(
1634
+ :backup_plan_template_id)
1635
+ include Aws::Structure
1636
+ end
1637
+
1638
+ # @!attribute [rw] backup_plan_document
1639
+ # Returns the body of a backup plan based on the target template,
1640
+ # including the name, rules, and backup vault of the plan.
1641
+ # @return [Types::BackupPlan]
1642
+ #
1643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupPlanFromTemplateOutput AWS API Documentation
1644
+ #
1645
+ class GetBackupPlanFromTemplateOutput < Struct.new(
1646
+ :backup_plan_document)
1647
+ include Aws::Structure
1648
+ end
1649
+
1650
+ # @note When making an API call, you may pass GetBackupPlanInput
1651
+ # data as a hash:
1652
+ #
1653
+ # {
1654
+ # backup_plan_id: "string", # required
1655
+ # version_id: "string",
1656
+ # }
1657
+ #
1658
+ # @!attribute [rw] backup_plan_id
1659
+ # Uniquely identifies a backup plan.
1660
+ # @return [String]
1661
+ #
1662
+ # @!attribute [rw] version_id
1663
+ # Unique, randomly generated, Unicode, UTF-8 encoded strings that are
1664
+ # at most 1,024 bytes long. Version IDs cannot be edited.
1665
+ # @return [String]
1666
+ #
1667
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupPlanInput AWS API Documentation
1668
+ #
1669
+ class GetBackupPlanInput < Struct.new(
1670
+ :backup_plan_id,
1671
+ :version_id)
1672
+ include Aws::Structure
1673
+ end
1674
+
1675
+ # @!attribute [rw] backup_plan
1676
+ # Specifies the body of a backup plan. Includes a `BackupPlanName` and
1677
+ # one or more sets of `Rules`.
1678
+ # @return [Types::BackupPlan]
1679
+ #
1680
+ # @!attribute [rw] backup_plan_id
1681
+ # Uniquely identifies a backup plan.
1682
+ # @return [String]
1683
+ #
1684
+ # @!attribute [rw] backup_plan_arn
1685
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
1686
+ # plan; for example,
1687
+ # `arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50`.
1688
+ # @return [String]
1689
+ #
1690
+ # @!attribute [rw] version_id
1691
+ # Unique, randomly generated, Unicode, UTF-8 encoded strings that are
1692
+ # at most 1,024 bytes long. Version IDs cannot be edited.
1693
+ # @return [String]
1694
+ #
1695
+ # @!attribute [rw] creator_request_id
1696
+ # A unique string that identifies the request and allows failed
1697
+ # requests to be retried without the risk of executing the operation
1698
+ # twice.
1699
+ # @return [String]
1700
+ #
1701
+ # @!attribute [rw] creation_date
1702
+ # The date and time that a backup plan is created, in Unix format and
1703
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
1704
+ # accurate to milliseconds. For example, the value 1516925490.087
1705
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
1706
+ # @return [Time]
1707
+ #
1708
+ # @!attribute [rw] deletion_date
1709
+ # The date and time that a backup plan is deleted, in Unix format and
1710
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
1711
+ # accurate to milliseconds. For example, the value 1516925490.087
1712
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
1713
+ # @return [Time]
1714
+ #
1715
+ # @!attribute [rw] last_execution_date
1716
+ # The last time a job to back up resources was executed with this
1717
+ # backup plan. A date and time, in Unix format and Coordinated
1718
+ # Universal Time (UTC). The value of `LastExecutionDate` is accurate
1719
+ # to milliseconds. For example, the value 1516925490.087 represents
1720
+ # Friday, January 26, 2018 12:11:30.087 AM.
1721
+ # @return [Time]
1722
+ #
1723
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupPlanOutput AWS API Documentation
1724
+ #
1725
+ class GetBackupPlanOutput < Struct.new(
1726
+ :backup_plan,
1727
+ :backup_plan_id,
1728
+ :backup_plan_arn,
1729
+ :version_id,
1730
+ :creator_request_id,
1731
+ :creation_date,
1732
+ :deletion_date,
1733
+ :last_execution_date)
1734
+ include Aws::Structure
1735
+ end
1736
+
1737
+ # @note When making an API call, you may pass GetBackupSelectionInput
1738
+ # data as a hash:
1739
+ #
1740
+ # {
1741
+ # backup_plan_id: "string", # required
1742
+ # selection_id: "string", # required
1743
+ # }
1744
+ #
1745
+ # @!attribute [rw] backup_plan_id
1746
+ # Uniquely identifies a backup plan.
1747
+ # @return [String]
1748
+ #
1749
+ # @!attribute [rw] selection_id
1750
+ # Uniquely identifies the body of a request to assign a set of
1751
+ # resources to a backup plan.
1752
+ # @return [String]
1753
+ #
1754
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupSelectionInput AWS API Documentation
1755
+ #
1756
+ class GetBackupSelectionInput < Struct.new(
1757
+ :backup_plan_id,
1758
+ :selection_id)
1759
+ include Aws::Structure
1760
+ end
1761
+
1762
+ # @!attribute [rw] backup_selection
1763
+ # Specifies the body of a request to assign a set of resources to a
1764
+ # backup plan.
1765
+ #
1766
+ # It includes an array of resources, an optional array of patterns to
1767
+ # exclude resources, an optional role to provide access to the AWS
1768
+ # service that the resource belongs to, and an optional array of tags
1769
+ # used to identify a set of resources.
1770
+ # @return [Types::BackupSelection]
1771
+ #
1772
+ # @!attribute [rw] selection_id
1773
+ # Uniquely identifies the body of a request to assign a set of
1774
+ # resources to a backup plan.
1775
+ # @return [String]
1776
+ #
1777
+ # @!attribute [rw] backup_plan_id
1778
+ # Uniquely identifies a backup plan.
1779
+ # @return [String]
1780
+ #
1781
+ # @!attribute [rw] creation_date
1782
+ # The date and time a backup selection is created, in Unix format and
1783
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
1784
+ # accurate to milliseconds. For example, the value 1516925490.087
1785
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
1786
+ # @return [Time]
1787
+ #
1788
+ # @!attribute [rw] creator_request_id
1789
+ # A unique string that identifies the request and allows failed
1790
+ # requests to be retried without the risk of executing the operation
1791
+ # twice.
1792
+ # @return [String]
1793
+ #
1794
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupSelectionOutput AWS API Documentation
1795
+ #
1796
+ class GetBackupSelectionOutput < Struct.new(
1797
+ :backup_selection,
1798
+ :selection_id,
1799
+ :backup_plan_id,
1800
+ :creation_date,
1801
+ :creator_request_id)
1802
+ include Aws::Structure
1803
+ end
1804
+
1805
+ # @note When making an API call, you may pass GetBackupVaultAccessPolicyInput
1806
+ # data as a hash:
1807
+ #
1808
+ # {
1809
+ # backup_vault_name: "BackupVaultName", # required
1810
+ # }
1811
+ #
1812
+ # @!attribute [rw] backup_vault_name
1813
+ # The name of a logical container where backups are stored. Backup
1814
+ # vaults are identified by names that are unique to the account used
1815
+ # to create them and the AWS Region where they are created. They
1816
+ # consist of lowercase letters, numbers, and hyphens.
1817
+ # @return [String]
1818
+ #
1819
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupVaultAccessPolicyInput AWS API Documentation
1820
+ #
1821
+ class GetBackupVaultAccessPolicyInput < Struct.new(
1822
+ :backup_vault_name)
1823
+ include Aws::Structure
1824
+ end
1825
+
1826
+ # @!attribute [rw] backup_vault_name
1827
+ # The name of a logical container where backups are stored. Backup
1828
+ # vaults are identified by names that are unique to the account used
1829
+ # to create them and the Region where they are created. They consist
1830
+ # of lowercase letters, numbers, and hyphens.
1831
+ # @return [String]
1832
+ #
1833
+ # @!attribute [rw] backup_vault_arn
1834
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
1835
+ # vault; for example,
1836
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
1837
+ # @return [String]
1838
+ #
1839
+ # @!attribute [rw] policy
1840
+ # The backup vault access policy document in JSON format.
1841
+ # @return [String]
1842
+ #
1843
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupVaultAccessPolicyOutput AWS API Documentation
1844
+ #
1845
+ class GetBackupVaultAccessPolicyOutput < Struct.new(
1846
+ :backup_vault_name,
1847
+ :backup_vault_arn,
1848
+ :policy)
1849
+ include Aws::Structure
1850
+ end
1851
+
1852
+ # @note When making an API call, you may pass GetBackupVaultNotificationsInput
1853
+ # data as a hash:
1854
+ #
1855
+ # {
1856
+ # backup_vault_name: "BackupVaultName", # required
1857
+ # }
1858
+ #
1859
+ # @!attribute [rw] backup_vault_name
1860
+ # The name of a logical container where backups are stored. Backup
1861
+ # vaults are identified by names that are unique to the account used
1862
+ # to create them and the AWS Region where they are created. They
1863
+ # consist of lowercase letters, numbers, and hyphens.
1864
+ # @return [String]
1865
+ #
1866
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupVaultNotificationsInput AWS API Documentation
1867
+ #
1868
+ class GetBackupVaultNotificationsInput < Struct.new(
1869
+ :backup_vault_name)
1870
+ include Aws::Structure
1871
+ end
1872
+
1873
+ # @!attribute [rw] backup_vault_name
1874
+ # The name of a logical container where backups are stored. Backup
1875
+ # vaults are identified by names that are unique to the account used
1876
+ # to create them and the Region where they are created. They consist
1877
+ # of lowercase letters, numbers, and hyphens.
1878
+ # @return [String]
1879
+ #
1880
+ # @!attribute [rw] backup_vault_arn
1881
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
1882
+ # vault; for example,
1883
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
1884
+ # @return [String]
1885
+ #
1886
+ # @!attribute [rw] sns_topic_arn
1887
+ # An ARN that uniquely identifies an Amazon Simple Notification
1888
+ # Service (Amazon SNS) topic; for example,
1889
+ # `arn:aws:sns:us-west-2:111122223333:MyTopic`.
1890
+ # @return [String]
1891
+ #
1892
+ # @!attribute [rw] backup_vault_events
1893
+ # An array of events that indicate the status of jobs to back up
1894
+ # resources to the backup vault.
1895
+ # @return [Array<String>]
1896
+ #
1897
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupVaultNotificationsOutput AWS API Documentation
1898
+ #
1899
+ class GetBackupVaultNotificationsOutput < Struct.new(
1900
+ :backup_vault_name,
1901
+ :backup_vault_arn,
1902
+ :sns_topic_arn,
1903
+ :backup_vault_events)
1904
+ include Aws::Structure
1905
+ end
1906
+
1907
+ # @note When making an API call, you may pass GetRecoveryPointRestoreMetadataInput
1908
+ # data as a hash:
1909
+ #
1910
+ # {
1911
+ # backup_vault_name: "BackupVaultName", # required
1912
+ # recovery_point_arn: "ARN", # required
1913
+ # }
1914
+ #
1915
+ # @!attribute [rw] backup_vault_name
1916
+ # The name of a logical container where backups are stored. Backup
1917
+ # vaults are identified by names that are unique to the account used
1918
+ # to create them and the AWS Region where they are created. They
1919
+ # consist of lowercase letters, numbers, and hyphens.
1920
+ # @return [String]
1921
+ #
1922
+ # @!attribute [rw] recovery_point_arn
1923
+ # An Amazon Resource Name (ARN) that uniquely identifies a recovery
1924
+ # point; for example,
1925
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
1926
+ # @return [String]
1927
+ #
1928
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRecoveryPointRestoreMetadataInput AWS API Documentation
1929
+ #
1930
+ class GetRecoveryPointRestoreMetadataInput < Struct.new(
1931
+ :backup_vault_name,
1932
+ :recovery_point_arn)
1933
+ include Aws::Structure
1934
+ end
1935
+
1936
+ # @!attribute [rw] backup_vault_arn
1937
+ # An ARN that uniquely identifies a backup vault; for example,
1938
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
1939
+ # @return [String]
1940
+ #
1941
+ # @!attribute [rw] recovery_point_arn
1942
+ # An ARN that uniquely identifies a recovery point; for example,
1943
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
1944
+ # @return [String]
1945
+ #
1946
+ # @!attribute [rw] restore_metadata
1947
+ # A set of metadata key-value pairs that lists the metadata key-value
1948
+ # pairs that are required to restore the recovery point.
1949
+ # @return [Hash<String,String>]
1950
+ #
1951
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRecoveryPointRestoreMetadataOutput AWS API Documentation
1952
+ #
1953
+ class GetRecoveryPointRestoreMetadataOutput < Struct.new(
1954
+ :backup_vault_arn,
1955
+ :recovery_point_arn,
1956
+ :restore_metadata)
1957
+ include Aws::Structure
1958
+ end
1959
+
1960
+ # @!attribute [rw] resource_types
1961
+ # Contains a string with the supported AWS resource types:
1962
+ #
1963
+ # * `EBS` for Amazon Elastic Block Store
1964
+ #
1965
+ # * `SGW` for AWS Storage Gateway
1966
+ #
1967
+ # * `RDS` for Amazon Relational Database Service
1968
+ #
1969
+ # * `DDB` for Amazon DynamoDB
1970
+ #
1971
+ # * `EFS` for Amazon Elastic File System
1972
+ # @return [Array<String>]
1973
+ #
1974
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetSupportedResourceTypesOutput AWS API Documentation
1975
+ #
1976
+ class GetSupportedResourceTypesOutput < Struct.new(
1977
+ :resource_types)
1978
+ include Aws::Structure
1979
+ end
1980
+
1981
+ # Contains an array of `Transition` objects specifying how long in days
1982
+ # before a recovery point transitions to cold storage or is deleted.
1983
+ #
1984
+ # @note When making an API call, you may pass Lifecycle
1985
+ # data as a hash:
1986
+ #
1987
+ # {
1988
+ # move_to_cold_storage_after_days: 1,
1989
+ # delete_after_days: 1,
1990
+ # }
1991
+ #
1992
+ # @!attribute [rw] move_to_cold_storage_after_days
1993
+ # Specifies the number of days after creation that a recovery point is
1994
+ # moved to cold storage.
1995
+ # @return [Integer]
1996
+ #
1997
+ # @!attribute [rw] delete_after_days
1998
+ # Specifies the number of days after creation that a recovery point is
1999
+ # deleted. Must be greater than `MoveToColdStorageAfterDays`.
2000
+ # @return [Integer]
2001
+ #
2002
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/Lifecycle AWS API Documentation
2003
+ #
2004
+ class Lifecycle < Struct.new(
2005
+ :move_to_cold_storage_after_days,
2006
+ :delete_after_days)
2007
+ include Aws::Structure
2008
+ end
2009
+
2010
+ # @note When making an API call, you may pass ListBackupJobsInput
2011
+ # data as a hash:
2012
+ #
2013
+ # {
2014
+ # next_token: "string",
2015
+ # max_results: 1,
2016
+ # by_resource_arn: "ARN",
2017
+ # by_state: "CREATED", # accepts CREATED, PENDING, RUNNING, ABORTING, ABORTED, COMPLETED, FAILED, EXPIRED
2018
+ # by_backup_vault_name: "BackupVaultName",
2019
+ # by_created_before: Time.now,
2020
+ # by_created_after: Time.now,
2021
+ # by_resource_type: "ResourceType",
2022
+ # }
2023
+ #
2024
+ # @!attribute [rw] next_token
2025
+ # The next item following a partial list of returned items. For
2026
+ # example, if a request is made to return `maxResults` number of
2027
+ # items, `NextToken` allows you to return more items in your list
2028
+ # starting at the location pointed to by the next token.
2029
+ # @return [String]
2030
+ #
2031
+ # @!attribute [rw] max_results
2032
+ # The maximum number of items to be returned.
2033
+ # @return [Integer]
2034
+ #
2035
+ # @!attribute [rw] by_resource_arn
2036
+ # Returns only backup jobs that match the specified resource Amazon
2037
+ # Resource Name (ARN).
2038
+ # @return [String]
2039
+ #
2040
+ # @!attribute [rw] by_state
2041
+ # Returns only backup jobs that are in the specified state.
2042
+ # @return [String]
2043
+ #
2044
+ # @!attribute [rw] by_backup_vault_name
2045
+ # Returns only backup jobs that will be stored in the specified backup
2046
+ # vault. Backup vaults are identified by names that are unique to the
2047
+ # account used to create them and the AWS Region where they are
2048
+ # created. They consist of lowercase letters, numbers, and hyphens.
2049
+ # @return [String]
2050
+ #
2051
+ # @!attribute [rw] by_created_before
2052
+ # Returns only backup jobs that were created before the specified
2053
+ # date.
2054
+ # @return [Time]
2055
+ #
2056
+ # @!attribute [rw] by_created_after
2057
+ # Returns only backup jobs that were created after the specified date.
2058
+ # @return [Time]
2059
+ #
2060
+ # @!attribute [rw] by_resource_type
2061
+ # Returns only backup jobs for the specified resources:
2062
+ #
2063
+ # * `EBS` for Amazon Elastic Block Store
2064
+ #
2065
+ # * `SGW` for AWS Storage Gateway
2066
+ #
2067
+ # * `RDS` for Amazon Relational Database Service
2068
+ #
2069
+ # * `DDB` for Amazon DynamoDB
2070
+ #
2071
+ # * `EFS` for Amazon Elastic File System
2072
+ # @return [String]
2073
+ #
2074
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobsInput AWS API Documentation
2075
+ #
2076
+ class ListBackupJobsInput < Struct.new(
2077
+ :next_token,
2078
+ :max_results,
2079
+ :by_resource_arn,
2080
+ :by_state,
2081
+ :by_backup_vault_name,
2082
+ :by_created_before,
2083
+ :by_created_after,
2084
+ :by_resource_type)
2085
+ include Aws::Structure
2086
+ end
2087
+
2088
+ # @!attribute [rw] backup_jobs
2089
+ # An array of structures containing metadata about your backup jobs
2090
+ # returned in JSON format.
2091
+ # @return [Array<Types::BackupJob>]
2092
+ #
2093
+ # @!attribute [rw] next_token
2094
+ # The next item following a partial list of returned items. For
2095
+ # example, if a request is made to return `maxResults` number of
2096
+ # items, `NextToken` allows you to return more items in your list
2097
+ # starting at the location pointed to by the next token.
2098
+ # @return [String]
2099
+ #
2100
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobsOutput AWS API Documentation
2101
+ #
2102
+ class ListBackupJobsOutput < Struct.new(
2103
+ :backup_jobs,
2104
+ :next_token)
2105
+ include Aws::Structure
2106
+ end
2107
+
2108
+ # @note When making an API call, you may pass ListBackupPlanTemplatesInput
2109
+ # data as a hash:
2110
+ #
2111
+ # {
2112
+ # next_token: "string",
2113
+ # max_results: 1,
2114
+ # }
2115
+ #
2116
+ # @!attribute [rw] next_token
2117
+ # The next item following a partial list of returned items. For
2118
+ # example, if a request is made to return `maxResults` number of
2119
+ # items, `NextToken` allows you to return more items in your list
2120
+ # starting at the location pointed to by the next token.
2121
+ # @return [String]
2122
+ #
2123
+ # @!attribute [rw] max_results
2124
+ # The maximum number of items to be returned.
2125
+ # @return [Integer]
2126
+ #
2127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanTemplatesInput AWS API Documentation
2128
+ #
2129
+ class ListBackupPlanTemplatesInput < Struct.new(
2130
+ :next_token,
2131
+ :max_results)
2132
+ include Aws::Structure
2133
+ end
2134
+
2135
+ # @!attribute [rw] next_token
2136
+ # The next item following a partial list of returned items. For
2137
+ # example, if a request is made to return `maxResults` number of
2138
+ # items, `NextToken` allows you to return more items in your list
2139
+ # starting at the location pointed to by the next token.
2140
+ # @return [String]
2141
+ #
2142
+ # @!attribute [rw] backup_plan_templates_list
2143
+ # An array of template list items containing metadata about your saved
2144
+ # templates.
2145
+ # @return [Array<Types::BackupPlanTemplatesListMember>]
2146
+ #
2147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanTemplatesOutput AWS API Documentation
2148
+ #
2149
+ class ListBackupPlanTemplatesOutput < Struct.new(
2150
+ :next_token,
2151
+ :backup_plan_templates_list)
2152
+ include Aws::Structure
2153
+ end
2154
+
2155
+ # @note When making an API call, you may pass ListBackupPlanVersionsInput
2156
+ # data as a hash:
2157
+ #
2158
+ # {
2159
+ # backup_plan_id: "string", # required
2160
+ # next_token: "string",
2161
+ # max_results: 1,
2162
+ # }
2163
+ #
2164
+ # @!attribute [rw] backup_plan_id
2165
+ # Uniquely identifies a backup plan.
2166
+ # @return [String]
2167
+ #
2168
+ # @!attribute [rw] next_token
2169
+ # The next item following a partial list of returned items. For
2170
+ # example, if a request is made to return `maxResults` number of
2171
+ # items, `NextToken` allows you to return more items in your list
2172
+ # starting at the location pointed to by the next token.
2173
+ # @return [String]
2174
+ #
2175
+ # @!attribute [rw] max_results
2176
+ # The maximum number of items to be returned.
2177
+ # @return [Integer]
2178
+ #
2179
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanVersionsInput AWS API Documentation
2180
+ #
2181
+ class ListBackupPlanVersionsInput < Struct.new(
2182
+ :backup_plan_id,
2183
+ :next_token,
2184
+ :max_results)
2185
+ include Aws::Structure
2186
+ end
2187
+
2188
+ # @!attribute [rw] next_token
2189
+ # The next item following a partial list of returned items. For
2190
+ # example, if a request is made to return `maxResults` number of
2191
+ # items, `NextToken` allows you to return more items in your list
2192
+ # starting at the location pointed to by the next token.
2193
+ # @return [String]
2194
+ #
2195
+ # @!attribute [rw] backup_plan_versions_list
2196
+ # An array of version list items containing metadata about your backup
2197
+ # plans.
2198
+ # @return [Array<Types::BackupPlansListMember>]
2199
+ #
2200
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanVersionsOutput AWS API Documentation
2201
+ #
2202
+ class ListBackupPlanVersionsOutput < Struct.new(
2203
+ :next_token,
2204
+ :backup_plan_versions_list)
2205
+ include Aws::Structure
2206
+ end
2207
+
2208
+ # @note When making an API call, you may pass ListBackupPlansInput
2209
+ # data as a hash:
2210
+ #
2211
+ # {
2212
+ # next_token: "string",
2213
+ # max_results: 1,
2214
+ # include_deleted: false,
2215
+ # }
2216
+ #
2217
+ # @!attribute [rw] next_token
2218
+ # The next item following a partial list of returned items. For
2219
+ # example, if a request is made to return `maxResults` number of
2220
+ # items, `NextToken` allows you to return more items in your list
2221
+ # starting at the location pointed to by the next token.
2222
+ # @return [String]
2223
+ #
2224
+ # @!attribute [rw] max_results
2225
+ # The maximum number of items to be returned.
2226
+ # @return [Integer]
2227
+ #
2228
+ # @!attribute [rw] include_deleted
2229
+ # A Boolean value with a default value of `FALSE` that returns deleted
2230
+ # backup plans when set to `TRUE`.
2231
+ # @return [Boolean]
2232
+ #
2233
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlansInput AWS API Documentation
2234
+ #
2235
+ class ListBackupPlansInput < Struct.new(
2236
+ :next_token,
2237
+ :max_results,
2238
+ :include_deleted)
2239
+ include Aws::Structure
2240
+ end
2241
+
2242
+ # @!attribute [rw] next_token
2243
+ # The next item following a partial list of returned items. For
2244
+ # example, if a request is made to return `maxResults` number of
2245
+ # items, `NextToken` allows you to return more items in your list
2246
+ # starting at the location pointed to by the next token.
2247
+ # @return [String]
2248
+ #
2249
+ # @!attribute [rw] backup_plans_list
2250
+ # An array of backup plan list items containing metadata about your
2251
+ # saved backup plans.
2252
+ # @return [Array<Types::BackupPlansListMember>]
2253
+ #
2254
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlansOutput AWS API Documentation
2255
+ #
2256
+ class ListBackupPlansOutput < Struct.new(
2257
+ :next_token,
2258
+ :backup_plans_list)
2259
+ include Aws::Structure
2260
+ end
2261
+
2262
+ # @note When making an API call, you may pass ListBackupSelectionsInput
2263
+ # data as a hash:
2264
+ #
2265
+ # {
2266
+ # backup_plan_id: "string", # required
2267
+ # next_token: "string",
2268
+ # max_results: 1,
2269
+ # }
2270
+ #
2271
+ # @!attribute [rw] backup_plan_id
2272
+ # Uniquely identifies a backup plan.
2273
+ # @return [String]
2274
+ #
2275
+ # @!attribute [rw] next_token
2276
+ # The next item following a partial list of returned items. For
2277
+ # example, if a request is made to return `maxResults` number of
2278
+ # items, `NextToken` allows you to return more items in your list
2279
+ # starting at the location pointed to by the next token.
2280
+ # @return [String]
2281
+ #
2282
+ # @!attribute [rw] max_results
2283
+ # The maximum number of items to be returned.
2284
+ # @return [Integer]
2285
+ #
2286
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupSelectionsInput AWS API Documentation
2287
+ #
2288
+ class ListBackupSelectionsInput < Struct.new(
2289
+ :backup_plan_id,
2290
+ :next_token,
2291
+ :max_results)
2292
+ include Aws::Structure
2293
+ end
2294
+
2295
+ # @!attribute [rw] next_token
2296
+ # The next item following a partial list of returned items. For
2297
+ # example, if a request is made to return `maxResults` number of
2298
+ # items, `NextToken` allows you to return more items in your list
2299
+ # starting at the location pointed to by the next token.
2300
+ # @return [String]
2301
+ #
2302
+ # @!attribute [rw] backup_selections_list
2303
+ # An array of backup selection list items containing metadata about
2304
+ # each resource in the list.
2305
+ # @return [Array<Types::BackupSelectionsListMember>]
2306
+ #
2307
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupSelectionsOutput AWS API Documentation
2308
+ #
2309
+ class ListBackupSelectionsOutput < Struct.new(
2310
+ :next_token,
2311
+ :backup_selections_list)
2312
+ include Aws::Structure
2313
+ end
2314
+
2315
+ # @note When making an API call, you may pass ListBackupVaultsInput
2316
+ # data as a hash:
2317
+ #
2318
+ # {
2319
+ # next_token: "string",
2320
+ # max_results: 1,
2321
+ # }
2322
+ #
2323
+ # @!attribute [rw] next_token
2324
+ # The next item following a partial list of returned items. For
2325
+ # example, if a request is made to return `maxResults` number of
2326
+ # items, `NextToken` allows you to return more items in your list
2327
+ # starting at the location pointed to by the next token.
2328
+ # @return [String]
2329
+ #
2330
+ # @!attribute [rw] max_results
2331
+ # The maximum number of items to be returned.
2332
+ # @return [Integer]
2333
+ #
2334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupVaultsInput AWS API Documentation
2335
+ #
2336
+ class ListBackupVaultsInput < Struct.new(
2337
+ :next_token,
2338
+ :max_results)
2339
+ include Aws::Structure
2340
+ end
2341
+
2342
+ # @!attribute [rw] backup_vault_list
2343
+ # An array of backup vault list members containing vault metadata,
2344
+ # including Amazon Resource Name (ARN), display name, creation date,
2345
+ # number of saved recovery points, and encryption information if the
2346
+ # resources saved in the backup vault are encrypted.
2347
+ # @return [Array<Types::BackupVaultListMember>]
2348
+ #
2349
+ # @!attribute [rw] next_token
2350
+ # The next item following a partial list of returned items. For
2351
+ # example, if a request is made to return `maxResults` number of
2352
+ # items, `NextToken` allows you to return more items in your list
2353
+ # starting at the location pointed to by the next token.
2354
+ # @return [String]
2355
+ #
2356
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupVaultsOutput AWS API Documentation
2357
+ #
2358
+ class ListBackupVaultsOutput < Struct.new(
2359
+ :backup_vault_list,
2360
+ :next_token)
2361
+ include Aws::Structure
2362
+ end
2363
+
2364
+ # @note When making an API call, you may pass ListProtectedResourcesInput
2365
+ # data as a hash:
2366
+ #
2367
+ # {
2368
+ # next_token: "string",
2369
+ # max_results: 1,
2370
+ # }
2371
+ #
2372
+ # @!attribute [rw] next_token
2373
+ # The next item following a partial list of returned items. For
2374
+ # example, if a request is made to return `maxResults` number of
2375
+ # items, `NextToken` allows you to return more items in your list
2376
+ # starting at the location pointed to by the next token.
2377
+ # @return [String]
2378
+ #
2379
+ # @!attribute [rw] max_results
2380
+ # The maximum number of items to be returned.
2381
+ # @return [Integer]
2382
+ #
2383
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResourcesInput AWS API Documentation
2384
+ #
2385
+ class ListProtectedResourcesInput < Struct.new(
2386
+ :next_token,
2387
+ :max_results)
2388
+ include Aws::Structure
2389
+ end
2390
+
2391
+ # @!attribute [rw] results
2392
+ # An array of resources successfully backed up by AWS Backup including
2393
+ # the time the resource was saved, an Amazon Resource Name (ARN) of
2394
+ # the resource, and a resource type.
2395
+ # @return [Array<Types::ProtectedResource>]
2396
+ #
2397
+ # @!attribute [rw] next_token
2398
+ # The next item following a partial list of returned items. For
2399
+ # example, if a request is made to return `maxResults` number of
2400
+ # items, `NextToken` allows you to return more items in your list
2401
+ # starting at the location pointed to by the next token.
2402
+ # @return [String]
2403
+ #
2404
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResourcesOutput AWS API Documentation
2405
+ #
2406
+ class ListProtectedResourcesOutput < Struct.new(
2407
+ :results,
2408
+ :next_token)
2409
+ include Aws::Structure
2410
+ end
2411
+
2412
+ # @note When making an API call, you may pass ListRecoveryPointsByBackupVaultInput
2413
+ # data as a hash:
2414
+ #
2415
+ # {
2416
+ # backup_vault_name: "BackupVaultName", # required
2417
+ # next_token: "string",
2418
+ # max_results: 1,
2419
+ # by_resource_arn: "ARN",
2420
+ # by_resource_type: "ResourceType",
2421
+ # by_backup_plan_id: "string",
2422
+ # by_created_before: Time.now,
2423
+ # by_created_after: Time.now,
2424
+ # }
2425
+ #
2426
+ # @!attribute [rw] backup_vault_name
2427
+ # The name of a logical container where backups are stored. Backup
2428
+ # vaults are identified by names that are unique to the account used
2429
+ # to create them and the AWS Region where they are created. They
2430
+ # consist of lowercase letters, numbers, and hyphens.
2431
+ # @return [String]
2432
+ #
2433
+ # @!attribute [rw] next_token
2434
+ # The next item following a partial list of returned items. For
2435
+ # example, if a request is made to return `maxResults` number of
2436
+ # items, `NextToken` allows you to return more items in your list
2437
+ # starting at the location pointed to by the next token.
2438
+ # @return [String]
2439
+ #
2440
+ # @!attribute [rw] max_results
2441
+ # The maximum number of items to be returned.
2442
+ # @return [Integer]
2443
+ #
2444
+ # @!attribute [rw] by_resource_arn
2445
+ # Returns only recovery points that match the specified resource
2446
+ # Amazon Resource Name (ARN).
2447
+ # @return [String]
2448
+ #
2449
+ # @!attribute [rw] by_resource_type
2450
+ # Returns only recovery points that match the specified resource type.
2451
+ # @return [String]
2452
+ #
2453
+ # @!attribute [rw] by_backup_plan_id
2454
+ # Returns only recovery points that match the specified backup plan
2455
+ # ID.
2456
+ # @return [String]
2457
+ #
2458
+ # @!attribute [rw] by_created_before
2459
+ # Returns only recovery points that were created before the specified
2460
+ # timestamp.
2461
+ # @return [Time]
2462
+ #
2463
+ # @!attribute [rw] by_created_after
2464
+ # Returns only recovery points that were created after the specified
2465
+ # timestamp.
2466
+ # @return [Time]
2467
+ #
2468
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByBackupVaultInput AWS API Documentation
2469
+ #
2470
+ class ListRecoveryPointsByBackupVaultInput < Struct.new(
2471
+ :backup_vault_name,
2472
+ :next_token,
2473
+ :max_results,
2474
+ :by_resource_arn,
2475
+ :by_resource_type,
2476
+ :by_backup_plan_id,
2477
+ :by_created_before,
2478
+ :by_created_after)
2479
+ include Aws::Structure
2480
+ end
2481
+
2482
+ # @!attribute [rw] next_token
2483
+ # The next item following a partial list of returned items. For
2484
+ # example, if a request is made to return `maxResults` number of
2485
+ # items, `NextToken` allows you to return more items in your list
2486
+ # starting at the location pointed to by the next token.
2487
+ # @return [String]
2488
+ #
2489
+ # @!attribute [rw] recovery_points
2490
+ # An array of objects that contain detailed information about recovery
2491
+ # points saved in a backup vault.
2492
+ # @return [Array<Types::RecoveryPointByBackupVault>]
2493
+ #
2494
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByBackupVaultOutput AWS API Documentation
2495
+ #
2496
+ class ListRecoveryPointsByBackupVaultOutput < Struct.new(
2497
+ :next_token,
2498
+ :recovery_points)
2499
+ include Aws::Structure
2500
+ end
2501
+
2502
+ # @note When making an API call, you may pass ListRecoveryPointsByResourceInput
2503
+ # data as a hash:
2504
+ #
2505
+ # {
2506
+ # resource_arn: "ARN", # required
2507
+ # next_token: "string",
2508
+ # max_results: 1,
2509
+ # }
2510
+ #
2511
+ # @!attribute [rw] resource_arn
2512
+ # An ARN that uniquely identifies a resource. The format of the ARN
2513
+ # depends on the resource type.
2514
+ # @return [String]
2515
+ #
2516
+ # @!attribute [rw] next_token
2517
+ # The next item following a partial list of returned items. For
2518
+ # example, if a request is made to return `maxResults` number of
2519
+ # items, `NextToken` allows you to return more items in your list
2520
+ # starting at the location pointed to by the next token.
2521
+ # @return [String]
2522
+ #
2523
+ # @!attribute [rw] max_results
2524
+ # The maximum number of items to be returned.
2525
+ # @return [Integer]
2526
+ #
2527
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResourceInput AWS API Documentation
2528
+ #
2529
+ class ListRecoveryPointsByResourceInput < Struct.new(
2530
+ :resource_arn,
2531
+ :next_token,
2532
+ :max_results)
2533
+ include Aws::Structure
2534
+ end
2535
+
2536
+ # @!attribute [rw] next_token
2537
+ # The next item following a partial list of returned items. For
2538
+ # example, if a request is made to return `maxResults` number of
2539
+ # items, `NextToken` allows you to return more items in your list
2540
+ # starting at the location pointed to by the next token.
2541
+ # @return [String]
2542
+ #
2543
+ # @!attribute [rw] recovery_points
2544
+ # An array of objects that contain detailed information about recovery
2545
+ # points of the specified resource type.
2546
+ # @return [Array<Types::RecoveryPointByResource>]
2547
+ #
2548
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResourceOutput AWS API Documentation
2549
+ #
2550
+ class ListRecoveryPointsByResourceOutput < Struct.new(
2551
+ :next_token,
2552
+ :recovery_points)
2553
+ include Aws::Structure
2554
+ end
2555
+
2556
+ # @note When making an API call, you may pass ListRestoreJobsInput
2557
+ # data as a hash:
2558
+ #
2559
+ # {
2560
+ # next_token: "string",
2561
+ # max_results: 1,
2562
+ # }
2563
+ #
2564
+ # @!attribute [rw] next_token
2565
+ # The next item following a partial list of returned items. For
2566
+ # example, if a request is made to return `maxResults` number of
2567
+ # items, `NextToken` allows you to return more items in your list
2568
+ # starting at the location pointed to by the next token.
2569
+ # @return [String]
2570
+ #
2571
+ # @!attribute [rw] max_results
2572
+ # The maximum number of items to be returned.
2573
+ # @return [Integer]
2574
+ #
2575
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobsInput AWS API Documentation
2576
+ #
2577
+ class ListRestoreJobsInput < Struct.new(
2578
+ :next_token,
2579
+ :max_results)
2580
+ include Aws::Structure
2581
+ end
2582
+
2583
+ # @!attribute [rw] restore_jobs
2584
+ # An array of objects that contain detailed information about jobs to
2585
+ # restore saved resources.
2586
+ # @return [Array<Types::RestoreJobsListMember>]
2587
+ #
2588
+ # @!attribute [rw] next_token
2589
+ # The next item following a partial list of returned items. For
2590
+ # example, if a request is made to return `maxResults` number of
2591
+ # items, `NextToken` allows you to return more items in your list
2592
+ # starting at the location pointed to by the next token.
2593
+ # @return [String]
2594
+ #
2595
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobsOutput AWS API Documentation
2596
+ #
2597
+ class ListRestoreJobsOutput < Struct.new(
2598
+ :restore_jobs,
2599
+ :next_token)
2600
+ include Aws::Structure
2601
+ end
2602
+
2603
+ # @note When making an API call, you may pass ListTagsInput
2604
+ # data as a hash:
2605
+ #
2606
+ # {
2607
+ # resource_arn: "ARN", # required
2608
+ # next_token: "string",
2609
+ # max_results: 1,
2610
+ # }
2611
+ #
2612
+ # @!attribute [rw] resource_arn
2613
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
2614
+ # The format of the ARN depends on the type of resource. Valid targets
2615
+ # for `ListTags` are recovery points, backup plans, and backup vaults.
2616
+ # @return [String]
2617
+ #
2618
+ # @!attribute [rw] next_token
2619
+ # The next item following a partial list of returned items. For
2620
+ # example, if a request is made to return `maxResults` number of
2621
+ # items, `NextToken` allows you to return more items in your list
2622
+ # starting at the location pointed to by the next token.
2623
+ # @return [String]
2624
+ #
2625
+ # @!attribute [rw] max_results
2626
+ # The maximum number of items to be returned.
2627
+ # @return [Integer]
2628
+ #
2629
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListTagsInput AWS API Documentation
2630
+ #
2631
+ class ListTagsInput < Struct.new(
2632
+ :resource_arn,
2633
+ :next_token,
2634
+ :max_results)
2635
+ include Aws::Structure
2636
+ end
2637
+
2638
+ # @!attribute [rw] next_token
2639
+ # The next item following a partial list of returned items. For
2640
+ # example, if a request is made to return `maxResults` number of
2641
+ # items, `NextToken` allows you to return more items in your list
2642
+ # starting at the location pointed to by the next token.
2643
+ # @return [String]
2644
+ #
2645
+ # @!attribute [rw] tags
2646
+ # To help organize your resources, you can assign your own metadata to
2647
+ # the resources you create. Each tag is a key-value pair.
2648
+ # @return [Hash<String,String>]
2649
+ #
2650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListTagsOutput AWS API Documentation
2651
+ #
2652
+ class ListTagsOutput < Struct.new(
2653
+ :next_token,
2654
+ :tags)
2655
+ include Aws::Structure
2656
+ end
2657
+
2658
+ # A structure that contains information about a backed-up resource.
2659
+ #
2660
+ # @!attribute [rw] resource_arn
2661
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
2662
+ # The format of the ARN depends on the resource type.
2663
+ # @return [String]
2664
+ #
2665
+ # @!attribute [rw] resource_type
2666
+ # The type of AWS resource; for example, an Amazon Elastic Block Store
2667
+ # (Amazon EBS) volume or an Amazon Relational Database Service (Amazon
2668
+ # RDS) database.
2669
+ # @return [String]
2670
+ #
2671
+ # @!attribute [rw] last_backup_time
2672
+ # The date and time a resource was last backed up, in Unix format and
2673
+ # Coordinated Universal Time (UTC). The value of `LastBackupTime` is
2674
+ # accurate to milliseconds. For example, the value 1516925490.087
2675
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2676
+ # @return [Time]
2677
+ #
2678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ProtectedResource AWS API Documentation
2679
+ #
2680
+ class ProtectedResource < Struct.new(
2681
+ :resource_arn,
2682
+ :resource_type,
2683
+ :last_backup_time)
2684
+ include Aws::Structure
2685
+ end
2686
+
2687
+ # @note When making an API call, you may pass PutBackupVaultAccessPolicyInput
2688
+ # data as a hash:
2689
+ #
2690
+ # {
2691
+ # backup_vault_name: "BackupVaultName", # required
2692
+ # policy: "IAMPolicy",
2693
+ # }
2694
+ #
2695
+ # @!attribute [rw] backup_vault_name
2696
+ # The name of a logical container where backups are stored. Backup
2697
+ # vaults are identified by names that are unique to the account used
2698
+ # to create them and the AWS Region where they are created. They
2699
+ # consist of lowercase letters, numbers, and hyphens.
2700
+ # @return [String]
2701
+ #
2702
+ # @!attribute [rw] policy
2703
+ # The backup vault access policy document in JSON format.
2704
+ # @return [String]
2705
+ #
2706
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultAccessPolicyInput AWS API Documentation
2707
+ #
2708
+ class PutBackupVaultAccessPolicyInput < Struct.new(
2709
+ :backup_vault_name,
2710
+ :policy)
2711
+ include Aws::Structure
2712
+ end
2713
+
2714
+ # @note When making an API call, you may pass PutBackupVaultNotificationsInput
2715
+ # data as a hash:
2716
+ #
2717
+ # {
2718
+ # backup_vault_name: "BackupVaultName", # required
2719
+ # sns_topic_arn: "ARN", # required
2720
+ # backup_vault_events: ["BACKUP_JOB_STARTED"], # required, accepts BACKUP_JOB_STARTED, BACKUP_JOB_COMPLETED, RESTORE_JOB_STARTED, RESTORE_JOB_COMPLETED, RECOVERY_POINT_MODIFIED, BACKUP_PLAN_CREATED, BACKUP_PLAN_MODIFIED
2721
+ # }
2722
+ #
2723
+ # @!attribute [rw] backup_vault_name
2724
+ # The name of a logical container where backups are stored. Backup
2725
+ # vaults are identified by names that are unique to the account used
2726
+ # to create them and the AWS Region where they are created. They
2727
+ # consist of lowercase letters, numbers, and hyphens.
2728
+ # @return [String]
2729
+ #
2730
+ # @!attribute [rw] sns_topic_arn
2731
+ # The Amazon Resource Name (ARN) that specifies the topic for a backup
2732
+ # vault’s events; for example,
2733
+ # `arn:aws:sns:us-west-2:111122223333:MyVaultTopic`.
2734
+ # @return [String]
2735
+ #
2736
+ # @!attribute [rw] backup_vault_events
2737
+ # An array of events that indicate the status of jobs to back up
2738
+ # resources to the backup vault.
2739
+ # @return [Array<String>]
2740
+ #
2741
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultNotificationsInput AWS API Documentation
2742
+ #
2743
+ class PutBackupVaultNotificationsInput < Struct.new(
2744
+ :backup_vault_name,
2745
+ :sns_topic_arn,
2746
+ :backup_vault_events)
2747
+ include Aws::Structure
2748
+ end
2749
+
2750
+ # Contains detailed information about the recovery points stored in a
2751
+ # backup vault.
2752
+ #
2753
+ # @!attribute [rw] recovery_point_arn
2754
+ # An Amazon Resource Name (ARN) that uniquely identifies a recovery
2755
+ # point; for example,
2756
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
2757
+ # @return [String]
2758
+ #
2759
+ # @!attribute [rw] backup_vault_name
2760
+ # The name of a logical container where backups are stored. Backup
2761
+ # vaults are identified by names that are unique to the account used
2762
+ # to create them and the AWS Region where they are created. They
2763
+ # consist of lowercase letters, numbers, and hyphens.
2764
+ # @return [String]
2765
+ #
2766
+ # @!attribute [rw] backup_vault_arn
2767
+ # An ARN that uniquely identifies a backup vault; for example,
2768
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
2769
+ # @return [String]
2770
+ #
2771
+ # @!attribute [rw] resource_arn
2772
+ # An ARN that uniquely identifies a resource. The format of the ARN
2773
+ # depends on the resource type.
2774
+ # @return [String]
2775
+ #
2776
+ # @!attribute [rw] resource_type
2777
+ # The type of AWS resource saved as a recovery point; for example, an
2778
+ # Amazon Elastic Block Store (Amazon EBS) volume or an Amazon
2779
+ # Relational Database Service (Amazon RDS) database.
2780
+ # @return [String]
2781
+ #
2782
+ # @!attribute [rw] created_by
2783
+ # Contains identifying information about the creation of a recovery
2784
+ # point, including the `BackupPlanArn`, `BackupPlanId`,
2785
+ # `BackupPlanVersion`, and `BackupRuleId` of the backup plan that is
2786
+ # used to create it.
2787
+ # @return [Types::RecoveryPointCreator]
2788
+ #
2789
+ # @!attribute [rw] iam_role_arn
2790
+ # Specifies the IAM role ARN used to create the target recovery point;
2791
+ # for example, `arn:aws:iam::123456789012:role/S3Access`.
2792
+ # @return [String]
2793
+ #
2794
+ # @!attribute [rw] status
2795
+ # A status code specifying the state of the recovery point.
2796
+ # @return [String]
2797
+ #
2798
+ # @!attribute [rw] creation_date
2799
+ # The date and time a recovery point is created, in Unix format and
2800
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
2801
+ # accurate to milliseconds. For example, the value 1516925490.087
2802
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2803
+ # @return [Time]
2804
+ #
2805
+ # @!attribute [rw] completion_date
2806
+ # The date and time a job to restore a recovery point is completed, in
2807
+ # Unix format and Coordinated Universal Time (UTC). The value of
2808
+ # `CompletionDate` is accurate to milliseconds. For example, the value
2809
+ # 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
2810
+ # @return [Time]
2811
+ #
2812
+ # @!attribute [rw] backup_size_in_bytes
2813
+ # The size, in bytes, of a backup.
2814
+ # @return [Integer]
2815
+ #
2816
+ # @!attribute [rw] calculated_lifecycle
2817
+ # A `CalculatedLifecycle` object containing `DeleteAt` and
2818
+ # `MoveToColdStorageAt` timestamps.
2819
+ # @return [Types::CalculatedLifecycle]
2820
+ #
2821
+ # @!attribute [rw] lifecycle
2822
+ # The lifecycle defines when a protected resource is transitioned to
2823
+ # cold storage and when it expires. AWS Backup transitions and expires
2824
+ # backups automatically according to the lifecycle that you define.
2825
+ #
2826
+ # Backups transitioned to cold storage must be stored in cold storage
2827
+ # for a minimum of 90 days. Therefore, the “expire after days” setting
2828
+ # must be 90 days greater than the “transition to cold after days”
2829
+ # setting. The “transition to cold after days” setting cannot be
2830
+ # changed after a backup has been transitioned to cold.
2831
+ # @return [Types::Lifecycle]
2832
+ #
2833
+ # @!attribute [rw] encryption_key_arn
2834
+ # The server-side encryption key that is used to protect your backups;
2835
+ # for example,
2836
+ # `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`.
2837
+ # @return [String]
2838
+ #
2839
+ # @!attribute [rw] is_encrypted
2840
+ # A Boolean value that is returned as `TRUE` if the specified recovery
2841
+ # point is encrypted, or `FALSE` if the recovery point is not
2842
+ # encrypted.
2843
+ # @return [Boolean]
2844
+ #
2845
+ # @!attribute [rw] last_restore_time
2846
+ # The date and time a recovery point was last restored, in Unix format
2847
+ # and Coordinated Universal Time (UTC). The value of `LastRestoreTime`
2848
+ # is accurate to milliseconds. For example, the value 1516925490.087
2849
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2850
+ # @return [Time]
2851
+ #
2852
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RecoveryPointByBackupVault AWS API Documentation
2853
+ #
2854
+ class RecoveryPointByBackupVault < Struct.new(
2855
+ :recovery_point_arn,
2856
+ :backup_vault_name,
2857
+ :backup_vault_arn,
2858
+ :resource_arn,
2859
+ :resource_type,
2860
+ :created_by,
2861
+ :iam_role_arn,
2862
+ :status,
2863
+ :creation_date,
2864
+ :completion_date,
2865
+ :backup_size_in_bytes,
2866
+ :calculated_lifecycle,
2867
+ :lifecycle,
2868
+ :encryption_key_arn,
2869
+ :is_encrypted,
2870
+ :last_restore_time)
2871
+ include Aws::Structure
2872
+ end
2873
+
2874
+ # Contains detailed information about a saved recovery point.
2875
+ #
2876
+ # @!attribute [rw] recovery_point_arn
2877
+ # An Amazon Resource Name (ARN) that uniquely identifies a recovery
2878
+ # point; for example,
2879
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
2880
+ # @return [String]
2881
+ #
2882
+ # @!attribute [rw] creation_date
2883
+ # The date and time a recovery point is created, in Unix format and
2884
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
2885
+ # accurate to milliseconds. For example, the value 1516925490.087
2886
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2887
+ # @return [Time]
2888
+ #
2889
+ # @!attribute [rw] status
2890
+ # A status code specifying the state of the recovery point.
2891
+ # @return [String]
2892
+ #
2893
+ # @!attribute [rw] encryption_key_arn
2894
+ # The server-side encryption key that is used to protect your backups;
2895
+ # for example,
2896
+ # `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`.
2897
+ # @return [String]
2898
+ #
2899
+ # @!attribute [rw] backup_size_bytes
2900
+ # The size, in bytes, of a backup.
2901
+ # @return [Integer]
2902
+ #
2903
+ # @!attribute [rw] backup_vault_name
2904
+ # The name of a logical container where backups are stored. Backup
2905
+ # vaults are identified by names that are unique to the account used
2906
+ # to create them and the AWS Region where they are created. They
2907
+ # consist of lowercase letters, numbers, and hyphens.
2908
+ # @return [String]
2909
+ #
2910
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RecoveryPointByResource AWS API Documentation
2911
+ #
2912
+ class RecoveryPointByResource < Struct.new(
2913
+ :recovery_point_arn,
2914
+ :creation_date,
2915
+ :status,
2916
+ :encryption_key_arn,
2917
+ :backup_size_bytes,
2918
+ :backup_vault_name)
2919
+ include Aws::Structure
2920
+ end
2921
+
2922
+ # Contains information about the backup plan and rule that AWS Backup
2923
+ # used to initiate the recovery point backup.
2924
+ #
2925
+ # @!attribute [rw] backup_plan_id
2926
+ # Uniquely identifies a backup plan.
2927
+ # @return [String]
2928
+ #
2929
+ # @!attribute [rw] backup_plan_arn
2930
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
2931
+ # plan; for example,
2932
+ # `arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50`.
2933
+ # @return [String]
2934
+ #
2935
+ # @!attribute [rw] backup_plan_version
2936
+ # Version IDs are unique, randomly generated, Unicode, UTF-8 encoded
2937
+ # strings that are at most 1,024 bytes long. They cannot be edited.
2938
+ # @return [String]
2939
+ #
2940
+ # @!attribute [rw] backup_rule_id
2941
+ # Uniquely identifies a rule used to schedule the backup of a
2942
+ # selection of resources.
2943
+ # @return [String]
2944
+ #
2945
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RecoveryPointCreator AWS API Documentation
2946
+ #
2947
+ class RecoveryPointCreator < Struct.new(
2948
+ :backup_plan_id,
2949
+ :backup_plan_arn,
2950
+ :backup_plan_version,
2951
+ :backup_rule_id)
2952
+ include Aws::Structure
2953
+ end
2954
+
2955
+ # Contains metadata about a restore job.
2956
+ #
2957
+ # @!attribute [rw] restore_job_id
2958
+ # Uniquely identifies the job that restores a recovery point.
2959
+ # @return [String]
2960
+ #
2961
+ # @!attribute [rw] recovery_point_arn
2962
+ # An ARN that uniquely identifies a recovery point; for example,
2963
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
2964
+ # @return [String]
2965
+ #
2966
+ # @!attribute [rw] creation_date
2967
+ # The date and time a restore job is created, in Unix format and
2968
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
2969
+ # accurate to milliseconds. For example, the value 1516925490.087
2970
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2971
+ # @return [Time]
2972
+ #
2973
+ # @!attribute [rw] completion_date
2974
+ # The date and time a job to restore a recovery point is completed, in
2975
+ # Unix format and Coordinated Universal Time (UTC). The value of
2976
+ # `CompletionDate` is accurate to milliseconds. For example, the value
2977
+ # 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
2978
+ # @return [Time]
2979
+ #
2980
+ # @!attribute [rw] status
2981
+ # A status code specifying the state of the job initiated by AWS
2982
+ # Backup to restore a recovery point.
2983
+ # @return [String]
2984
+ #
2985
+ # @!attribute [rw] status_message
2986
+ # A detailed message explaining the status of the job to restore a
2987
+ # recovery point.
2988
+ # @return [String]
2989
+ #
2990
+ # @!attribute [rw] percent_done
2991
+ # Contains an estimated percentage complete of a job at the time the
2992
+ # job status was queried.
2993
+ # @return [String]
2994
+ #
2995
+ # @!attribute [rw] backup_size_in_bytes
2996
+ # The size, in bytes, of the restored resource.
2997
+ # @return [Integer]
2998
+ #
2999
+ # @!attribute [rw] iam_role_arn
3000
+ # Specifies the IAM role ARN used to create the target recovery point;
3001
+ # for example, `arn:aws:iam::123456789012:role/S3Access`.
3002
+ # @return [String]
3003
+ #
3004
+ # @!attribute [rw] expected_completion_time_minutes
3005
+ # The amount of time in minutes that a job restoring a recovery point
3006
+ # is expected to take.
3007
+ # @return [Integer]
3008
+ #
3009
+ # @!attribute [rw] created_resource_arn
3010
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
3011
+ # The format of the ARN depends on the resource type.
3012
+ # @return [String]
3013
+ #
3014
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RestoreJobsListMember AWS API Documentation
3015
+ #
3016
+ class RestoreJobsListMember < Struct.new(
3017
+ :restore_job_id,
3018
+ :recovery_point_arn,
3019
+ :creation_date,
3020
+ :completion_date,
3021
+ :status,
3022
+ :status_message,
3023
+ :percent_done,
3024
+ :backup_size_in_bytes,
3025
+ :iam_role_arn,
3026
+ :expected_completion_time_minutes,
3027
+ :created_resource_arn)
3028
+ include Aws::Structure
3029
+ end
3030
+
3031
+ # @note When making an API call, you may pass StartBackupJobInput
3032
+ # data as a hash:
3033
+ #
3034
+ # {
3035
+ # backup_vault_name: "BackupVaultName", # required
3036
+ # resource_arn: "ARN", # required
3037
+ # iam_role_arn: "IAMRoleArn", # required
3038
+ # idempotency_token: "string",
3039
+ # start_window_minutes: 1,
3040
+ # complete_window_minutes: 1,
3041
+ # lifecycle: {
3042
+ # move_to_cold_storage_after_days: 1,
3043
+ # delete_after_days: 1,
3044
+ # },
3045
+ # recovery_point_tags: {
3046
+ # "TagKey" => "TagValue",
3047
+ # },
3048
+ # }
3049
+ #
3050
+ # @!attribute [rw] backup_vault_name
3051
+ # The name of a logical container where backups are stored. Backup
3052
+ # vaults are identified by names that are unique to the account used
3053
+ # to create them and the AWS Region where they are created. They
3054
+ # consist of lowercase letters, numbers, and hyphens.
3055
+ # @return [String]
3056
+ #
3057
+ # @!attribute [rw] resource_arn
3058
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
3059
+ # The format of the ARN depends on the resource type.
3060
+ # @return [String]
3061
+ #
3062
+ # @!attribute [rw] iam_role_arn
3063
+ # Specifies the IAM role ARN used to create the target recovery point;
3064
+ # for example, `arn:aws:iam::123456789012:role/S3Access`.
3065
+ # @return [String]
3066
+ #
3067
+ # @!attribute [rw] idempotency_token
3068
+ # A customer chosen string that can be used to distinguish between
3069
+ # calls to `StartBackupJob`. Idempotency tokens time out after one
3070
+ # hour. Therefore, if you call `StartBackupJob` multiple times with
3071
+ # the same idempotency token within one hour, AWS Backup recognizes
3072
+ # that you are requesting only one backup job and initiates only one.
3073
+ # If you change the idempotency token for each call, AWS Backup
3074
+ # recognizes that you are requesting to start multiple backups.
3075
+ # @return [String]
3076
+ #
3077
+ # @!attribute [rw] start_window_minutes
3078
+ # The amount of time in minutes before beginning a backup.
3079
+ # @return [Integer]
3080
+ #
3081
+ # @!attribute [rw] complete_window_minutes
3082
+ # The amount of time AWS Backup attempts a backup before canceling the
3083
+ # job and returning an error.
3084
+ # @return [Integer]
3085
+ #
3086
+ # @!attribute [rw] lifecycle
3087
+ # The lifecycle defines when a protected resource is transitioned to
3088
+ # cold storage and when it expires. AWS Backup will transition and
3089
+ # expire backups automatically according to the lifecycle that you
3090
+ # define.
3091
+ #
3092
+ # Backups transitioned to cold storage must be stored in cold storage
3093
+ # for a minimum of 90 days. Therefore, the “expire after days” setting
3094
+ # must be 90 days greater than the “transition to cold after days”
3095
+ # setting. The “transition to cold after days” setting cannot be
3096
+ # changed after a backup has been transitioned to cold.
3097
+ # @return [Types::Lifecycle]
3098
+ #
3099
+ # @!attribute [rw] recovery_point_tags
3100
+ # To help organize your resources, you can assign your own metadata to
3101
+ # the resources that you create. Each tag is a key-value pair.
3102
+ # @return [Hash<String,String>]
3103
+ #
3104
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJobInput AWS API Documentation
3105
+ #
3106
+ class StartBackupJobInput < Struct.new(
3107
+ :backup_vault_name,
3108
+ :resource_arn,
3109
+ :iam_role_arn,
3110
+ :idempotency_token,
3111
+ :start_window_minutes,
3112
+ :complete_window_minutes,
3113
+ :lifecycle,
3114
+ :recovery_point_tags)
3115
+ include Aws::Structure
3116
+ end
3117
+
3118
+ # @!attribute [rw] backup_job_id
3119
+ # Uniquely identifies a request to AWS Backup to back up a resource.
3120
+ # @return [String]
3121
+ #
3122
+ # @!attribute [rw] recovery_point_arn
3123
+ # An ARN that uniquely identifies a recovery point; for example,
3124
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
3125
+ # @return [String]
3126
+ #
3127
+ # @!attribute [rw] creation_date
3128
+ # The date and time that a backup job is started, in Unix format and
3129
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
3130
+ # accurate to milliseconds. For example, the value 1516925490.087
3131
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
3132
+ # @return [Time]
3133
+ #
3134
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJobOutput AWS API Documentation
3135
+ #
3136
+ class StartBackupJobOutput < Struct.new(
3137
+ :backup_job_id,
3138
+ :recovery_point_arn,
3139
+ :creation_date)
3140
+ include Aws::Structure
3141
+ end
3142
+
3143
+ # @note When making an API call, you may pass StartRestoreJobInput
3144
+ # data as a hash:
3145
+ #
3146
+ # {
3147
+ # recovery_point_arn: "ARN", # required
3148
+ # metadata: { # required
3149
+ # "MetadataKey" => "MetadataValue",
3150
+ # },
3151
+ # iam_role_arn: "IAMRoleArn", # required
3152
+ # idempotency_token: "string",
3153
+ # resource_type: "ResourceType",
3154
+ # }
3155
+ #
3156
+ # @!attribute [rw] recovery_point_arn
3157
+ # An ARN that uniquely identifies a recovery point; for example,
3158
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
3159
+ # @return [String]
3160
+ #
3161
+ # @!attribute [rw] metadata
3162
+ # A set of metadata key-value pairs. Lists the metadata that the
3163
+ # recovery point was created with.
3164
+ # @return [Hash<String,String>]
3165
+ #
3166
+ # @!attribute [rw] iam_role_arn
3167
+ # The Amazon Resource Name (ARN) of the IAM role that AWS Backup uses
3168
+ # to create the target recovery point; for example,
3169
+ # `arn:aws:iam::123456789012:role/S3Access`.
3170
+ # @return [String]
3171
+ #
3172
+ # @!attribute [rw] idempotency_token
3173
+ # A customer chosen string that can be used to distinguish between
3174
+ # calls to `StartRestoreJob`. Idempotency tokens time out after one
3175
+ # hour. Therefore, if you call `StartRestoreJob` multiple times with
3176
+ # the same idempotency token within one hour, AWS Backup recognizes
3177
+ # that you are requesting only one restore job and initiates only one.
3178
+ # If you change the idempotency token for each call, AWS Backup
3179
+ # recognizes that you are requesting to start multiple restores.
3180
+ # @return [String]
3181
+ #
3182
+ # @!attribute [rw] resource_type
3183
+ # Starts a job to restore a recovery point for one of the following
3184
+ # resources:
3185
+ #
3186
+ # * `EBS` for Amazon Elastic Block Store
3187
+ #
3188
+ # * `SGW` for AWS Storage Gateway
3189
+ #
3190
+ # * `RDS` for Amazon Relational Database Service
3191
+ #
3192
+ # * `DDB` for Amazon DynamoDB
3193
+ #
3194
+ # * `EFS` for Amazon Elastic File System
3195
+ # @return [String]
3196
+ #
3197
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartRestoreJobInput AWS API Documentation
3198
+ #
3199
+ class StartRestoreJobInput < Struct.new(
3200
+ :recovery_point_arn,
3201
+ :metadata,
3202
+ :iam_role_arn,
3203
+ :idempotency_token,
3204
+ :resource_type)
3205
+ include Aws::Structure
3206
+ end
3207
+
3208
+ # @!attribute [rw] restore_job_id
3209
+ # Uniquely identifies the job that restores a recovery point.
3210
+ # @return [String]
3211
+ #
3212
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartRestoreJobOutput AWS API Documentation
3213
+ #
3214
+ class StartRestoreJobOutput < Struct.new(
3215
+ :restore_job_id)
3216
+ include Aws::Structure
3217
+ end
3218
+
3219
+ # @note When making an API call, you may pass StopBackupJobInput
3220
+ # data as a hash:
3221
+ #
3222
+ # {
3223
+ # backup_job_id: "string", # required
3224
+ # }
3225
+ #
3226
+ # @!attribute [rw] backup_job_id
3227
+ # Uniquely identifies a request to AWS Backup to back up a resource.
3228
+ # @return [String]
3229
+ #
3230
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StopBackupJobInput AWS API Documentation
3231
+ #
3232
+ class StopBackupJobInput < Struct.new(
3233
+ :backup_job_id)
3234
+ include Aws::Structure
3235
+ end
3236
+
3237
+ # @note When making an API call, you may pass TagResourceInput
3238
+ # data as a hash:
3239
+ #
3240
+ # {
3241
+ # resource_arn: "ARN", # required
3242
+ # tags: { # required
3243
+ # "TagKey" => "TagValue",
3244
+ # },
3245
+ # }
3246
+ #
3247
+ # @!attribute [rw] resource_arn
3248
+ # An ARN that uniquely identifies a resource. The format of the ARN
3249
+ # depends on the type of the tagged resource.
3250
+ # @return [String]
3251
+ #
3252
+ # @!attribute [rw] tags
3253
+ # Key-value pairs that are used to help organize your resources. You
3254
+ # can assign your own metadata to the resources you create.
3255
+ # @return [Hash<String,String>]
3256
+ #
3257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/TagResourceInput AWS API Documentation
3258
+ #
3259
+ class TagResourceInput < Struct.new(
3260
+ :resource_arn,
3261
+ :tags)
3262
+ include Aws::Structure
3263
+ end
3264
+
3265
+ # @note When making an API call, you may pass UntagResourceInput
3266
+ # data as a hash:
3267
+ #
3268
+ # {
3269
+ # resource_arn: "ARN", # required
3270
+ # tag_key_list: ["string"], # required
3271
+ # }
3272
+ #
3273
+ # @!attribute [rw] resource_arn
3274
+ # An ARN that uniquely identifies a resource. The format of the ARN
3275
+ # depends on the type of the tagged resource.
3276
+ # @return [String]
3277
+ #
3278
+ # @!attribute [rw] tag_key_list
3279
+ # A list of keys to identify which key-value tags to remove from a
3280
+ # resource.
3281
+ # @return [Array<String>]
3282
+ #
3283
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UntagResourceInput AWS API Documentation
3284
+ #
3285
+ class UntagResourceInput < Struct.new(
3286
+ :resource_arn,
3287
+ :tag_key_list)
3288
+ include Aws::Structure
3289
+ end
3290
+
3291
+ # @note When making an API call, you may pass UpdateBackupPlanInput
3292
+ # data as a hash:
3293
+ #
3294
+ # {
3295
+ # backup_plan_id: "string", # required
3296
+ # backup_plan: { # required
3297
+ # backup_plan_name: "BackupPlanName", # required
3298
+ # rules: [ # required
3299
+ # {
3300
+ # rule_name: "BackupRuleName", # required
3301
+ # target_backup_vault_name: "BackupVaultName", # required
3302
+ # schedule_expression: "CronExpression",
3303
+ # start_window_minutes: 1,
3304
+ # completion_window_minutes: 1,
3305
+ # lifecycle: {
3306
+ # move_to_cold_storage_after_days: 1,
3307
+ # delete_after_days: 1,
3308
+ # },
3309
+ # recovery_point_tags: {
3310
+ # "TagKey" => "TagValue",
3311
+ # },
3312
+ # },
3313
+ # ],
3314
+ # },
3315
+ # }
3316
+ #
3317
+ # @!attribute [rw] backup_plan_id
3318
+ # Uniquely identifies a backup plan.
3319
+ # @return [String]
3320
+ #
3321
+ # @!attribute [rw] backup_plan
3322
+ # Specifies the body of a backup plan. Includes a `BackupPlanName` and
3323
+ # one or more sets of `Rules`.
3324
+ # @return [Types::BackupPlanInput]
3325
+ #
3326
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateBackupPlanInput AWS API Documentation
3327
+ #
3328
+ class UpdateBackupPlanInput < Struct.new(
3329
+ :backup_plan_id,
3330
+ :backup_plan)
3331
+ include Aws::Structure
3332
+ end
3333
+
3334
+ # @!attribute [rw] backup_plan_id
3335
+ # Uniquely identifies a backup plan.
3336
+ # @return [String]
3337
+ #
3338
+ # @!attribute [rw] backup_plan_arn
3339
+ # An Amazon Resource Name (ARN) that uniquely identifies a backup
3340
+ # plan; for example,
3341
+ # `arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50`.
3342
+ # @return [String]
3343
+ #
3344
+ # @!attribute [rw] creation_date
3345
+ # The date and time a backup plan is updated, in Unix format and
3346
+ # Coordinated Universal Time (UTC). The value of `CreationDate` is
3347
+ # accurate to milliseconds. For example, the value 1516925490.087
3348
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
3349
+ # @return [Time]
3350
+ #
3351
+ # @!attribute [rw] version_id
3352
+ # Unique, randomly generated, Unicode, UTF-8 encoded strings that are
3353
+ # at most 1,024 bytes long. Version Ids cannot be edited.
3354
+ # @return [String]
3355
+ #
3356
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateBackupPlanOutput AWS API Documentation
3357
+ #
3358
+ class UpdateBackupPlanOutput < Struct.new(
3359
+ :backup_plan_id,
3360
+ :backup_plan_arn,
3361
+ :creation_date,
3362
+ :version_id)
3363
+ include Aws::Structure
3364
+ end
3365
+
3366
+ # @note When making an API call, you may pass UpdateRecoveryPointLifecycleInput
3367
+ # data as a hash:
3368
+ #
3369
+ # {
3370
+ # backup_vault_name: "BackupVaultName", # required
3371
+ # recovery_point_arn: "ARN", # required
3372
+ # lifecycle: {
3373
+ # move_to_cold_storage_after_days: 1,
3374
+ # delete_after_days: 1,
3375
+ # },
3376
+ # }
3377
+ #
3378
+ # @!attribute [rw] backup_vault_name
3379
+ # The name of a logical container where backups are stored. Backup
3380
+ # vaults are identified by names that are unique to the account used
3381
+ # to create them and the AWS Region where they are created. They
3382
+ # consist of lowercase letters, numbers, and hyphens.
3383
+ # @return [String]
3384
+ #
3385
+ # @!attribute [rw] recovery_point_arn
3386
+ # An Amazon Resource Name (ARN) that uniquely identifies a recovery
3387
+ # point; for example,
3388
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
3389
+ # @return [String]
3390
+ #
3391
+ # @!attribute [rw] lifecycle
3392
+ # The lifecycle defines when a protected resource is transitioned to
3393
+ # cold storage and when it expires. AWS Backup transitions and expires
3394
+ # backups automatically according to the lifecycle that you define.
3395
+ #
3396
+ # Backups transitioned to cold storage must be stored in cold storage
3397
+ # for a minimum of 90 days. Therefore, the “expire after days” setting
3398
+ # must be 90 days greater than the “transition to cold after days”
3399
+ # setting. The “transition to cold after days” setting cannot be
3400
+ # changed after a backup has been transitioned to cold.
3401
+ # @return [Types::Lifecycle]
3402
+ #
3403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRecoveryPointLifecycleInput AWS API Documentation
3404
+ #
3405
+ class UpdateRecoveryPointLifecycleInput < Struct.new(
3406
+ :backup_vault_name,
3407
+ :recovery_point_arn,
3408
+ :lifecycle)
3409
+ include Aws::Structure
3410
+ end
3411
+
3412
+ # @!attribute [rw] backup_vault_arn
3413
+ # An ARN that uniquely identifies a backup vault; for example,
3414
+ # `arn:aws:backup:us-east-1:123456789012:vault:aBackupVault`.
3415
+ # @return [String]
3416
+ #
3417
+ # @!attribute [rw] recovery_point_arn
3418
+ # An Amazon Resource Name (ARN) that uniquely identifies a recovery
3419
+ # point; for example,
3420
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
3421
+ # @return [String]
3422
+ #
3423
+ # @!attribute [rw] lifecycle
3424
+ # The lifecycle defines when a protected resource is transitioned to
3425
+ # cold storage and when it expires. AWS Backup transitions and expires
3426
+ # backups automatically according to the lifecycle that you define.
3427
+ #
3428
+ # Backups transitioned to cold storage must be stored in cold storage
3429
+ # for a minimum of 90 days. Therefore, the “expire after days” setting
3430
+ # must be 90 days greater than the “transition to cold after days”
3431
+ # setting. The “transition to cold after days” setting cannot be
3432
+ # changed after a backup has been transitioned to cold.
3433
+ # @return [Types::Lifecycle]
3434
+ #
3435
+ # @!attribute [rw] calculated_lifecycle
3436
+ # A `CalculatedLifecycle` object containing `DeleteAt` and
3437
+ # `MoveToColdStorageAt` timestamps.
3438
+ # @return [Types::CalculatedLifecycle]
3439
+ #
3440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRecoveryPointLifecycleOutput AWS API Documentation
3441
+ #
3442
+ class UpdateRecoveryPointLifecycleOutput < Struct.new(
3443
+ :backup_vault_arn,
3444
+ :recovery_point_arn,
3445
+ :lifecycle,
3446
+ :calculated_lifecycle)
3447
+ include Aws::Structure
3448
+ end
3449
+
3450
+ end
3451
+ end