aws-sdk-backup 1.29.0 → 1.33.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -25,8 +25,9 @@ module Aws::Backup
25
25
  # @!attribute [rw] resource_type
26
26
  # Specifies an object containing resource type and backup options. The
27
27
  # only supported resource type is Amazon EC2 instances with Windows
28
- # VSS. For an CloudFormation example, see the [sample CloudFormation
29
- # template to enable Windows VSS][1] in the *AWS Backup User Guide*.
28
+ # Volume Shadow Copy Service (VSS). For a CloudFormation example, see
29
+ # the [sample CloudFormation template to enable Windows VSS][1] in the
30
+ # *Backup User Guide*.
30
31
  #
31
32
  # Valid values: `EC2`.
32
33
  #
@@ -41,11 +42,11 @@ module Aws::Backup
41
42
  #
42
43
  # Valid values:
43
44
  #
44
- # Set to `"WindowsVSS":"enabled"` to enable the WindowsVSS backup
45
- # option and create a VSS Windows backup.
45
+ # Set to `"WindowsVSS":"enabled"` to enable the `WindowsVSS` backup
46
+ # option and create a Windows VSS backup.
46
47
  #
47
48
  # Set to `"WindowsVSS":"disabled"` to create a regular backup. The
48
- # WindowsVSS option is not enabled by default.
49
+ # `WindowsVSS` option is not enabled by default.
49
50
  #
50
51
  # If you specify an invalid option, you get an
51
52
  # `InvalidParameterValueException` exception.
@@ -107,14 +108,14 @@ module Aws::Backup
107
108
  # @return [String]
108
109
  #
109
110
  # @!attribute [rw] backup_job_id
110
- # Uniquely identifies a request to AWS Backup to back up a resource.
111
+ # Uniquely identifies a request to Backup to back up a resource.
111
112
  # @return [String]
112
113
  #
113
114
  # @!attribute [rw] backup_vault_name
114
115
  # The name of a logical container where backups are stored. Backup
115
116
  # vaults are identified by names that are unique to the account used
116
- # to create them and the AWS Region where they are created. They
117
- # consist of lowercase letters, numbers, and hyphens.
117
+ # to create them and the Amazon Web Services Region where they are
118
+ # created. They consist of lowercase letters, numbers, and hyphens.
118
119
  # @return [String]
119
120
  #
120
121
  # @!attribute [rw] backup_vault_arn
@@ -199,10 +200,11 @@ module Aws::Backup
199
200
  # @return [Time]
200
201
  #
201
202
  # @!attribute [rw] resource_type
202
- # The type of AWS resource to be backed up; for example, an Amazon
203
- # Elastic Block Store (Amazon EBS) volume or an Amazon Relational
204
- # Database Service (Amazon RDS) database. For VSS Windows backups, the
205
- # only supported resource type is Amazon EC2.
203
+ # The type of Amazon Web Services resource to be backed up; for
204
+ # example, an Amazon Elastic Block Store (Amazon EBS) volume or an
205
+ # Amazon Relational Database Service (Amazon RDS) database. For
206
+ # Windows Volume Shadow Copy Service (VSS) backups, the only supported
207
+ # resource type is Amazon EC2.
206
208
  # @return [String]
207
209
  #
208
210
  # @!attribute [rw] bytes_transferred
@@ -212,11 +214,12 @@ module Aws::Backup
212
214
  #
213
215
  # @!attribute [rw] backup_options
214
216
  # Specifies the backup option for a selected resource. This option is
215
- # only available for Windows VSS backup jobs.
217
+ # only available for Windows Volume Shadow Copy Service (VSS) backup
218
+ # jobs.
216
219
  #
217
- # Valid values: Set to `"WindowsVSS”:“enabled"` to enable WindowsVSS
218
- # backup option and create a VSS Windows backup. Set to
219
- # WindowsVSS”:”disabled to create a regular backup. If you specify
220
+ # Valid values: Set to `"WindowsVSS":"enabled"` to enable the
221
+ # `WindowsVSS` backup option and create a Windows VSS backup. Set to
222
+ # `"WindowsVSS":"disabled"` to create a regular backup. If you specify
220
223
  # an invalid option, you get an `InvalidParameterValueException`
221
224
  # exception.
222
225
  # @return [Hash<String,String>]
@@ -255,7 +258,7 @@ module Aws::Backup
255
258
  # Contains an optional backup plan display name and an array of
256
259
  # `BackupRule` objects, each of which specifies a backup rule. Each rule
257
260
  # in a backup plan is a separate scheduled task and can back up a
258
- # different selection of AWS resources.
261
+ # different selection of Amazon Web Services resources.
259
262
  #
260
263
  # @!attribute [rw] backup_plan_name
261
264
  # The display name of a backup plan.
@@ -282,8 +285,7 @@ module Aws::Backup
282
285
 
283
286
  # Contains an optional backup plan display name and an array of
284
287
  # `BackupRule` objects, each of which specifies a backup rule. Each rule
285
- # in a backup plan is a separate scheduled task and can back up a
286
- # different selection of AWS resources.
288
+ # in a backup plan is a separate scheduled task.
287
289
  #
288
290
  # @note When making an API call, you may pass BackupPlanInput
289
291
  # data as a hash:
@@ -337,7 +339,8 @@ module Aws::Backup
337
339
  #
338
340
  # @!attribute [rw] advanced_backup_settings
339
341
  # Specifies a list of `BackupOptions` for each resource type. These
340
- # settings are only available for Windows VSS backup jobs.
342
+ # settings are only available for Windows Volume Shadow Copy Service
343
+ # (VSS) backup jobs.
341
344
  # @return [Array<Types::AdvancedBackupSetting>]
342
345
  #
343
346
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupPlanInput AWS API Documentation
@@ -447,13 +450,13 @@ module Aws::Backup
447
450
  # @!attribute [rw] target_backup_vault_name
448
451
  # The name of a logical container where backups are stored. Backup
449
452
  # vaults are identified by names that are unique to the account used
450
- # to create them and the AWS Region where they are created. They
451
- # consist of lowercase letters, numbers, and hyphens.
453
+ # to create them and the Amazon Web Services Region where they are
454
+ # created. They consist of lowercase letters, numbers, and hyphens.
452
455
  # @return [String]
453
456
  #
454
457
  # @!attribute [rw] schedule_expression
455
- # A CRON expression specifying when AWS Backup initiates a backup job.
456
- # For more information about cron expressions, see [Schedule
458
+ # A cron expression in UTC specifying when Backup initiates a backup
459
+ # job. For more information about cron expressions, see [Schedule
457
460
  # Expressions for Rules][1] in the *Amazon CloudWatch Events User
458
461
  # Guide.*. Prior to specifying a value for this parameter, we
459
462
  # recommend testing your cron expression using one of the many
@@ -471,13 +474,13 @@ module Aws::Backup
471
474
  #
472
475
  # @!attribute [rw] completion_window_minutes
473
476
  # A value in minutes after a backup job is successfully started before
474
- # it must be completed or it will be canceled by AWS Backup. This
475
- # value is optional.
477
+ # it must be completed or it will be canceled by Backup. This value is
478
+ # optional.
476
479
  # @return [Integer]
477
480
  #
478
481
  # @!attribute [rw] lifecycle
479
482
  # The lifecycle defines when a protected resource is transitioned to
480
- # cold storage and when it expires. AWS Backup transitions and expires
483
+ # cold storage and when it expires. Backup transitions and expires
481
484
  # backups automatically according to the lifecycle that you define.
482
485
  #
483
486
  # Backups transitioned to cold storage must be stored in cold storage
@@ -506,10 +509,10 @@ module Aws::Backup
506
509
  # @return [Array<Types::CopyAction>]
507
510
  #
508
511
  # @!attribute [rw] enable_continuous_backup
509
- # Specifies whether AWS Backup creates continuous backups. True causes
510
- # AWS Backup to create continuous backups capable of point-in-time
511
- # restore (PITR). False (or not specified) causes AWS Backup to create
512
- # snapshot backups.
512
+ # Specifies whether Backup creates continuous backups. True causes
513
+ # Backup to create continuous backups capable of point-in-time restore
514
+ # (PITR). False (or not specified) causes Backup to create snapshot
515
+ # backups.
513
516
  # @return [Boolean]
514
517
  #
515
518
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupRule AWS API Documentation
@@ -566,12 +569,13 @@ module Aws::Backup
566
569
  # @!attribute [rw] target_backup_vault_name
567
570
  # The name of a logical container where backups are stored. Backup
568
571
  # vaults are identified by names that are unique to the account used
569
- # to create them and the AWS Region where they are created. They
570
- # consist of lowercase letters, numbers, and hyphens.
572
+ # to create them and the Amazon Web Services Region where they are
573
+ # created. They consist of lowercase letters, numbers, and hyphens.
571
574
  # @return [String]
572
575
  #
573
576
  # @!attribute [rw] schedule_expression
574
- # A CRON expression specifying when AWS Backup initiates a backup job.
577
+ # A CRON expression in UTC specifying when Backup initiates a backup
578
+ # job.
575
579
  # @return [String]
576
580
  #
577
581
  # @!attribute [rw] start_window_minutes
@@ -581,15 +585,14 @@ module Aws::Backup
581
585
  #
582
586
  # @!attribute [rw] completion_window_minutes
583
587
  # A value in minutes after a backup job is successfully started before
584
- # it must be completed or it will be canceled by AWS Backup. This
585
- # value is optional.
588
+ # it must be completed or it will be canceled by Backup. This value is
589
+ # optional.
586
590
  # @return [Integer]
587
591
  #
588
592
  # @!attribute [rw] lifecycle
589
593
  # The lifecycle defines when a protected resource is transitioned to
590
- # cold storage and when it expires. AWS Backup will transition and
591
- # expire backups automatically according to the lifecycle that you
592
- # define.
594
+ # cold storage and when it expires. Backup will transition and expire
595
+ # backups automatically according to the lifecycle that you define.
593
596
  #
594
597
  # Backups transitioned to cold storage must be stored in cold storage
595
598
  # for a minimum of 90 days. Therefore, the “expire after days” setting
@@ -612,10 +615,10 @@ module Aws::Backup
612
615
  # @return [Array<Types::CopyAction>]
613
616
  #
614
617
  # @!attribute [rw] enable_continuous_backup
615
- # Specifies whether AWS Backup creates continuous backups. True causes
616
- # AWS Backup to create continuous backups capable of point-in-time
617
- # restore (PITR). False (or not specified) causes AWS Backup to create
618
- # snapshot backups.
618
+ # Specifies whether Backup creates continuous backups. True causes
619
+ # Backup to create continuous backups capable of point-in-time restore
620
+ # (PITR). False (or not specified) causes Backup to create snapshot
621
+ # backups.
619
622
  # @return [Boolean]
620
623
  #
621
624
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupRuleInput AWS API Documentation
@@ -657,7 +660,7 @@ module Aws::Backup
657
660
  # @return [String]
658
661
  #
659
662
  # @!attribute [rw] iam_role_arn
660
- # The ARN of the IAM role that AWS Backup uses to authenticate when
663
+ # The ARN of the IAM role that Backup uses to authenticate when
661
664
  # backing up the target resource; for example,
662
665
  # `arn:aws:iam::123456789012:role/S3Access`.
663
666
  # @return [String]
@@ -737,8 +740,8 @@ module Aws::Backup
737
740
  # @!attribute [rw] backup_vault_name
738
741
  # The name of a logical container where backups are stored. Backup
739
742
  # vaults are identified by names that are unique to the account used
740
- # to create them and the AWS Region where they are created. They
741
- # consist of lowercase letters, numbers, and hyphens.
743
+ # to create them and the Amazon Web Services Region where they are
744
+ # created. They consist of lowercase letters, numbers, and hyphens.
742
745
  # @return [String]
743
746
  #
744
747
  # @!attribute [rw] backup_vault_arn
@@ -787,7 +790,7 @@ module Aws::Backup
787
790
  # used to specify a lifecycle for a recovery point.
788
791
  #
789
792
  # The lifecycle defines when a protected resource is transitioned to
790
- # cold storage and when it expires. AWS Backup transitions and expires
793
+ # cold storage and when it expires. Backup transitions and expires
791
794
  # backups automatically according to the lifecycle that you define.
792
795
  #
793
796
  # Backups transitioned to cold storage must be stored in cold storage
@@ -857,6 +860,110 @@ module Aws::Backup
857
860
  include Aws::Structure
858
861
  end
859
862
 
863
+ # Backup can't perform the action that you requested until it finishes
864
+ # performing a previous action. Try again later.
865
+ #
866
+ # @!attribute [rw] code
867
+ # @return [String]
868
+ #
869
+ # @!attribute [rw] message
870
+ # @return [String]
871
+ #
872
+ # @!attribute [rw] type
873
+ # @return [String]
874
+ #
875
+ # @!attribute [rw] context
876
+ # @return [String]
877
+ #
878
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ConflictException AWS API Documentation
879
+ #
880
+ class ConflictException < Struct.new(
881
+ :code,
882
+ :message,
883
+ :type,
884
+ :context)
885
+ SENSITIVE = []
886
+ include Aws::Structure
887
+ end
888
+
889
+ # A list of parameters for a control. A control can have zero, one, or
890
+ # more than one parameter. An example of a control with two parameters
891
+ # is: "backup plan frequency is at least `daily` and the retention
892
+ # period is at least `1 year`". The first parameter is `daily`. The
893
+ # second parameter is `1 year`.
894
+ #
895
+ # @note When making an API call, you may pass ControlInputParameter
896
+ # data as a hash:
897
+ #
898
+ # {
899
+ # parameter_name: "ParameterName",
900
+ # parameter_value: "ParameterValue",
901
+ # }
902
+ #
903
+ # @!attribute [rw] parameter_name
904
+ # The name of a parameter, for example, `BackupPlanFrequency`.
905
+ # @return [String]
906
+ #
907
+ # @!attribute [rw] parameter_value
908
+ # The value of parameter, for example, `hourly`.
909
+ # @return [String]
910
+ #
911
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ControlInputParameter AWS API Documentation
912
+ #
913
+ class ControlInputParameter < Struct.new(
914
+ :parameter_name,
915
+ :parameter_value)
916
+ SENSITIVE = []
917
+ include Aws::Structure
918
+ end
919
+
920
+ # A framework consists of one or more controls. Each control has its own
921
+ # control scope. The control scope defines what the control will
922
+ # evaluate. Three examples of control scopes are: a specific backup
923
+ # plan, all backup plans with a specific tag, or all backup plans.
924
+ #
925
+ # <note markdown="1"> To set a control scope that includes all of a particular resource,
926
+ # leave the `ControlScope` empty or do not pass it when calling
927
+ # `CreateFramework`.
928
+ #
929
+ # </note>
930
+ #
931
+ # @note When making an API call, you may pass ControlScope
932
+ # data as a hash:
933
+ #
934
+ # {
935
+ # compliance_resource_ids: ["string"],
936
+ # compliance_resource_types: ["ARN"],
937
+ # tags: {
938
+ # "string" => "string",
939
+ # },
940
+ # }
941
+ #
942
+ # @!attribute [rw] compliance_resource_ids
943
+ # The ID of the only Amazon Web Services resource that you want your
944
+ # control scope to contain.
945
+ # @return [Array<String>]
946
+ #
947
+ # @!attribute [rw] compliance_resource_types
948
+ # Describes whether the control scope includes one or more types of
949
+ # resources, such as `EFS` or `RDS`.
950
+ # @return [Array<String>]
951
+ #
952
+ # @!attribute [rw] tags
953
+ # Describes whether the control scope includes resources with one or
954
+ # more tags. Each tag is a key-value pair.
955
+ # @return [Hash<String,String>]
956
+ #
957
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ControlScope AWS API Documentation
958
+ #
959
+ class ControlScope < Struct.new(
960
+ :compliance_resource_ids,
961
+ :compliance_resource_types,
962
+ :tags)
963
+ SENSITIVE = []
964
+ include Aws::Structure
965
+ end
966
+
860
967
  # The details of the copy operation.
861
968
  #
862
969
  # @note When making an API call, you may pass CopyAction
@@ -936,9 +1043,9 @@ module Aws::Backup
936
1043
  # @return [String]
937
1044
  #
938
1045
  # @!attribute [rw] resource_arn
939
- # The AWS resource to be copied; for example, an Amazon Elastic Block
940
- # Store (Amazon EBS) volume or an Amazon Relational Database Service
941
- # (Amazon RDS) database.
1046
+ # The Amazon Web Services resource to be copied; for example, an
1047
+ # Amazon Elastic Block Store (Amazon EBS) volume or an Amazon
1048
+ # Relational Database Service (Amazon RDS) database.
942
1049
  # @return [String]
943
1050
  #
944
1051
  # @!attribute [rw] creation_date
@@ -974,14 +1081,14 @@ module Aws::Backup
974
1081
  # @return [String]
975
1082
  #
976
1083
  # @!attribute [rw] created_by
977
- # Contains information about the backup plan and rule that AWS Backup
978
- # used to initiate the recovery point backup.
1084
+ # Contains information about the backup plan and rule that Backup used
1085
+ # to initiate the recovery point backup.
979
1086
  # @return [Types::RecoveryPointCreator]
980
1087
  #
981
1088
  # @!attribute [rw] resource_type
982
- # The type of AWS resource to be copied; for example, an Amazon
983
- # Elastic Block Store (Amazon EBS) volume or an Amazon Relational
984
- # Database Service (Amazon RDS) database.
1089
+ # The type of Amazon Web Services resource to be copied; for example,
1090
+ # an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon
1091
+ # Relational Database Service (Amazon RDS) database.
985
1092
  # @return [String]
986
1093
  #
987
1094
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CopyJob AWS API Documentation
@@ -1105,7 +1212,8 @@ module Aws::Backup
1105
1212
  #
1106
1213
  # @!attribute [rw] advanced_backup_settings
1107
1214
  # A list of `BackupOptions` settings for a resource type. This option
1108
- # is only available for Windows VSS backup jobs.
1215
+ # is only available for Windows Volume Shadow Copy Service (VSS)
1216
+ # backup jobs.
1109
1217
  # @return [Array<Types::AdvancedBackupSetting>]
1110
1218
  #
1111
1219
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupPlanOutput AWS API Documentation
@@ -1207,8 +1315,8 @@ module Aws::Backup
1207
1315
  # @!attribute [rw] backup_vault_name
1208
1316
  # The name of a logical container where backups are stored. Backup
1209
1317
  # vaults are identified by names that are unique to the account used
1210
- # to create them and the AWS Region where they are created. They
1211
- # consist of letters, numbers, and hyphens.
1318
+ # to create them and the Amazon Web Services Region where they are
1319
+ # created. They consist of letters, numbers, and hyphens.
1212
1320
  # @return [String]
1213
1321
  #
1214
1322
  # @!attribute [rw] backup_vault_tags
@@ -1269,6 +1377,204 @@ module Aws::Backup
1269
1377
  include Aws::Structure
1270
1378
  end
1271
1379
 
1380
+ # @note When making an API call, you may pass CreateFrameworkInput
1381
+ # data as a hash:
1382
+ #
1383
+ # {
1384
+ # framework_name: "FrameworkName", # required
1385
+ # framework_description: "FrameworkDescription",
1386
+ # framework_controls: [ # required
1387
+ # {
1388
+ # control_name: "ControlName", # required
1389
+ # control_input_parameters: [
1390
+ # {
1391
+ # parameter_name: "ParameterName",
1392
+ # parameter_value: "ParameterValue",
1393
+ # },
1394
+ # ],
1395
+ # control_scope: {
1396
+ # compliance_resource_ids: ["string"],
1397
+ # compliance_resource_types: ["ARN"],
1398
+ # tags: {
1399
+ # "string" => "string",
1400
+ # },
1401
+ # },
1402
+ # },
1403
+ # ],
1404
+ # idempotency_token: "string",
1405
+ # framework_tags: {
1406
+ # "string" => "string",
1407
+ # },
1408
+ # }
1409
+ #
1410
+ # @!attribute [rw] framework_name
1411
+ # The unique name of the framework. The name must be between 1 and 256
1412
+ # characters, starting with a letter, and consisting of letters (a-z,
1413
+ # A-Z), numbers (0-9), and underscores (\_).
1414
+ # @return [String]
1415
+ #
1416
+ # @!attribute [rw] framework_description
1417
+ # An optional description of the framework with a maximum of 1,024
1418
+ # characters.
1419
+ # @return [String]
1420
+ #
1421
+ # @!attribute [rw] framework_controls
1422
+ # A list of the controls that make up the framework. Each control in
1423
+ # the list has a name, input parameters, and scope.
1424
+ # @return [Array<Types::FrameworkControl>]
1425
+ #
1426
+ # @!attribute [rw] idempotency_token
1427
+ # A customer-chosen string that you can use to distinguish between
1428
+ # otherwise identical calls to `CreateFrameworkInput`. Retrying a
1429
+ # successful request with the same idempotency token results in a
1430
+ # success message with no action taken.
1431
+ #
1432
+ # **A suitable default value is auto-generated.** You should normally
1433
+ # not need to pass this option.
1434
+ # @return [String]
1435
+ #
1436
+ # @!attribute [rw] framework_tags
1437
+ # Metadata that you can assign to help organize the frameworks that
1438
+ # you create. Each tag is a key-value pair.
1439
+ # @return [Hash<String,String>]
1440
+ #
1441
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateFrameworkInput AWS API Documentation
1442
+ #
1443
+ class CreateFrameworkInput < Struct.new(
1444
+ :framework_name,
1445
+ :framework_description,
1446
+ :framework_controls,
1447
+ :idempotency_token,
1448
+ :framework_tags)
1449
+ SENSITIVE = []
1450
+ include Aws::Structure
1451
+ end
1452
+
1453
+ # @!attribute [rw] framework_name
1454
+ # The unique name of the framework. The name must be between 1 and 256
1455
+ # characters, starting with a letter, and consisting of letters (a-z,
1456
+ # A-Z), numbers (0-9), and underscores (\_).
1457
+ # @return [String]
1458
+ #
1459
+ # @!attribute [rw] framework_arn
1460
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
1461
+ # The format of the ARN depends on the resource type.
1462
+ # @return [String]
1463
+ #
1464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateFrameworkOutput AWS API Documentation
1465
+ #
1466
+ class CreateFrameworkOutput < Struct.new(
1467
+ :framework_name,
1468
+ :framework_arn)
1469
+ SENSITIVE = []
1470
+ include Aws::Structure
1471
+ end
1472
+
1473
+ # @note When making an API call, you may pass CreateReportPlanInput
1474
+ # data as a hash:
1475
+ #
1476
+ # {
1477
+ # report_plan_name: "ReportPlanName", # required
1478
+ # report_plan_description: "ReportPlanDescription",
1479
+ # report_delivery_channel: { # required
1480
+ # s3_bucket_name: "string", # required
1481
+ # s3_key_prefix: "string",
1482
+ # formats: ["string"],
1483
+ # },
1484
+ # report_setting: { # required
1485
+ # report_template: "string", # required
1486
+ # framework_arns: ["string"],
1487
+ # number_of_frameworks: 1,
1488
+ # },
1489
+ # report_plan_tags: {
1490
+ # "string" => "string",
1491
+ # },
1492
+ # idempotency_token: "string",
1493
+ # }
1494
+ #
1495
+ # @!attribute [rw] report_plan_name
1496
+ # The unique name of the report plan. The name must be between 1 and
1497
+ # 256 characters, starting with a letter, and consisting of letters
1498
+ # (a-z, A-Z), numbers (0-9), and underscores (\_).
1499
+ # @return [String]
1500
+ #
1501
+ # @!attribute [rw] report_plan_description
1502
+ # An optional description of the report plan with a maximum of 1,024
1503
+ # characters.
1504
+ # @return [String]
1505
+ #
1506
+ # @!attribute [rw] report_delivery_channel
1507
+ # A structure that contains information about where and how to deliver
1508
+ # your reports, specifically your Amazon S3 bucket name, S3 key
1509
+ # prefix, and the formats of your reports.
1510
+ # @return [Types::ReportDeliveryChannel]
1511
+ #
1512
+ # @!attribute [rw] report_setting
1513
+ # Identifies the report template for the report. Reports are built
1514
+ # using a report template. The report templates are:
1515
+ #
1516
+ # `RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT |
1517
+ # BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
1518
+ #
1519
+ # If the report template is `RESOURCE_COMPLIANCE_REPORT` or
1520
+ # `CONTROL_COMPLIANCE_REPORT`, this API resource also describes the
1521
+ # report coverage by Amazon Web Services Regions and frameworks.
1522
+ # @return [Types::ReportSetting]
1523
+ #
1524
+ # @!attribute [rw] report_plan_tags
1525
+ # Metadata that you can assign to help organize the report plans that
1526
+ # you create. Each tag is a key-value pair.
1527
+ # @return [Hash<String,String>]
1528
+ #
1529
+ # @!attribute [rw] idempotency_token
1530
+ # A customer-chosen string that you can use to distinguish between
1531
+ # otherwise identical calls to `CreateReportPlanInput`. Retrying a
1532
+ # successful request with the same idempotency token results in a
1533
+ # success message with no action taken.
1534
+ #
1535
+ # **A suitable default value is auto-generated.** You should normally
1536
+ # not need to pass this option.
1537
+ # @return [String]
1538
+ #
1539
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateReportPlanInput AWS API Documentation
1540
+ #
1541
+ class CreateReportPlanInput < Struct.new(
1542
+ :report_plan_name,
1543
+ :report_plan_description,
1544
+ :report_delivery_channel,
1545
+ :report_setting,
1546
+ :report_plan_tags,
1547
+ :idempotency_token)
1548
+ SENSITIVE = []
1549
+ include Aws::Structure
1550
+ end
1551
+
1552
+ # @!attribute [rw] report_plan_name
1553
+ # The unique name of the report plan.
1554
+ # @return [String]
1555
+ #
1556
+ # @!attribute [rw] report_plan_arn
1557
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
1558
+ # The format of the ARN depends on the resource type.
1559
+ # @return [String]
1560
+ #
1561
+ # @!attribute [rw] creation_time
1562
+ # The date and time a backup vault is created, in Unix format and
1563
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
1564
+ # accurate to milliseconds. For example, the value 1516925490.087
1565
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
1566
+ # @return [Time]
1567
+ #
1568
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateReportPlanOutput AWS API Documentation
1569
+ #
1570
+ class CreateReportPlanOutput < Struct.new(
1571
+ :report_plan_name,
1572
+ :report_plan_arn,
1573
+ :creation_time)
1574
+ SENSITIVE = []
1575
+ include Aws::Structure
1576
+ end
1577
+
1272
1578
  # @note When making an API call, you may pass DeleteBackupPlanInput
1273
1579
  # data as a hash:
1274
1580
  #
@@ -1357,8 +1663,8 @@ module Aws::Backup
1357
1663
  # @!attribute [rw] backup_vault_name
1358
1664
  # The name of a logical container where backups are stored. Backup
1359
1665
  # vaults are identified by names that are unique to the account used
1360
- # to create them and the AWS Region where they are created. They
1361
- # consist of lowercase letters, numbers, and hyphens.
1666
+ # to create them and the Amazon Web Services Region where they are
1667
+ # created. They consist of lowercase letters, numbers, and hyphens.
1362
1668
  # @return [String]
1363
1669
  #
1364
1670
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupVaultAccessPolicyInput AWS API Documentation
@@ -1379,8 +1685,8 @@ module Aws::Backup
1379
1685
  # @!attribute [rw] backup_vault_name
1380
1686
  # The name of a logical container where backups are stored. Backup
1381
1687
  # vaults are identified by names that are unique to the account used
1382
- # to create them and the AWS Region where they are created. They
1383
- # consist of lowercase letters, numbers, and hyphens.
1688
+ # to create them and the Amazon Web Services Region where they are
1689
+ # created. They consist of lowercase letters, numbers, and hyphens.
1384
1690
  # @return [String]
1385
1691
  #
1386
1692
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupVaultInput AWS API Documentation
@@ -1413,6 +1719,25 @@ module Aws::Backup
1413
1719
  include Aws::Structure
1414
1720
  end
1415
1721
 
1722
+ # @note When making an API call, you may pass DeleteFrameworkInput
1723
+ # data as a hash:
1724
+ #
1725
+ # {
1726
+ # framework_name: "FrameworkName", # required
1727
+ # }
1728
+ #
1729
+ # @!attribute [rw] framework_name
1730
+ # The unique name of a framework.
1731
+ # @return [String]
1732
+ #
1733
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteFrameworkInput AWS API Documentation
1734
+ #
1735
+ class DeleteFrameworkInput < Struct.new(
1736
+ :framework_name)
1737
+ SENSITIVE = []
1738
+ include Aws::Structure
1739
+ end
1740
+
1416
1741
  # @note When making an API call, you may pass DeleteRecoveryPointInput
1417
1742
  # data as a hash:
1418
1743
  #
@@ -1424,8 +1749,8 @@ module Aws::Backup
1424
1749
  # @!attribute [rw] backup_vault_name
1425
1750
  # The name of a logical container where backups are stored. Backup
1426
1751
  # vaults are identified by names that are unique to the account used
1427
- # to create them and the AWS Region where they are created. They
1428
- # consist of lowercase letters, numbers, and hyphens.
1752
+ # to create them and the Amazon Web Services Region where they are
1753
+ # created. They consist of lowercase letters, numbers, and hyphens.
1429
1754
  # @return [String]
1430
1755
  #
1431
1756
  # @!attribute [rw] recovery_point_arn
@@ -1443,8 +1768,27 @@ module Aws::Backup
1443
1768
  include Aws::Structure
1444
1769
  end
1445
1770
 
1446
- # A dependent AWS service or resource returned an error to the AWS
1447
- # Backup service, and the action cannot be completed.
1771
+ # @note When making an API call, you may pass DeleteReportPlanInput
1772
+ # data as a hash:
1773
+ #
1774
+ # {
1775
+ # report_plan_name: "ReportPlanName", # required
1776
+ # }
1777
+ #
1778
+ # @!attribute [rw] report_plan_name
1779
+ # The unique name of a report plan.
1780
+ # @return [String]
1781
+ #
1782
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteReportPlanInput AWS API Documentation
1783
+ #
1784
+ class DeleteReportPlanInput < Struct.new(
1785
+ :report_plan_name)
1786
+ SENSITIVE = []
1787
+ include Aws::Structure
1788
+ end
1789
+
1790
+ # A dependent Amazon Web Services service or resource returned an error
1791
+ # to the Backup service, and the action cannot be completed.
1448
1792
  #
1449
1793
  # @!attribute [rw] code
1450
1794
  # @return [String]
@@ -1477,7 +1821,7 @@ module Aws::Backup
1477
1821
  # }
1478
1822
  #
1479
1823
  # @!attribute [rw] backup_job_id
1480
- # Uniquely identifies a request to AWS Backup to back up a resource.
1824
+ # Uniquely identifies a request to Backup to back up a resource.
1481
1825
  # @return [String]
1482
1826
  #
1483
1827
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJobInput AWS API Documentation
@@ -1493,14 +1837,14 @@ module Aws::Backup
1493
1837
  # @return [String]
1494
1838
  #
1495
1839
  # @!attribute [rw] backup_job_id
1496
- # Uniquely identifies a request to AWS Backup to back up a resource.
1840
+ # Uniquely identifies a request to Backup to back up a resource.
1497
1841
  # @return [String]
1498
1842
  #
1499
1843
  # @!attribute [rw] backup_vault_name
1500
1844
  # The name of a logical container where backups are stored. Backup
1501
1845
  # vaults are identified by names that are unique to the account used
1502
- # to create them and the AWS Region where they are created. They
1503
- # consist of lowercase letters, numbers, and hyphens.
1846
+ # to create them and the Amazon Web Services Region where they are
1847
+ # created. They consist of lowercase letters, numbers, and hyphens.
1504
1848
  # @return [String]
1505
1849
  #
1506
1850
  # @!attribute [rw] backup_vault_arn
@@ -1563,9 +1907,9 @@ module Aws::Backup
1563
1907
  # @return [Types::RecoveryPointCreator]
1564
1908
  #
1565
1909
  # @!attribute [rw] resource_type
1566
- # The type of AWS resource to be backed up; for example, an Amazon
1567
- # Elastic Block Store (Amazon EBS) volume or an Amazon Relational
1568
- # Database Service (Amazon RDS) database.
1910
+ # The type of Amazon Web Services resource to be backed up; for
1911
+ # example, an Amazon Elastic Block Store (Amazon EBS) volume or an
1912
+ # Amazon Relational Database Service (Amazon RDS) database.
1569
1913
  # @return [String]
1570
1914
  #
1571
1915
  # @!attribute [rw] bytes_transferred
@@ -1599,9 +1943,9 @@ module Aws::Backup
1599
1943
  #
1600
1944
  # @!attribute [rw] backup_type
1601
1945
  # Represents the actual backup type selected for a backup job. For
1602
- # example, if a successful WindowsVSS backup was taken, `BackupType`
1603
- # returns "WindowsVSS". If `BackupType` is empty, then the backup
1604
- # type that was is a regular backup.
1946
+ # example, if a successful Windows Volume Shadow Copy Service (VSS)
1947
+ # backup was taken, `BackupType` returns `"WindowsVSS"`. If
1948
+ # `BackupType` is empty, then the backup type was a regular backup.
1605
1949
  # @return [String]
1606
1950
  #
1607
1951
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJobOutput AWS API Documentation
@@ -1641,8 +1985,8 @@ module Aws::Backup
1641
1985
  # @!attribute [rw] backup_vault_name
1642
1986
  # The name of a logical container where backups are stored. Backup
1643
1987
  # vaults are identified by names that are unique to the account used
1644
- # to create them and the AWS Region where they are created. They
1645
- # consist of lowercase letters, numbers, and hyphens.
1988
+ # to create them and the Amazon Web Services Region where they are
1989
+ # created. They consist of lowercase letters, numbers, and hyphens.
1646
1990
  # @return [String]
1647
1991
  #
1648
1992
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVaultInput AWS API Documentation
@@ -1733,6 +2077,98 @@ module Aws::Backup
1733
2077
  include Aws::Structure
1734
2078
  end
1735
2079
 
2080
+ # @note When making an API call, you may pass DescribeFrameworkInput
2081
+ # data as a hash:
2082
+ #
2083
+ # {
2084
+ # framework_name: "FrameworkName", # required
2085
+ # }
2086
+ #
2087
+ # @!attribute [rw] framework_name
2088
+ # The unique name of a framework.
2089
+ # @return [String]
2090
+ #
2091
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeFrameworkInput AWS API Documentation
2092
+ #
2093
+ class DescribeFrameworkInput < Struct.new(
2094
+ :framework_name)
2095
+ SENSITIVE = []
2096
+ include Aws::Structure
2097
+ end
2098
+
2099
+ # @!attribute [rw] framework_name
2100
+ # The unique name of a framework.
2101
+ # @return [String]
2102
+ #
2103
+ # @!attribute [rw] framework_arn
2104
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
2105
+ # The format of the ARN depends on the resource type.
2106
+ # @return [String]
2107
+ #
2108
+ # @!attribute [rw] framework_description
2109
+ # An optional description of the framework.
2110
+ # @return [String]
2111
+ #
2112
+ # @!attribute [rw] framework_controls
2113
+ # A list of the controls that make up the framework. Each control in
2114
+ # the list has a name, input parameters, and scope.
2115
+ # @return [Array<Types::FrameworkControl>]
2116
+ #
2117
+ # @!attribute [rw] creation_time
2118
+ # The date and time that a framework is created, in Unix format and
2119
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
2120
+ # accurate to milliseconds. For example, the value 1516925490.087
2121
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2122
+ # @return [Time]
2123
+ #
2124
+ # @!attribute [rw] deployment_status
2125
+ # The deployment status of a framework. The statuses are:
2126
+ #
2127
+ # `CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS |
2128
+ # COMPLETED | FAILED`
2129
+ # @return [String]
2130
+ #
2131
+ # @!attribute [rw] framework_status
2132
+ # A framework consists of one or more controls. Each control governs a
2133
+ # resource, such as backup plans, backup selections, backup vaults, or
2134
+ # recovery points. You can also turn Config recording on or off for
2135
+ # each resource. The statuses are:
2136
+ #
2137
+ # * `ACTIVE` when recording is turned on for all resources governed by
2138
+ # the framework.
2139
+ #
2140
+ # * `PARTIALLY_ACTIVE` when recording is turned off for at least one
2141
+ # resource governed by the framework.
2142
+ #
2143
+ # * `INACTIVE` when recording is turned off for all resources governed
2144
+ # by the framework.
2145
+ #
2146
+ # * `UNAVAILABLE` when Backup is unable to validate recording status
2147
+ # at this time.
2148
+ # @return [String]
2149
+ #
2150
+ # @!attribute [rw] idempotency_token
2151
+ # A customer-chosen string that you can use to distinguish between
2152
+ # otherwise identical calls to `DescribeFrameworkOutput`. Retrying a
2153
+ # successful request with the same idempotency token results in a
2154
+ # success message with no action taken.
2155
+ # @return [String]
2156
+ #
2157
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeFrameworkOutput AWS API Documentation
2158
+ #
2159
+ class DescribeFrameworkOutput < Struct.new(
2160
+ :framework_name,
2161
+ :framework_arn,
2162
+ :framework_description,
2163
+ :framework_controls,
2164
+ :creation_time,
2165
+ :deployment_status,
2166
+ :framework_status,
2167
+ :idempotency_token)
2168
+ SENSITIVE = []
2169
+ include Aws::Structure
2170
+ end
2171
+
1736
2172
  # @api private
1737
2173
  #
1738
2174
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeGlobalSettingsInput AWS API Documentation
@@ -1740,16 +2176,15 @@ module Aws::Backup
1740
2176
  class DescribeGlobalSettingsInput < Aws::EmptyStructure; end
1741
2177
 
1742
2178
  # @!attribute [rw] global_settings
1743
- # A list of resources along with the opt-in preferences for the
1744
- # account.
2179
+ # The status of the flag `isCrossAccountBackupEnabled`.
1745
2180
  # @return [Hash<String,String>]
1746
2181
  #
1747
2182
  # @!attribute [rw] last_update_time
1748
- # The date and time that the global settings were last updated. This
1749
- # update is in Unix format and Coordinated Universal Time (UTC). The
1750
- # value of `LastUpdateTime` is accurate to milliseconds. For example,
1751
- # the value 1516925490.087 represents Friday, January 26, 2018
1752
- # 12:11:30.087 AM.
2183
+ # The date and time that the flag `isCrossAccountBackupEnabled` was
2184
+ # last updated. This update is in Unix format and Coordinated
2185
+ # Universal Time (UTC). The value of `LastUpdateTime` is accurate to
2186
+ # milliseconds. For example, the value 1516925490.087 represents
2187
+ # Friday, January 26, 2018 12:11:30.087 AM.
1753
2188
  # @return [Time]
1754
2189
  #
1755
2190
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeGlobalSettingsOutput AWS API Documentation
@@ -1787,8 +2222,8 @@ module Aws::Backup
1787
2222
  # @return [String]
1788
2223
  #
1789
2224
  # @!attribute [rw] resource_type
1790
- # The type of AWS resource saved as a recovery point; for example, an
1791
- # EBS volume or an Amazon RDS database.
2225
+ # The type of Amazon Web Services resource saved as a recovery point;
2226
+ # for example, an Amazon EBS volume or an Amazon RDS database.
1792
2227
  # @return [String]
1793
2228
  #
1794
2229
  # @!attribute [rw] last_backup_time
@@ -1819,8 +2254,8 @@ module Aws::Backup
1819
2254
  # @!attribute [rw] backup_vault_name
1820
2255
  # The name of a logical container where backups are stored. Backup
1821
2256
  # vaults are identified by names that are unique to the account used
1822
- # to create them and the AWS Region where they are created. They
1823
- # consist of lowercase letters, numbers, and hyphens.
2257
+ # to create them and the Amazon Web Services Region where they are
2258
+ # created. They consist of lowercase letters, numbers, and hyphens.
1824
2259
  # @return [String]
1825
2260
  #
1826
2261
  # @!attribute [rw] recovery_point_arn
@@ -1859,8 +2294,8 @@ module Aws::Backup
1859
2294
  # An Amazon Resource Name (ARN) that uniquely identifies the source
1860
2295
  # vault where the resource was originally backed up in; for example,
1861
2296
  # `arn:aws:backup:us-east-1:123456789012:vault:BackupVault`. If the
1862
- # recovery is restored to the same AWS account or Region, this value
1863
- # will be `null`.
2297
+ # recovery is restored to the same Amazon Web Services account or
2298
+ # Region, this value will be `null`.
1864
2299
  # @return [String]
1865
2300
  #
1866
2301
  # @!attribute [rw] resource_arn
@@ -1869,9 +2304,10 @@ module Aws::Backup
1869
2304
  # @return [String]
1870
2305
  #
1871
2306
  # @!attribute [rw] resource_type
1872
- # The type of AWS resource to save as a recovery point; for example,
1873
- # an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon
1874
- # Relational Database Service (Amazon RDS) database.
2307
+ # The type of Amazon Web Services resource to save as a recovery
2308
+ # point; for example, an Amazon Elastic Block Store (Amazon EBS)
2309
+ # volume or an Amazon Relational Database Service (Amazon RDS)
2310
+ # database.
1875
2311
  # @return [String]
1876
2312
  #
1877
2313
  # @!attribute [rw] created_by
@@ -1889,10 +2325,27 @@ module Aws::Backup
1889
2325
  # @!attribute [rw] status
1890
2326
  # A status code specifying the state of the recovery point.
1891
2327
  #
1892
- # <note markdown="1"> A partial status indicates that the recovery point was not
1893
- # successfully re-created and must be retried.
2328
+ # `PARTIAL` status indicates Backup could not create the recovery
2329
+ # point before the backup window closed. To increase your backup plan
2330
+ # window using the API, see [UpdateBackupPlan][1]. You can also
2331
+ # increase your backup plan window using the Console by choosing and
2332
+ # editing your backup plan.
1894
2333
  #
1895
- # </note>
2334
+ # `EXPIRED` status indicates that the recovery point has exceeded its
2335
+ # retention period, but Backup lacks permission or is otherwise unable
2336
+ # to delete it. To manually delete these recovery points, see [ Step
2337
+ # 3: Delete the recovery points][2] in the *Clean up resources*
2338
+ # section of *Getting started*.
2339
+ #
2340
+ #
2341
+ #
2342
+ # [1]: https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateBackupPlan.html
2343
+ # [2]: https://docs.aws.amazon.com/aws-backup/latest/devguide/gs-cleanup-resources.html#cleanup-backups
2344
+ # @return [String]
2345
+ #
2346
+ # @!attribute [rw] status_message
2347
+ # A status message explaining the reason for the recovery point
2348
+ # deletion failure.
1896
2349
  # @return [String]
1897
2350
  #
1898
2351
  # @!attribute [rw] creation_date
@@ -1921,7 +2374,7 @@ module Aws::Backup
1921
2374
  #
1922
2375
  # @!attribute [rw] lifecycle
1923
2376
  # The lifecycle defines when a protected resource is transitioned to
1924
- # cold storage and when it expires. AWS Backup transitions and expires
2377
+ # cold storage and when it expires. Backup transitions and expires
1925
2378
  # backups automatically according to the lifecycle that you define.
1926
2379
  #
1927
2380
  # Backups that are transitioned to cold storage must be stored in cold
@@ -1971,6 +2424,7 @@ module Aws::Backup
1971
2424
  :created_by,
1972
2425
  :iam_role_arn,
1973
2426
  :status,
2427
+ :status_message,
1974
2428
  :creation_date,
1975
2429
  :completion_date,
1976
2430
  :backup_size_in_bytes,
@@ -2003,35 +2457,104 @@ module Aws::Backup
2003
2457
  include Aws::Structure
2004
2458
  end
2005
2459
 
2006
- # @note When making an API call, you may pass DescribeRestoreJobInput
2460
+ # @note When making an API call, you may pass DescribeReportJobInput
2007
2461
  # data as a hash:
2008
2462
  #
2009
2463
  # {
2010
- # restore_job_id: "RestoreJobId", # required
2464
+ # report_job_id: "ReportJobId", # required
2011
2465
  # }
2012
2466
  #
2013
- # @!attribute [rw] restore_job_id
2014
- # Uniquely identifies the job that restores a recovery point.
2467
+ # @!attribute [rw] report_job_id
2468
+ # The identifier of the report job. A unique, randomly generated,
2469
+ # Unicode, UTF-8 encoded string that is at most 1,024 bytes long. The
2470
+ # report job ID cannot be edited.
2015
2471
  # @return [String]
2016
2472
  #
2017
- # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRestoreJobInput AWS API Documentation
2473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeReportJobInput AWS API Documentation
2018
2474
  #
2019
- class DescribeRestoreJobInput < Struct.new(
2020
- :restore_job_id)
2475
+ class DescribeReportJobInput < Struct.new(
2476
+ :report_job_id)
2021
2477
  SENSITIVE = []
2022
2478
  include Aws::Structure
2023
2479
  end
2024
2480
 
2025
- # @!attribute [rw] account_id
2026
- # Returns the account ID that owns the restore job.
2027
- # @return [String]
2481
+ # @!attribute [rw] report_job
2482
+ # A list of information about a report job, including its completion
2483
+ # and creation times, report destination, unique report job ID, Amazon
2484
+ # Resource Name (ARN), report template, status, and status message.
2485
+ # @return [Types::ReportJob]
2028
2486
  #
2029
- # @!attribute [rw] restore_job_id
2030
- # Uniquely identifies the job that restores a recovery point.
2031
- # @return [String]
2487
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeReportJobOutput AWS API Documentation
2032
2488
  #
2033
- # @!attribute [rw] recovery_point_arn
2034
- # An ARN that uniquely identifies a recovery point; for example,
2489
+ class DescribeReportJobOutput < Struct.new(
2490
+ :report_job)
2491
+ SENSITIVE = []
2492
+ include Aws::Structure
2493
+ end
2494
+
2495
+ # @note When making an API call, you may pass DescribeReportPlanInput
2496
+ # data as a hash:
2497
+ #
2498
+ # {
2499
+ # report_plan_name: "ReportPlanName", # required
2500
+ # }
2501
+ #
2502
+ # @!attribute [rw] report_plan_name
2503
+ # The unique name of a report plan.
2504
+ # @return [String]
2505
+ #
2506
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeReportPlanInput AWS API Documentation
2507
+ #
2508
+ class DescribeReportPlanInput < Struct.new(
2509
+ :report_plan_name)
2510
+ SENSITIVE = []
2511
+ include Aws::Structure
2512
+ end
2513
+
2514
+ # @!attribute [rw] report_plan
2515
+ # Returns details about the report plan that is specified by its name.
2516
+ # These details include the report plan's Amazon Resource Name (ARN),
2517
+ # description, settings, delivery channel, deployment status, creation
2518
+ # time, and last attempted and successful run times.
2519
+ # @return [Types::ReportPlan]
2520
+ #
2521
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeReportPlanOutput AWS API Documentation
2522
+ #
2523
+ class DescribeReportPlanOutput < Struct.new(
2524
+ :report_plan)
2525
+ SENSITIVE = []
2526
+ include Aws::Structure
2527
+ end
2528
+
2529
+ # @note When making an API call, you may pass DescribeRestoreJobInput
2530
+ # data as a hash:
2531
+ #
2532
+ # {
2533
+ # restore_job_id: "RestoreJobId", # required
2534
+ # }
2535
+ #
2536
+ # @!attribute [rw] restore_job_id
2537
+ # Uniquely identifies the job that restores a recovery point.
2538
+ # @return [String]
2539
+ #
2540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRestoreJobInput AWS API Documentation
2541
+ #
2542
+ class DescribeRestoreJobInput < Struct.new(
2543
+ :restore_job_id)
2544
+ SENSITIVE = []
2545
+ include Aws::Structure
2546
+ end
2547
+
2548
+ # @!attribute [rw] account_id
2549
+ # Returns the account ID that owns the restore job.
2550
+ # @return [String]
2551
+ #
2552
+ # @!attribute [rw] restore_job_id
2553
+ # Uniquely identifies the job that restores a recovery point.
2554
+ # @return [String]
2555
+ #
2556
+ # @!attribute [rw] recovery_point_arn
2557
+ # An ARN that uniquely identifies a recovery point; for example,
2035
2558
  # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
2036
2559
  # @return [String]
2037
2560
  #
@@ -2051,7 +2574,7 @@ module Aws::Backup
2051
2574
  # @return [Time]
2052
2575
  #
2053
2576
  # @!attribute [rw] status
2054
- # Status code specifying the state of the job that is initiated by AWS
2577
+ # Status code specifying the state of the job that is initiated by
2055
2578
  # Backup to restore a recovery point.
2056
2579
  # @return [String]
2057
2580
  #
@@ -2118,12 +2641,12 @@ module Aws::Backup
2118
2641
  # }
2119
2642
  #
2120
2643
  # @!attribute [rw] backup_vault_name
2121
- # The unique name of an AWS Backup vault. Required.
2644
+ # The unique name of an Backup vault.
2122
2645
  # @return [String]
2123
2646
  #
2124
2647
  # @!attribute [rw] recovery_point_arn
2125
- # An Amazon Resource Name (ARN) that uniquely identifies an AWS Backup
2126
- # recovery point. Required.
2648
+ # An Amazon Resource Name (ARN) that uniquely identifies an Backup
2649
+ # recovery point.
2127
2650
  # @return [String]
2128
2651
  #
2129
2652
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DisassociateRecoveryPointInput AWS API Documentation
@@ -2171,6 +2694,105 @@ module Aws::Backup
2171
2694
  include Aws::Structure
2172
2695
  end
2173
2696
 
2697
+ # Contains detailed information about a framework. Frameworks contain
2698
+ # controls, which evaluate and report on your backup events and
2699
+ # resources. Frameworks generate daily compliance results.
2700
+ #
2701
+ # @!attribute [rw] framework_name
2702
+ # The unique name of a framework. This name is between 1 and 256
2703
+ # characters, starting with a letter, and consisting of letters (a-z,
2704
+ # A-Z), numbers (0-9), and underscores (\_).
2705
+ # @return [String]
2706
+ #
2707
+ # @!attribute [rw] framework_arn
2708
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
2709
+ # The format of the ARN depends on the resource type.
2710
+ # @return [String]
2711
+ #
2712
+ # @!attribute [rw] framework_description
2713
+ # An optional description of the framework with a maximum 1,024
2714
+ # characters.
2715
+ # @return [String]
2716
+ #
2717
+ # @!attribute [rw] number_of_controls
2718
+ # The number of controls contained by the framework.
2719
+ # @return [Integer]
2720
+ #
2721
+ # @!attribute [rw] creation_time
2722
+ # The date and time that a framework is created, in Unix format and
2723
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
2724
+ # accurate to milliseconds. For example, the value 1516925490.087
2725
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2726
+ # @return [Time]
2727
+ #
2728
+ # @!attribute [rw] deployment_status
2729
+ # The deployment status of a framework. The statuses are:
2730
+ #
2731
+ # `CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS |
2732
+ # COMPLETED | FAILED`
2733
+ # @return [String]
2734
+ #
2735
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/Framework AWS API Documentation
2736
+ #
2737
+ class Framework < Struct.new(
2738
+ :framework_name,
2739
+ :framework_arn,
2740
+ :framework_description,
2741
+ :number_of_controls,
2742
+ :creation_time,
2743
+ :deployment_status)
2744
+ SENSITIVE = []
2745
+ include Aws::Structure
2746
+ end
2747
+
2748
+ # Contains detailed information about all of the controls of a
2749
+ # framework. Each framework must contain at least one control.
2750
+ #
2751
+ # @note When making an API call, you may pass FrameworkControl
2752
+ # data as a hash:
2753
+ #
2754
+ # {
2755
+ # control_name: "ControlName", # required
2756
+ # control_input_parameters: [
2757
+ # {
2758
+ # parameter_name: "ParameterName",
2759
+ # parameter_value: "ParameterValue",
2760
+ # },
2761
+ # ],
2762
+ # control_scope: {
2763
+ # compliance_resource_ids: ["string"],
2764
+ # compliance_resource_types: ["ARN"],
2765
+ # tags: {
2766
+ # "string" => "string",
2767
+ # },
2768
+ # },
2769
+ # }
2770
+ #
2771
+ # @!attribute [rw] control_name
2772
+ # The name of a control. This name is between 1 and 256 characters.
2773
+ # @return [String]
2774
+ #
2775
+ # @!attribute [rw] control_input_parameters
2776
+ # A list of `ParameterName` and `ParameterValue` pairs.
2777
+ # @return [Array<Types::ControlInputParameter>]
2778
+ #
2779
+ # @!attribute [rw] control_scope
2780
+ # The scope of a control. The control scope defines what the control
2781
+ # will evaluate. Three examples of control scopes are: a specific
2782
+ # backup plan, all backup plans with a specific tag, or all backup
2783
+ # plans. For more information, see `ControlScope`.
2784
+ # @return [Types::ControlScope]
2785
+ #
2786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/FrameworkControl AWS API Documentation
2787
+ #
2788
+ class FrameworkControl < Struct.new(
2789
+ :control_name,
2790
+ :control_input_parameters,
2791
+ :control_scope)
2792
+ SENSITIVE = []
2793
+ include Aws::Structure
2794
+ end
2795
+
2174
2796
  # @note When making an API call, you may pass GetBackupPlanFromJSONInput
2175
2797
  # data as a hash:
2176
2798
  #
@@ -2405,8 +3027,8 @@ module Aws::Backup
2405
3027
  # @!attribute [rw] backup_vault_name
2406
3028
  # The name of a logical container where backups are stored. Backup
2407
3029
  # vaults are identified by names that are unique to the account used
2408
- # to create them and the AWS Region where they are created. They
2409
- # consist of lowercase letters, numbers, and hyphens.
3030
+ # to create them and the Amazon Web Services Region where they are
3031
+ # created. They consist of lowercase letters, numbers, and hyphens.
2410
3032
  # @return [String]
2411
3033
  #
2412
3034
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupVaultAccessPolicyInput AWS API Documentation
@@ -2454,8 +3076,8 @@ module Aws::Backup
2454
3076
  # @!attribute [rw] backup_vault_name
2455
3077
  # The name of a logical container where backups are stored. Backup
2456
3078
  # vaults are identified by names that are unique to the account used
2457
- # to create them and the AWS Region where they are created. They
2458
- # consist of lowercase letters, numbers, and hyphens.
3079
+ # to create them and the Amazon Web Services Region where they are
3080
+ # created. They consist of lowercase letters, numbers, and hyphens.
2459
3081
  # @return [String]
2460
3082
  #
2461
3083
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupVaultNotificationsInput AWS API Documentation
@@ -2512,8 +3134,8 @@ module Aws::Backup
2512
3134
  # @!attribute [rw] backup_vault_name
2513
3135
  # The name of a logical container where backups are stored. Backup
2514
3136
  # vaults are identified by names that are unique to the account used
2515
- # to create them and the AWS Region where they are created. They
2516
- # consist of lowercase letters, numbers, and hyphens.
3137
+ # to create them and the Amazon Web Services Region where they are
3138
+ # created. They consist of lowercase letters, numbers, and hyphens.
2517
3139
  # @return [String]
2518
3140
  #
2519
3141
  # @!attribute [rw] recovery_point_arn
@@ -2558,7 +3180,10 @@ module Aws::Backup
2558
3180
  end
2559
3181
 
2560
3182
  # @!attribute [rw] resource_types
2561
- # Contains a string with the supported AWS resource types:
3183
+ # Contains a string with the supported Amazon Web Services resource
3184
+ # types:
3185
+ #
3186
+ # * `Aurora` for Amazon Aurora
2562
3187
  #
2563
3188
  # * `DynamoDB` for Amazon DynamoDB
2564
3189
  #
@@ -2568,11 +3193,11 @@ module Aws::Backup
2568
3193
  #
2569
3194
  # * `EFS` for Amazon Elastic File System
2570
3195
  #
2571
- # * `RDS` for Amazon Relational Database Service
3196
+ # * `FSX` for Amazon FSx
2572
3197
  #
2573
- # * `Aurora` for Amazon Aurora
3198
+ # * `RDS` for Amazon Relational Database Service
2574
3199
  #
2575
- # * `Storage Gateway` for AWS Storage Gateway
3200
+ # * `Storage Gateway` for Storage Gateway
2576
3201
  # @return [Array<String>]
2577
3202
  #
2578
3203
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetSupportedResourceTypesOutput AWS API Documentation
@@ -2635,7 +3260,7 @@ module Aws::Backup
2635
3260
  include Aws::Structure
2636
3261
  end
2637
3262
 
2638
- # AWS Backup is already performing an action on this recovery point. It
3263
+ # Backup is already performing an action on this recovery point. It
2639
3264
  # can't perform the action you requested until the first action
2640
3265
  # finishes. Try again later.
2641
3266
  #
@@ -2766,8 +3391,9 @@ module Aws::Backup
2766
3391
  # @!attribute [rw] by_backup_vault_name
2767
3392
  # Returns only backup jobs that will be stored in the specified backup
2768
3393
  # vault. Backup vaults are identified by names that are unique to the
2769
- # account used to create them and the AWS Region where they are
2770
- # created. They consist of lowercase letters, numbers, and hyphens.
3394
+ # account used to create them and the Amazon Web Services Region where
3395
+ # they are created. They consist of lowercase letters, numbers, and
3396
+ # hyphens.
2771
3397
  # @return [String]
2772
3398
  #
2773
3399
  # @!attribute [rw] by_created_before
@@ -2794,14 +3420,14 @@ module Aws::Backup
2794
3420
  #
2795
3421
  # * `Aurora` for Amazon Aurora
2796
3422
  #
2797
- # * `Storage Gateway` for AWS Storage Gateway
3423
+ # * `Storage Gateway` for Storage Gateway
2798
3424
  # @return [String]
2799
3425
  #
2800
3426
  # @!attribute [rw] by_account_id
2801
3427
  # The account ID to list the jobs from. Returns only backup jobs
2802
3428
  # associated with the specified account ID.
2803
3429
  #
2804
- # If used from an AWS Organizations management account, passing `*`
3430
+ # If used from an Organizations management account, passing `*`
2805
3431
  # returns all jobs across the organization.
2806
3432
  # @return [String]
2807
3433
  #
@@ -3166,7 +3792,7 @@ module Aws::Backup
3166
3792
  #
3167
3793
  # * `Aurora` for Amazon Aurora
3168
3794
  #
3169
- # * `Storage Gateway` for AWS Storage Gateway
3795
+ # * `Storage Gateway` for Storage Gateway
3170
3796
  # @return [String]
3171
3797
  #
3172
3798
  # @!attribute [rw] by_destination_vault_arn
@@ -3217,6 +3843,55 @@ module Aws::Backup
3217
3843
  include Aws::Structure
3218
3844
  end
3219
3845
 
3846
+ # @note When making an API call, you may pass ListFrameworksInput
3847
+ # data as a hash:
3848
+ #
3849
+ # {
3850
+ # max_results: 1,
3851
+ # next_token: "string",
3852
+ # }
3853
+ #
3854
+ # @!attribute [rw] max_results
3855
+ # The number of desired results from 1 to 1000. Optional. If
3856
+ # unspecified, the query will return 1 MB of data.
3857
+ # @return [Integer]
3858
+ #
3859
+ # @!attribute [rw] next_token
3860
+ # An identifier that was returned from the previous call to this
3861
+ # operation, which can be used to return the next set of items in the
3862
+ # list.
3863
+ # @return [String]
3864
+ #
3865
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListFrameworksInput AWS API Documentation
3866
+ #
3867
+ class ListFrameworksInput < Struct.new(
3868
+ :max_results,
3869
+ :next_token)
3870
+ SENSITIVE = []
3871
+ include Aws::Structure
3872
+ end
3873
+
3874
+ # @!attribute [rw] frameworks
3875
+ # A list of frameworks with details for each framework, including the
3876
+ # framework name, Amazon Resource Name (ARN), description, number of
3877
+ # controls, creation time, and deployment status.
3878
+ # @return [Array<Types::Framework>]
3879
+ #
3880
+ # @!attribute [rw] next_token
3881
+ # An identifier that was returned from the previous call to this
3882
+ # operation, which can be used to return the next set of items in the
3883
+ # list.
3884
+ # @return [String]
3885
+ #
3886
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListFrameworksOutput AWS API Documentation
3887
+ #
3888
+ class ListFrameworksOutput < Struct.new(
3889
+ :frameworks,
3890
+ :next_token)
3891
+ SENSITIVE = []
3892
+ include Aws::Structure
3893
+ end
3894
+
3220
3895
  # @note When making an API call, you may pass ListProtectedResourcesInput
3221
3896
  # data as a hash:
3222
3897
  #
@@ -3246,9 +3921,9 @@ module Aws::Backup
3246
3921
  end
3247
3922
 
3248
3923
  # @!attribute [rw] results
3249
- # An array of resources successfully backed up by AWS Backup including
3250
- # the time the resource was saved, an Amazon Resource Name (ARN) of
3251
- # the resource, and a resource type.
3924
+ # An array of resources successfully backed up by Backup including the
3925
+ # time the resource was saved, an Amazon Resource Name (ARN) of the
3926
+ # resource, and a resource type.
3252
3927
  # @return [Array<Types::ProtectedResource>]
3253
3928
  #
3254
3929
  # @!attribute [rw] next_token
@@ -3284,8 +3959,13 @@ module Aws::Backup
3284
3959
  # @!attribute [rw] backup_vault_name
3285
3960
  # The name of a logical container where backups are stored. Backup
3286
3961
  # vaults are identified by names that are unique to the account used
3287
- # to create them and the AWS Region where they are created. They
3288
- # consist of lowercase letters, numbers, and hyphens.
3962
+ # to create them and the Amazon Web Services Region where they are
3963
+ # created. They consist of lowercase letters, numbers, and hyphens.
3964
+ #
3965
+ # <note markdown="1"> Backup vault name might not be available when a supported service
3966
+ # creates the backup.
3967
+ #
3968
+ # </note>
3289
3969
  # @return [String]
3290
3970
  #
3291
3971
  # @!attribute [rw] next_token
@@ -3382,6 +4062,10 @@ module Aws::Backup
3382
4062
  #
3383
4063
  # @!attribute [rw] max_results
3384
4064
  # The maximum number of items to be returned.
4065
+ #
4066
+ # <note markdown="1"> Amazon RDS requires a value of at least 20.
4067
+ #
4068
+ # </note>
3385
4069
  # @return [Integer]
3386
4070
  #
3387
4071
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResourceInput AWS API Documentation
@@ -3404,6 +4088,11 @@ module Aws::Backup
3404
4088
  # @!attribute [rw] recovery_points
3405
4089
  # An array of objects that contain detailed information about recovery
3406
4090
  # points of the specified resource type.
4091
+ #
4092
+ # <note markdown="1"> Only Amazon EFS and Amazon EC2 recovery points return
4093
+ # BackupVaultName.
4094
+ #
4095
+ # </note>
3407
4096
  # @return [Array<Types::RecoveryPointByResource>]
3408
4097
  #
3409
4098
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResourceOutput AWS API Documentation
@@ -3415,6 +4104,137 @@ module Aws::Backup
3415
4104
  include Aws::Structure
3416
4105
  end
3417
4106
 
4107
+ # @note When making an API call, you may pass ListReportJobsInput
4108
+ # data as a hash:
4109
+ #
4110
+ # {
4111
+ # by_report_plan_name: "ReportPlanName",
4112
+ # by_creation_before: Time.now,
4113
+ # by_creation_after: Time.now,
4114
+ # by_status: "string",
4115
+ # max_results: 1,
4116
+ # next_token: "string",
4117
+ # }
4118
+ #
4119
+ # @!attribute [rw] by_report_plan_name
4120
+ # Returns only report jobs with the specified report plan name.
4121
+ # @return [String]
4122
+ #
4123
+ # @!attribute [rw] by_creation_before
4124
+ # Returns only report jobs that were created before the date and time
4125
+ # specified in Unix format and Coordinated Universal Time (UTC). For
4126
+ # example, the value 1516925490 represents Friday, January 26, 2018
4127
+ # 12:11:30 AM.
4128
+ # @return [Time]
4129
+ #
4130
+ # @!attribute [rw] by_creation_after
4131
+ # Returns only report jobs that were created after the date and time
4132
+ # specified in Unix format and Coordinated Universal Time (UTC). For
4133
+ # example, the value 1516925490 represents Friday, January 26, 2018
4134
+ # 12:11:30 AM.
4135
+ # @return [Time]
4136
+ #
4137
+ # @!attribute [rw] by_status
4138
+ # Returns only report jobs that are in the specified status. The
4139
+ # statuses are:
4140
+ #
4141
+ # `CREATED | RUNNING | COMPLETED | FAILED`
4142
+ # @return [String]
4143
+ #
4144
+ # @!attribute [rw] max_results
4145
+ # The number of desired results from 1 to 1000. Optional. If
4146
+ # unspecified, the query will return 1 MB of data.
4147
+ # @return [Integer]
4148
+ #
4149
+ # @!attribute [rw] next_token
4150
+ # An identifier that was returned from the previous call to this
4151
+ # operation, which can be used to return the next set of items in the
4152
+ # list.
4153
+ # @return [String]
4154
+ #
4155
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportJobsInput AWS API Documentation
4156
+ #
4157
+ class ListReportJobsInput < Struct.new(
4158
+ :by_report_plan_name,
4159
+ :by_creation_before,
4160
+ :by_creation_after,
4161
+ :by_status,
4162
+ :max_results,
4163
+ :next_token)
4164
+ SENSITIVE = []
4165
+ include Aws::Structure
4166
+ end
4167
+
4168
+ # @!attribute [rw] report_jobs
4169
+ # Details about your report jobs in JSON format.
4170
+ # @return [Array<Types::ReportJob>]
4171
+ #
4172
+ # @!attribute [rw] next_token
4173
+ # An identifier that was returned from the previous call to this
4174
+ # operation, which can be used to return the next set of items in the
4175
+ # list.
4176
+ # @return [String]
4177
+ #
4178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportJobsOutput AWS API Documentation
4179
+ #
4180
+ class ListReportJobsOutput < Struct.new(
4181
+ :report_jobs,
4182
+ :next_token)
4183
+ SENSITIVE = []
4184
+ include Aws::Structure
4185
+ end
4186
+
4187
+ # @note When making an API call, you may pass ListReportPlansInput
4188
+ # data as a hash:
4189
+ #
4190
+ # {
4191
+ # max_results: 1,
4192
+ # next_token: "string",
4193
+ # }
4194
+ #
4195
+ # @!attribute [rw] max_results
4196
+ # The number of desired results from 1 to 1000. Optional. If
4197
+ # unspecified, the query will return 1 MB of data.
4198
+ # @return [Integer]
4199
+ #
4200
+ # @!attribute [rw] next_token
4201
+ # An identifier that was returned from the previous call to this
4202
+ # operation, which can be used to return the next set of items in the
4203
+ # list.
4204
+ # @return [String]
4205
+ #
4206
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportPlansInput AWS API Documentation
4207
+ #
4208
+ class ListReportPlansInput < Struct.new(
4209
+ :max_results,
4210
+ :next_token)
4211
+ SENSITIVE = []
4212
+ include Aws::Structure
4213
+ end
4214
+
4215
+ # @!attribute [rw] report_plans
4216
+ # A list of your report plans with detailed information for each plan.
4217
+ # This information includes the Amazon Resource Name (ARN), report
4218
+ # plan name, description, settings, delivery channel, deployment
4219
+ # status, creation time, and last times the report plan attempted to
4220
+ # and successfully ran.
4221
+ # @return [Array<Types::ReportPlan>]
4222
+ #
4223
+ # @!attribute [rw] next_token
4224
+ # An identifier that was returned from the previous call to this
4225
+ # operation, which can be used to return the next set of items in the
4226
+ # list.
4227
+ # @return [String]
4228
+ #
4229
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportPlansOutput AWS API Documentation
4230
+ #
4231
+ class ListReportPlansOutput < Struct.new(
4232
+ :report_plans,
4233
+ :next_token)
4234
+ SENSITIVE = []
4235
+ include Aws::Structure
4236
+ end
4237
+
3418
4238
  # @note When making an API call, you may pass ListRestoreJobsInput
3419
4239
  # data as a hash:
3420
4240
  #
@@ -3581,10 +4401,11 @@ module Aws::Backup
3581
4401
  # @return [String]
3582
4402
  #
3583
4403
  # @!attribute [rw] resource_type
3584
- # The type of AWS resource; for example, an Amazon Elastic Block Store
3585
- # (Amazon EBS) volume or an Amazon Relational Database Service (Amazon
3586
- # RDS) database. For VSS Windows backups, the only supported resource
3587
- # type is Amazon EC2.
4404
+ # The type of Amazon Web Services resource; for example, an Amazon
4405
+ # Elastic Block Store (Amazon EBS) volume or an Amazon Relational
4406
+ # Database Service (Amazon RDS) database. For Windows Volume Shadow
4407
+ # Copy Service (VSS) backups, the only supported resource type is
4408
+ # Amazon EC2.
3588
4409
  # @return [String]
3589
4410
  #
3590
4411
  # @!attribute [rw] last_backup_time
@@ -3615,8 +4436,8 @@ module Aws::Backup
3615
4436
  # @!attribute [rw] backup_vault_name
3616
4437
  # The name of a logical container where backups are stored. Backup
3617
4438
  # vaults are identified by names that are unique to the account used
3618
- # to create them and the AWS Region where they are created. They
3619
- # consist of lowercase letters, numbers, and hyphens.
4439
+ # to create them and the Amazon Web Services Region where they are
4440
+ # created. They consist of lowercase letters, numbers, and hyphens.
3620
4441
  # @return [String]
3621
4442
  #
3622
4443
  # @!attribute [rw] policy
@@ -3644,8 +4465,8 @@ module Aws::Backup
3644
4465
  # @!attribute [rw] backup_vault_name
3645
4466
  # The name of a logical container where backups are stored. Backup
3646
4467
  # vaults are identified by names that are unique to the account used
3647
- # to create them and the AWS Region where they are created. They
3648
- # consist of lowercase letters, numbers, and hyphens.
4468
+ # to create them and the Amazon Web Services Region where they are
4469
+ # created. They consist of lowercase letters, numbers, and hyphens.
3649
4470
  # @return [String]
3650
4471
  #
3651
4472
  # @!attribute [rw] sns_topic_arn
@@ -3657,6 +4478,22 @@ module Aws::Backup
3657
4478
  # @!attribute [rw] backup_vault_events
3658
4479
  # An array of events that indicate the status of jobs to back up
3659
4480
  # resources to the backup vault.
4481
+ #
4482
+ # <note markdown="1"> The following events are supported:
4483
+ #
4484
+ # `BACKUP_JOB_STARTED`, `BACKUP_JOB_COMPLETED`,
4485
+ #
4486
+ # `COPY_JOB_STARTED`, `COPY_JOB_SUCCESSFUL`, `COPY_JOB_FAILED`,
4487
+ #
4488
+ # `RESTORE_JOB_STARTED`, `RESTORE_JOB_COMPLETED`, and
4489
+ # `RECOVERY_POINT_MODIFIED`.
4490
+ #
4491
+ # To find failed backup jobs, use `BACKUP_JOB_COMPLETED` and filter
4492
+ # using event metadata.
4493
+ #
4494
+ # Other events in the following list are deprecated.
4495
+ #
4496
+ # </note>
3660
4497
  # @return [Array<String>]
3661
4498
  #
3662
4499
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultNotificationsInput AWS API Documentation
@@ -3681,8 +4518,8 @@ module Aws::Backup
3681
4518
  # @!attribute [rw] backup_vault_name
3682
4519
  # The name of a logical container where backups are stored. Backup
3683
4520
  # vaults are identified by names that are unique to the account used
3684
- # to create them and the AWS Region where they are created. They
3685
- # consist of lowercase letters, numbers, and hyphens.
4521
+ # to create them and the Amazon Web Services Region where they are
4522
+ # created. They consist of lowercase letters, numbers, and hyphens.
3686
4523
  # @return [String]
3687
4524
  #
3688
4525
  # @!attribute [rw] backup_vault_arn
@@ -3702,10 +4539,11 @@ module Aws::Backup
3702
4539
  # @return [String]
3703
4540
  #
3704
4541
  # @!attribute [rw] resource_type
3705
- # The type of AWS resource saved as a recovery point; for example, an
3706
- # Amazon Elastic Block Store (Amazon EBS) volume or an Amazon
3707
- # Relational Database Service (Amazon RDS) database. For VSS Windows
3708
- # backups, the only supported resource type is Amazon EC2.
4542
+ # The type of Amazon Web Services resource saved as a recovery point;
4543
+ # for example, an Amazon Elastic Block Store (Amazon EBS) volume or an
4544
+ # Amazon Relational Database Service (Amazon RDS) database. For
4545
+ # Windows Volume Shadow Copy Service (VSS) backups, the only supported
4546
+ # resource type is Amazon EC2.
3709
4547
  # @return [String]
3710
4548
  #
3711
4549
  # @!attribute [rw] created_by
@@ -3724,6 +4562,11 @@ module Aws::Backup
3724
4562
  # A status code specifying the state of the recovery point.
3725
4563
  # @return [String]
3726
4564
  #
4565
+ # @!attribute [rw] status_message
4566
+ # A message explaining the reason of the recovery point deletion
4567
+ # failure.
4568
+ # @return [String]
4569
+ #
3727
4570
  # @!attribute [rw] creation_date
3728
4571
  # The date and time a recovery point is created, in Unix format and
3729
4572
  # Coordinated Universal Time (UTC). The value of `CreationDate` is
@@ -3749,7 +4592,7 @@ module Aws::Backup
3749
4592
  #
3750
4593
  # @!attribute [rw] lifecycle
3751
4594
  # The lifecycle defines when a protected resource is transitioned to
3752
- # cold storage and when it expires. AWS Backup transitions and expires
4595
+ # cold storage and when it expires. Backup transitions and expires
3753
4596
  # backups automatically according to the lifecycle that you define.
3754
4597
  #
3755
4598
  # Backups transitioned to cold storage must be stored in cold storage
@@ -3793,6 +4636,7 @@ module Aws::Backup
3793
4636
  :created_by,
3794
4637
  :iam_role_arn,
3795
4638
  :status,
4639
+ :status_message,
3796
4640
  :creation_date,
3797
4641
  :completion_date,
3798
4642
  :backup_size_in_bytes,
@@ -3824,6 +4668,11 @@ module Aws::Backup
3824
4668
  # A status code specifying the state of the recovery point.
3825
4669
  # @return [String]
3826
4670
  #
4671
+ # @!attribute [rw] status_message
4672
+ # A message explaining the reason of the recovery point deletion
4673
+ # failure.
4674
+ # @return [String]
4675
+ #
3827
4676
  # @!attribute [rw] encryption_key_arn
3828
4677
  # The server-side encryption key that is used to protect your backups;
3829
4678
  # for example,
@@ -3837,8 +4686,8 @@ module Aws::Backup
3837
4686
  # @!attribute [rw] backup_vault_name
3838
4687
  # The name of a logical container where backups are stored. Backup
3839
4688
  # vaults are identified by names that are unique to the account used
3840
- # to create them and the AWS Region where they are created. They
3841
- # consist of lowercase letters, numbers, and hyphens.
4689
+ # to create them and the Amazon Web Services Region where they are
4690
+ # created. They consist of lowercase letters, numbers, and hyphens.
3842
4691
  # @return [String]
3843
4692
  #
3844
4693
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RecoveryPointByResource AWS API Documentation
@@ -3847,6 +4696,7 @@ module Aws::Backup
3847
4696
  :recovery_point_arn,
3848
4697
  :creation_date,
3849
4698
  :status,
4699
+ :status_message,
3850
4700
  :encryption_key_arn,
3851
4701
  :backup_size_bytes,
3852
4702
  :backup_vault_name)
@@ -3854,8 +4704,8 @@ module Aws::Backup
3854
4704
  include Aws::Structure
3855
4705
  end
3856
4706
 
3857
- # Contains information about the backup plan and rule that AWS Backup
3858
- # used to initiate the recovery point backup.
4707
+ # Contains information about the backup plan and rule that Backup used
4708
+ # to initiate the recovery point backup.
3859
4709
  #
3860
4710
  # @!attribute [rw] backup_plan_id
3861
4711
  # Uniquely identifies a backup plan.
@@ -3888,6 +4738,256 @@ module Aws::Backup
3888
4738
  include Aws::Structure
3889
4739
  end
3890
4740
 
4741
+ # Contains information from your report plan about where to deliver your
4742
+ # reports, specifically your Amazon S3 bucket name, S3 key prefix, and
4743
+ # the formats of your reports.
4744
+ #
4745
+ # @note When making an API call, you may pass ReportDeliveryChannel
4746
+ # data as a hash:
4747
+ #
4748
+ # {
4749
+ # s3_bucket_name: "string", # required
4750
+ # s3_key_prefix: "string",
4751
+ # formats: ["string"],
4752
+ # }
4753
+ #
4754
+ # @!attribute [rw] s3_bucket_name
4755
+ # The unique name of the S3 bucket that receives your reports.
4756
+ # @return [String]
4757
+ #
4758
+ # @!attribute [rw] s3_key_prefix
4759
+ # The prefix for where Backup Audit Manager delivers your reports to
4760
+ # Amazon S3. The prefix is this part of the following path:
4761
+ # s3://your-bucket-name/`prefix`/Backup/us-west-2/year/month/day/report-name.
4762
+ # If not specified, there is no prefix.
4763
+ # @return [String]
4764
+ #
4765
+ # @!attribute [rw] formats
4766
+ # A list of the format of your reports: `CSV`, `JSON`, or both. If not
4767
+ # specified, the default format is `CSV`.
4768
+ # @return [Array<String>]
4769
+ #
4770
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportDeliveryChannel AWS API Documentation
4771
+ #
4772
+ class ReportDeliveryChannel < Struct.new(
4773
+ :s3_bucket_name,
4774
+ :s3_key_prefix,
4775
+ :formats)
4776
+ SENSITIVE = []
4777
+ include Aws::Structure
4778
+ end
4779
+
4780
+ # Contains information from your report job about your report
4781
+ # destination.
4782
+ #
4783
+ # @!attribute [rw] s3_bucket_name
4784
+ # The unique name of the Amazon S3 bucket that receives your reports.
4785
+ # @return [String]
4786
+ #
4787
+ # @!attribute [rw] s3_keys
4788
+ # The object key that uniquely identifies your reports in your S3
4789
+ # bucket.
4790
+ # @return [Array<String>]
4791
+ #
4792
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportDestination AWS API Documentation
4793
+ #
4794
+ class ReportDestination < Struct.new(
4795
+ :s3_bucket_name,
4796
+ :s3_keys)
4797
+ SENSITIVE = []
4798
+ include Aws::Structure
4799
+ end
4800
+
4801
+ # Contains detailed information about a report job. A report job
4802
+ # compiles a report based on a report plan and publishes it to Amazon
4803
+ # S3.
4804
+ #
4805
+ # @!attribute [rw] report_job_id
4806
+ # The identifier for a report job. A unique, randomly generated,
4807
+ # Unicode, UTF-8 encoded string that is at most 1,024 bytes long.
4808
+ # Report job IDs cannot be edited.
4809
+ # @return [String]
4810
+ #
4811
+ # @!attribute [rw] report_plan_arn
4812
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
4813
+ # The format of the ARN depends on the resource type.
4814
+ # @return [String]
4815
+ #
4816
+ # @!attribute [rw] report_template
4817
+ # Identifies the report template for the report. Reports are built
4818
+ # using a report template. The report templates are:
4819
+ #
4820
+ # `RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT |
4821
+ # BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
4822
+ # @return [String]
4823
+ #
4824
+ # @!attribute [rw] creation_time
4825
+ # The date and time that a report job is created, in Unix format and
4826
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
4827
+ # accurate to milliseconds. For example, the value 1516925490.087
4828
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
4829
+ # @return [Time]
4830
+ #
4831
+ # @!attribute [rw] completion_time
4832
+ # The date and time that a report job is completed, in Unix format and
4833
+ # Coordinated Universal Time (UTC). The value of `CompletionTime` is
4834
+ # accurate to milliseconds. For example, the value 1516925490.087
4835
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
4836
+ # @return [Time]
4837
+ #
4838
+ # @!attribute [rw] status
4839
+ # The status of a report job. The statuses are:
4840
+ #
4841
+ # `CREATED | RUNNING | COMPLETED | FAILED`
4842
+ #
4843
+ # `COMPLETED` means that the report is available for your review at
4844
+ # your designated destination. If the status is `FAILED`, review the
4845
+ # `StatusMessage` for the reason.
4846
+ # @return [String]
4847
+ #
4848
+ # @!attribute [rw] status_message
4849
+ # A message explaining the status of the report job.
4850
+ # @return [String]
4851
+ #
4852
+ # @!attribute [rw] report_destination
4853
+ # The S3 bucket name and S3 keys for the destination where the report
4854
+ # job publishes the report.
4855
+ # @return [Types::ReportDestination]
4856
+ #
4857
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportJob AWS API Documentation
4858
+ #
4859
+ class ReportJob < Struct.new(
4860
+ :report_job_id,
4861
+ :report_plan_arn,
4862
+ :report_template,
4863
+ :creation_time,
4864
+ :completion_time,
4865
+ :status,
4866
+ :status_message,
4867
+ :report_destination)
4868
+ SENSITIVE = []
4869
+ include Aws::Structure
4870
+ end
4871
+
4872
+ # Contains detailed information about a report plan.
4873
+ #
4874
+ # @!attribute [rw] report_plan_arn
4875
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
4876
+ # The format of the ARN depends on the resource type.
4877
+ # @return [String]
4878
+ #
4879
+ # @!attribute [rw] report_plan_name
4880
+ # The unique name of the report plan. This name is between 1 and 256
4881
+ # characters starting with a letter, and consisting of letters (a-z,
4882
+ # A-Z), numbers (0-9), and underscores (\_).
4883
+ # @return [String]
4884
+ #
4885
+ # @!attribute [rw] report_plan_description
4886
+ # An optional description of the report plan with a maximum 1,024
4887
+ # characters.
4888
+ # @return [String]
4889
+ #
4890
+ # @!attribute [rw] report_setting
4891
+ # Identifies the report template for the report. Reports are built
4892
+ # using a report template. The report templates are:
4893
+ #
4894
+ # `RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT |
4895
+ # BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
4896
+ #
4897
+ # If the report template is `RESOURCE_COMPLIANCE_REPORT` or
4898
+ # `CONTROL_COMPLIANCE_REPORT`, this API resource also describes the
4899
+ # report coverage by Amazon Web Services Regions and frameworks.
4900
+ # @return [Types::ReportSetting]
4901
+ #
4902
+ # @!attribute [rw] report_delivery_channel
4903
+ # Contains information about where and how to deliver your reports,
4904
+ # specifically your Amazon S3 bucket name, S3 key prefix, and the
4905
+ # formats of your reports.
4906
+ # @return [Types::ReportDeliveryChannel]
4907
+ #
4908
+ # @!attribute [rw] deployment_status
4909
+ # The deployment status of a report plan. The statuses are:
4910
+ #
4911
+ # `CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS |
4912
+ # COMPLETED`
4913
+ # @return [String]
4914
+ #
4915
+ # @!attribute [rw] creation_time
4916
+ # The date and time that a report plan is created, in Unix format and
4917
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
4918
+ # accurate to milliseconds. For example, the value 1516925490.087
4919
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
4920
+ # @return [Time]
4921
+ #
4922
+ # @!attribute [rw] last_attempted_execution_time
4923
+ # The date and time that a report job associated with this report plan
4924
+ # last attempted to run, in Unix format and Coordinated Universal Time
4925
+ # (UTC). The value of `LastAttemptedExecutionTime` is accurate to
4926
+ # milliseconds. For example, the value 1516925490.087 represents
4927
+ # Friday, January 26, 2018 12:11:30.087 AM.
4928
+ # @return [Time]
4929
+ #
4930
+ # @!attribute [rw] last_successful_execution_time
4931
+ # The date and time that a report job associated with this report plan
4932
+ # last successfully ran, in Unix format and Coordinated Universal Time
4933
+ # (UTC). The value of `LastSuccessfulExecutionTime` is accurate to
4934
+ # milliseconds. For example, the value 1516925490.087 represents
4935
+ # Friday, January 26, 2018 12:11:30.087 AM.
4936
+ # @return [Time]
4937
+ #
4938
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportPlan AWS API Documentation
4939
+ #
4940
+ class ReportPlan < Struct.new(
4941
+ :report_plan_arn,
4942
+ :report_plan_name,
4943
+ :report_plan_description,
4944
+ :report_setting,
4945
+ :report_delivery_channel,
4946
+ :deployment_status,
4947
+ :creation_time,
4948
+ :last_attempted_execution_time,
4949
+ :last_successful_execution_time)
4950
+ SENSITIVE = []
4951
+ include Aws::Structure
4952
+ end
4953
+
4954
+ # Contains detailed information about a report setting.
4955
+ #
4956
+ # @note When making an API call, you may pass ReportSetting
4957
+ # data as a hash:
4958
+ #
4959
+ # {
4960
+ # report_template: "string", # required
4961
+ # framework_arns: ["string"],
4962
+ # number_of_frameworks: 1,
4963
+ # }
4964
+ #
4965
+ # @!attribute [rw] report_template
4966
+ # Identifies the report template for the report. Reports are built
4967
+ # using a report template. The report templates are:
4968
+ #
4969
+ # `RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT |
4970
+ # BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
4971
+ # @return [String]
4972
+ #
4973
+ # @!attribute [rw] framework_arns
4974
+ # The Amazon Resource Names (ARNs) of the frameworks a report covers.
4975
+ # @return [Array<String>]
4976
+ #
4977
+ # @!attribute [rw] number_of_frameworks
4978
+ # The number of frameworks a report covers.
4979
+ # @return [Integer]
4980
+ #
4981
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportSetting AWS API Documentation
4982
+ #
4983
+ class ReportSetting < Struct.new(
4984
+ :report_template,
4985
+ :framework_arns,
4986
+ :number_of_frameworks)
4987
+ SENSITIVE = []
4988
+ include Aws::Structure
4989
+ end
4990
+
3891
4991
  # A resource that is required for the action doesn't exist.
3892
4992
  #
3893
4993
  # @!attribute [rw] code
@@ -3943,8 +5043,8 @@ module Aws::Backup
3943
5043
  # @return [Time]
3944
5044
  #
3945
5045
  # @!attribute [rw] status
3946
- # A status code specifying the state of the job initiated by AWS
3947
- # Backup to restore a recovery point.
5046
+ # A status code specifying the state of the job initiated by Backup to
5047
+ # restore a recovery point.
3948
5048
  # @return [String]
3949
5049
  #
3950
5050
  # @!attribute [rw] status_message
@@ -3979,8 +5079,9 @@ module Aws::Backup
3979
5079
  # @!attribute [rw] resource_type
3980
5080
  # The resource type of the listed restore jobs; for example, an Amazon
3981
5081
  # Elastic Block Store (Amazon EBS) volume or an Amazon Relational
3982
- # Database Service (Amazon RDS) database. For VSS Windows backups, the
3983
- # only supported resource type is Amazon EC2.
5082
+ # Database Service (Amazon RDS) database. For Windows Volume Shadow
5083
+ # Copy Service (VSS) backups, the only supported resource type is
5084
+ # Amazon EC2.
3984
5085
  # @return [String]
3985
5086
  #
3986
5087
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RestoreJobsListMember AWS API Documentation
@@ -4053,8 +5154,8 @@ module Aws::Backup
4053
5154
  # @!attribute [rw] backup_vault_name
4054
5155
  # The name of a logical container where backups are stored. Backup
4055
5156
  # vaults are identified by names that are unique to the account used
4056
- # to create them and the AWS Region where they are created. They
4057
- # consist of lowercase letters, numbers, and hyphens.
5157
+ # to create them and the Amazon Web Services Region where they are
5158
+ # created. They consist of lowercase letters, numbers, and hyphens.
4058
5159
  # @return [String]
4059
5160
  #
4060
5161
  # @!attribute [rw] resource_arn
@@ -4068,8 +5169,10 @@ module Aws::Backup
4068
5169
  # @return [String]
4069
5170
  #
4070
5171
  # @!attribute [rw] idempotency_token
4071
- # A customer chosen string that can be used to distinguish between
4072
- # calls to `StartBackupJob`.
5172
+ # A customer-chosen string that you can use to distinguish between
5173
+ # otherwise identical calls to `StartBackupJob`. Retrying a successful
5174
+ # request with the same idempotency token results in a success message
5175
+ # with no action taken.
4073
5176
  # @return [String]
4074
5177
  #
4075
5178
  # @!attribute [rw] start_window_minutes
@@ -4088,9 +5191,8 @@ module Aws::Backup
4088
5191
  #
4089
5192
  # @!attribute [rw] lifecycle
4090
5193
  # The lifecycle defines when a protected resource is transitioned to
4091
- # cold storage and when it expires. AWS Backup will transition and
4092
- # expire backups automatically according to the lifecycle that you
4093
- # define.
5194
+ # cold storage and when it expires. Backup will transition and expire
5195
+ # backups automatically according to the lifecycle that you define.
4094
5196
  #
4095
5197
  # Backups transitioned to cold storage must be stored in cold storage
4096
5198
  # for a minimum of 90 days. Therefore, the “expire after days” setting
@@ -4109,12 +5211,13 @@ module Aws::Backup
4109
5211
  #
4110
5212
  # @!attribute [rw] backup_options
4111
5213
  # Specifies the backup option for a selected resource. This option is
4112
- # only available for Windows VSS backup jobs.
5214
+ # only available for Windows Volume Shadow Copy Service (VSS) backup
5215
+ # jobs.
4113
5216
  #
4114
- # Valid values: Set to `"WindowsVSS”:“enabled"` to enable WindowsVSS
4115
- # backup option and create a VSS Windows backup. Set to
4116
- # WindowsVSS”:”disabled to create a regular backup. The WindowsVSS
4117
- # option is not enabled by default.
5217
+ # Valid values: Set to `"WindowsVSS":"enabled"` to enable the
5218
+ # `WindowsVSS` backup option and create a Windows VSS backup. Set to
5219
+ # `"WindowsVSS""disabled"` to create a regular backup. The
5220
+ # `WindowsVSS` option is not enabled by default.
4118
5221
  # @return [Hash<String,String>]
4119
5222
  #
4120
5223
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJobInput AWS API Documentation
@@ -4134,7 +5237,7 @@ module Aws::Backup
4134
5237
  end
4135
5238
 
4136
5239
  # @!attribute [rw] backup_job_id
4137
- # Uniquely identifies a request to AWS Backup to back up a resource.
5240
+ # Uniquely identifies a request to Backup to back up a resource.
4138
5241
  # @return [String]
4139
5242
  #
4140
5243
  # @!attribute [rw] recovery_point_arn
@@ -4183,8 +5286,9 @@ module Aws::Backup
4183
5286
  # @!attribute [rw] source_backup_vault_name
4184
5287
  # The name of a logical source container where backups are stored.
4185
5288
  # Backup vaults are identified by names that are unique to the account
4186
- # used to create them and the AWS Region where they are created. They
4187
- # consist of lowercase letters, numbers, and hyphens.
5289
+ # used to create them and the Amazon Web Services Region where they
5290
+ # are created. They consist of lowercase letters, numbers, and
5291
+ # hyphens.
4188
5292
  # @return [String]
4189
5293
  #
4190
5294
  # @!attribute [rw] destination_backup_vault_arn
@@ -4199,8 +5303,10 @@ module Aws::Backup
4199
5303
  # @return [String]
4200
5304
  #
4201
5305
  # @!attribute [rw] idempotency_token
4202
- # A customer chosen string that can be used to distinguish between
4203
- # calls to `StartCopyJob`.
5306
+ # A customer-chosen string that you can use to distinguish between
5307
+ # otherwise identical calls to `StartCopyJob`. Retrying a successful
5308
+ # request with the same idempotency token results in a success message
5309
+ # with no action taken.
4204
5310
  # @return [String]
4205
5311
  #
4206
5312
  # @!attribute [rw] lifecycle
@@ -4252,6 +5358,51 @@ module Aws::Backup
4252
5358
  include Aws::Structure
4253
5359
  end
4254
5360
 
5361
+ # @note When making an API call, you may pass StartReportJobInput
5362
+ # data as a hash:
5363
+ #
5364
+ # {
5365
+ # report_plan_name: "ReportPlanName", # required
5366
+ # idempotency_token: "string",
5367
+ # }
5368
+ #
5369
+ # @!attribute [rw] report_plan_name
5370
+ # The unique name of a report plan.
5371
+ # @return [String]
5372
+ #
5373
+ # @!attribute [rw] idempotency_token
5374
+ # A customer-chosen string that you can use to distinguish between
5375
+ # otherwise identical calls to `StartReportJobInput`. Retrying a
5376
+ # successful request with the same idempotency token results in a
5377
+ # success message with no action taken.
5378
+ #
5379
+ # **A suitable default value is auto-generated.** You should normally
5380
+ # not need to pass this option.
5381
+ # @return [String]
5382
+ #
5383
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartReportJobInput AWS API Documentation
5384
+ #
5385
+ class StartReportJobInput < Struct.new(
5386
+ :report_plan_name,
5387
+ :idempotency_token)
5388
+ SENSITIVE = []
5389
+ include Aws::Structure
5390
+ end
5391
+
5392
+ # @!attribute [rw] report_job_id
5393
+ # The identifier of the report job. A unique, randomly generated,
5394
+ # Unicode, UTF-8 encoded string that is at most 1,024 bytes long. The
5395
+ # report job ID cannot be edited.
5396
+ # @return [String]
5397
+ #
5398
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartReportJobOutput AWS API Documentation
5399
+ #
5400
+ class StartReportJobOutput < Struct.new(
5401
+ :report_job_id)
5402
+ SENSITIVE = []
5403
+ include Aws::Structure
5404
+ end
5405
+
4255
5406
  # @note When making an API call, you may pass StartRestoreJobInput
4256
5407
  # data as a hash:
4257
5408
  #
@@ -4285,17 +5436,17 @@ module Aws::Backup
4285
5436
  # File System (Amazon EFS) instance:
4286
5437
  #
4287
5438
  # * `file-system-id`\: The ID of the Amazon EFS file system that is
4288
- # backed up by AWS Backup. Returned in
5439
+ # backed up by Backup. Returned in
4289
5440
  # `GetRecoveryPointRestoreMetadata`.
4290
5441
  #
4291
5442
  # * `Encrypted`\: A Boolean value that, if true, specifies that the
4292
5443
  # file system is encrypted. If `KmsKeyId` is specified, `Encrypted`
4293
5444
  # must be set to `true`.
4294
5445
  #
4295
- # * `KmsKeyId`\: Specifies the AWS KMS key that is used to encrypt the
4296
- # restored file system. You can specify a key from another AWS
4297
- # account provided that key it is properly shared with your account
4298
- # via AWS KMS.
5446
+ # * `KmsKeyId`\: Specifies the Amazon Web Services KMS key that is
5447
+ # used to encrypt the restored file system. You can specify a key
5448
+ # from another Amazon Web Services account provided that key it is
5449
+ # properly shared with your account via Amazon Web Services KMS.
4299
5450
  #
4300
5451
  # * `PerformanceMode`\: Specifies the throughput mode of the file
4301
5452
  # system.
@@ -4306,7 +5457,7 @@ module Aws::Backup
4306
5457
  # * `newFileSystem`\: A Boolean value that, if true, specifies that
4307
5458
  # the recovery point is restored to a new Amazon EFS file system.
4308
5459
  #
4309
- # * `ItemsToRestore `\: An array of one to five strings where each
5460
+ # * `ItemsToRestore`\: An array of one to five strings where each
4310
5461
  # string is a file path. Use `ItemsToRestore` to restore specific
4311
5462
  # files or directories rather than the entire file system. This
4312
5463
  # parameter is optional. For example,
@@ -4314,14 +5465,16 @@ module Aws::Backup
4314
5465
  # @return [Hash<String,String>]
4315
5466
  #
4316
5467
  # @!attribute [rw] iam_role_arn
4317
- # The Amazon Resource Name (ARN) of the IAM role that AWS Backup uses
4318
- # to create the target recovery point; for example,
5468
+ # The Amazon Resource Name (ARN) of the IAM role that Backup uses to
5469
+ # create the target recovery point; for example,
4319
5470
  # `arn:aws:iam::123456789012:role/S3Access`.
4320
5471
  # @return [String]
4321
5472
  #
4322
5473
  # @!attribute [rw] idempotency_token
4323
- # A customer chosen string that can be used to distinguish between
4324
- # calls to `StartRestoreJob`.
5474
+ # A customer-chosen string that you can use to distinguish between
5475
+ # otherwise identical calls to `StartRestoreJob`. Retrying a
5476
+ # successful request with the same idempotency token results in a
5477
+ # success message with no action taken.
4325
5478
  # @return [String]
4326
5479
  #
4327
5480
  # @!attribute [rw] resource_type
@@ -4340,7 +5493,7 @@ module Aws::Backup
4340
5493
  #
4341
5494
  # * `Aurora` for Amazon Aurora
4342
5495
  #
4343
- # * `Storage Gateway` for AWS Storage Gateway
5496
+ # * `Storage Gateway` for Storage Gateway
4344
5497
  # @return [String]
4345
5498
  #
4346
5499
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartRestoreJobInput AWS API Documentation
@@ -4375,7 +5528,7 @@ module Aws::Backup
4375
5528
  # }
4376
5529
  #
4377
5530
  # @!attribute [rw] backup_job_id
4378
- # Uniquely identifies a request to AWS Backup to back up a resource.
5531
+ # Uniquely identifies a request to Backup to back up a resource.
4379
5532
  # @return [String]
4380
5533
  #
4381
5534
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StopBackupJobInput AWS API Documentation
@@ -4515,7 +5668,7 @@ module Aws::Backup
4515
5668
  # @return [String]
4516
5669
  #
4517
5670
  # @!attribute [rw] creation_date
4518
- # The date and time a backup plan is updated, in Unix format and
5671
+ # The date and time a backup plan is created, in Unix format and
4519
5672
  # Coordinated Universal Time (UTC). The value of `CreationDate` is
4520
5673
  # accurate to milliseconds. For example, the value 1516925490.087
4521
5674
  # represents Friday, January 26, 2018 12:11:30.087 AM.
@@ -4542,6 +5695,98 @@ module Aws::Backup
4542
5695
  include Aws::Structure
4543
5696
  end
4544
5697
 
5698
+ # @note When making an API call, you may pass UpdateFrameworkInput
5699
+ # data as a hash:
5700
+ #
5701
+ # {
5702
+ # framework_name: "FrameworkName", # required
5703
+ # framework_description: "FrameworkDescription",
5704
+ # framework_controls: [
5705
+ # {
5706
+ # control_name: "ControlName", # required
5707
+ # control_input_parameters: [
5708
+ # {
5709
+ # parameter_name: "ParameterName",
5710
+ # parameter_value: "ParameterValue",
5711
+ # },
5712
+ # ],
5713
+ # control_scope: {
5714
+ # compliance_resource_ids: ["string"],
5715
+ # compliance_resource_types: ["ARN"],
5716
+ # tags: {
5717
+ # "string" => "string",
5718
+ # },
5719
+ # },
5720
+ # },
5721
+ # ],
5722
+ # idempotency_token: "string",
5723
+ # }
5724
+ #
5725
+ # @!attribute [rw] framework_name
5726
+ # The unique name of a framework. This name is between 1 and 256
5727
+ # characters, starting with a letter, and consisting of letters (a-z,
5728
+ # A-Z), numbers (0-9), and underscores (\_).
5729
+ # @return [String]
5730
+ #
5731
+ # @!attribute [rw] framework_description
5732
+ # An optional description of the framework with a maximum 1,024
5733
+ # characters.
5734
+ # @return [String]
5735
+ #
5736
+ # @!attribute [rw] framework_controls
5737
+ # A list of the controls that make up the framework. Each control in
5738
+ # the list has a name, input parameters, and scope.
5739
+ # @return [Array<Types::FrameworkControl>]
5740
+ #
5741
+ # @!attribute [rw] idempotency_token
5742
+ # A customer-chosen string that you can use to distinguish between
5743
+ # otherwise identical calls to `UpdateFrameworkInput`. Retrying a
5744
+ # successful request with the same idempotency token results in a
5745
+ # success message with no action taken.
5746
+ #
5747
+ # **A suitable default value is auto-generated.** You should normally
5748
+ # not need to pass this option.
5749
+ # @return [String]
5750
+ #
5751
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateFrameworkInput AWS API Documentation
5752
+ #
5753
+ class UpdateFrameworkInput < Struct.new(
5754
+ :framework_name,
5755
+ :framework_description,
5756
+ :framework_controls,
5757
+ :idempotency_token)
5758
+ SENSITIVE = []
5759
+ include Aws::Structure
5760
+ end
5761
+
5762
+ # @!attribute [rw] framework_name
5763
+ # The unique name of a framework. This name is between 1 and 256
5764
+ # characters, starting with a letter, and consisting of letters (a-z,
5765
+ # A-Z), numbers (0-9), and underscores (\_).
5766
+ # @return [String]
5767
+ #
5768
+ # @!attribute [rw] framework_arn
5769
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
5770
+ # The format of the ARN depends on the resource type.
5771
+ # @return [String]
5772
+ #
5773
+ # @!attribute [rw] creation_time
5774
+ # The date and time that a framework is created, in Unix format and
5775
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
5776
+ # accurate to milliseconds. For example, the value 1516925490.087
5777
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
5778
+ # @return [Time]
5779
+ #
5780
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateFrameworkOutput AWS API Documentation
5781
+ #
5782
+ class UpdateFrameworkOutput < Struct.new(
5783
+ :framework_name,
5784
+ :framework_arn,
5785
+ :creation_time)
5786
+ SENSITIVE = []
5787
+ include Aws::Structure
5788
+ end
5789
+
4545
5790
  # @note When making an API call, you may pass UpdateGlobalSettingsInput
4546
5791
  # data as a hash:
4547
5792
  #
@@ -4552,8 +5797,9 @@ module Aws::Backup
4552
5797
  # }
4553
5798
  #
4554
5799
  # @!attribute [rw] global_settings
4555
- # A list of resources along with the opt-in preferences for the
4556
- # account.
5800
+ # A value for `isCrossAccountBackupEnabled` and a Region. Example:
5801
+ # `update-global-settings --global-settings
5802
+ # isCrossAccountBackupEnabled=false --region us-west-2`.
4557
5803
  # @return [Hash<String,String>]
4558
5804
  #
4559
5805
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateGlobalSettingsInput AWS API Documentation
@@ -4579,8 +5825,8 @@ module Aws::Backup
4579
5825
  # @!attribute [rw] backup_vault_name
4580
5826
  # The name of a logical container where backups are stored. Backup
4581
5827
  # vaults are identified by names that are unique to the account used
4582
- # to create them and the AWS Region where they are created. They
4583
- # consist of lowercase letters, numbers, and hyphens.
5828
+ # to create them and the Amazon Web Services Region where they are
5829
+ # created. They consist of lowercase letters, numbers, and hyphens.
4584
5830
  # @return [String]
4585
5831
  #
4586
5832
  # @!attribute [rw] recovery_point_arn
@@ -4591,7 +5837,7 @@ module Aws::Backup
4591
5837
  #
4592
5838
  # @!attribute [rw] lifecycle
4593
5839
  # The lifecycle defines when a protected resource is transitioned to
4594
- # cold storage and when it expires. AWS Backup transitions and expires
5840
+ # cold storage and when it expires. Backup transitions and expires
4595
5841
  # backups automatically according to the lifecycle that you define.
4596
5842
  #
4597
5843
  # Backups transitioned to cold storage must be stored in cold storage
@@ -4624,7 +5870,7 @@ module Aws::Backup
4624
5870
  #
4625
5871
  # @!attribute [rw] lifecycle
4626
5872
  # The lifecycle defines when a protected resource is transitioned to
4627
- # cold storage and when it expires. AWS Backup transitions and expires
5873
+ # cold storage and when it expires. Backup transitions and expires
4628
5874
  # backups automatically according to the lifecycle that you define.
4629
5875
  #
4630
5876
  # Backups transitioned to cold storage must be stored in cold storage
@@ -4675,5 +5921,101 @@ module Aws::Backup
4675
5921
  include Aws::Structure
4676
5922
  end
4677
5923
 
5924
+ # @note When making an API call, you may pass UpdateReportPlanInput
5925
+ # data as a hash:
5926
+ #
5927
+ # {
5928
+ # report_plan_name: "ReportPlanName", # required
5929
+ # report_plan_description: "ReportPlanDescription",
5930
+ # report_delivery_channel: {
5931
+ # s3_bucket_name: "string", # required
5932
+ # s3_key_prefix: "string",
5933
+ # formats: ["string"],
5934
+ # },
5935
+ # report_setting: {
5936
+ # report_template: "string", # required
5937
+ # framework_arns: ["string"],
5938
+ # number_of_frameworks: 1,
5939
+ # },
5940
+ # idempotency_token: "string",
5941
+ # }
5942
+ #
5943
+ # @!attribute [rw] report_plan_name
5944
+ # The unique name of the report plan. This name is between 1 and 256
5945
+ # characters, starting with a letter, and consisting of letters (a-z,
5946
+ # A-Z), numbers (0-9), and underscores (\_).
5947
+ # @return [String]
5948
+ #
5949
+ # @!attribute [rw] report_plan_description
5950
+ # An optional description of the report plan with a maximum 1,024
5951
+ # characters.
5952
+ # @return [String]
5953
+ #
5954
+ # @!attribute [rw] report_delivery_channel
5955
+ # A structure that contains information about where to deliver your
5956
+ # reports, specifically your Amazon S3 bucket name, S3 key prefix, and
5957
+ # the formats of your reports.
5958
+ # @return [Types::ReportDeliveryChannel]
5959
+ #
5960
+ # @!attribute [rw] report_setting
5961
+ # Identifies the report template for the report. Reports are built
5962
+ # using a report template. The report templates are:
5963
+ #
5964
+ # `RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT |
5965
+ # BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
5966
+ #
5967
+ # If the report template is `RESOURCE_COMPLIANCE_REPORT` or
5968
+ # `CONTROL_COMPLIANCE_REPORT`, this API resource also describes the
5969
+ # report coverage by Amazon Web Services Regions and frameworks.
5970
+ # @return [Types::ReportSetting]
5971
+ #
5972
+ # @!attribute [rw] idempotency_token
5973
+ # A customer-chosen string that you can use to distinguish between
5974
+ # otherwise identical calls to `UpdateReportPlanInput`. Retrying a
5975
+ # successful request with the same idempotency token results in a
5976
+ # success message with no action taken.
5977
+ #
5978
+ # **A suitable default value is auto-generated.** You should normally
5979
+ # not need to pass this option.
5980
+ # @return [String]
5981
+ #
5982
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateReportPlanInput AWS API Documentation
5983
+ #
5984
+ class UpdateReportPlanInput < Struct.new(
5985
+ :report_plan_name,
5986
+ :report_plan_description,
5987
+ :report_delivery_channel,
5988
+ :report_setting,
5989
+ :idempotency_token)
5990
+ SENSITIVE = []
5991
+ include Aws::Structure
5992
+ end
5993
+
5994
+ # @!attribute [rw] report_plan_name
5995
+ # The unique name of the report plan.
5996
+ # @return [String]
5997
+ #
5998
+ # @!attribute [rw] report_plan_arn
5999
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
6000
+ # The format of the ARN depends on the resource type.
6001
+ # @return [String]
6002
+ #
6003
+ # @!attribute [rw] creation_time
6004
+ # The date and time that a report plan is created, in Unix format and
6005
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
6006
+ # accurate to milliseconds. For example, the value 1516925490.087
6007
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
6008
+ # @return [Time]
6009
+ #
6010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateReportPlanOutput AWS API Documentation
6011
+ #
6012
+ class UpdateReportPlanOutput < Struct.new(
6013
+ :report_plan_name,
6014
+ :report_plan_arn,
6015
+ :creation_time)
6016
+ SENSITIVE = []
6017
+ include Aws::Structure
6018
+ end
6019
+
4678
6020
  end
4679
6021
  end