aws-sdk-backup 1.28.0 → 1.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -28,6 +28,7 @@ module Aws::Backup
28
28
  #
29
29
  # ## Error Classes
30
30
  # * {AlreadyExistsException}
31
+ # * {ConflictException}
31
32
  # * {DependencyFailureException}
32
33
  # * {InvalidParameterValueException}
33
34
  # * {InvalidRequestException}
@@ -83,6 +84,36 @@ module Aws::Backup
83
84
  end
84
85
  end
85
86
 
87
+ class ConflictException < ServiceError
88
+
89
+ # @param [Seahorse::Client::RequestContext] context
90
+ # @param [String] message
91
+ # @param [Aws::Backup::Types::ConflictException] data
92
+ def initialize(context, message, data = Aws::EmptyStructure.new)
93
+ super(context, message, data)
94
+ end
95
+
96
+ # @return [String]
97
+ def code
98
+ @code || @data[:code]
99
+ end
100
+
101
+ # @return [String]
102
+ def message
103
+ @message || @data[:message]
104
+ end
105
+
106
+ # @return [String]
107
+ def type
108
+ @data[:type]
109
+ end
110
+
111
+ # @return [String]
112
+ def context
113
+ @data[:context]
114
+ end
115
+ end
116
+
86
117
  class DependencyFailureException < ServiceError
87
118
 
88
119
  # @param [Seahorse::Client::RequestContext] context
@@ -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.
@@ -283,7 +286,7 @@ module Aws::Backup
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
288
  # in a backup plan is a separate scheduled task and can back up a
286
- # different selection of AWS resources.
289
+ # different selection of Amazon Web Services resources.
287
290
  #
288
291
  # @note When making an API call, you may pass BackupPlanInput
289
292
  # data as a hash:
@@ -337,7 +340,8 @@ module Aws::Backup
337
340
  #
338
341
  # @!attribute [rw] advanced_backup_settings
339
342
  # Specifies a list of `BackupOptions` for each resource type. These
340
- # settings are only available for Windows VSS backup jobs.
343
+ # settings are only available for Windows Volume Shadow Copy Service
344
+ # (VSS) backup jobs.
341
345
  # @return [Array<Types::AdvancedBackupSetting>]
342
346
  #
343
347
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupPlanInput AWS API Documentation
@@ -447,13 +451,13 @@ module Aws::Backup
447
451
  # @!attribute [rw] target_backup_vault_name
448
452
  # The name of a logical container where backups are stored. Backup
449
453
  # 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.
454
+ # to create them and the Amazon Web Services Region where they are
455
+ # created. They consist of lowercase letters, numbers, and hyphens.
452
456
  # @return [String]
453
457
  #
454
458
  # @!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
459
+ # A cron expression in UTC specifying when Backup initiates a backup
460
+ # job. For more information about cron expressions, see [Schedule
457
461
  # Expressions for Rules][1] in the *Amazon CloudWatch Events User
458
462
  # Guide.*. Prior to specifying a value for this parameter, we
459
463
  # recommend testing your cron expression using one of the many
@@ -471,13 +475,13 @@ module Aws::Backup
471
475
  #
472
476
  # @!attribute [rw] completion_window_minutes
473
477
  # 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.
478
+ # it must be completed or it will be canceled by Backup. This value is
479
+ # optional.
476
480
  # @return [Integer]
477
481
  #
478
482
  # @!attribute [rw] lifecycle
479
483
  # The lifecycle defines when a protected resource is transitioned to
480
- # cold storage and when it expires. AWS Backup transitions and expires
484
+ # cold storage and when it expires. Backup transitions and expires
481
485
  # backups automatically according to the lifecycle that you define.
482
486
  #
483
487
  # Backups transitioned to cold storage must be stored in cold storage
@@ -506,10 +510,10 @@ module Aws::Backup
506
510
  # @return [Array<Types::CopyAction>]
507
511
  #
508
512
  # @!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.
513
+ # Specifies whether Backup creates continuous backups. True causes
514
+ # Backup to create continuous backups capable of point-in-time restore
515
+ # (PITR). False (or not specified) causes Backup to create snapshot
516
+ # backups.
513
517
  # @return [Boolean]
514
518
  #
515
519
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupRule AWS API Documentation
@@ -566,12 +570,13 @@ module Aws::Backup
566
570
  # @!attribute [rw] target_backup_vault_name
567
571
  # The name of a logical container where backups are stored. Backup
568
572
  # 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.
573
+ # to create them and the Amazon Web Services Region where they are
574
+ # created. They consist of lowercase letters, numbers, and hyphens.
571
575
  # @return [String]
572
576
  #
573
577
  # @!attribute [rw] schedule_expression
574
- # A CRON expression specifying when AWS Backup initiates a backup job.
578
+ # A CRON expression in UTC specifying when Backup initiates a backup
579
+ # job.
575
580
  # @return [String]
576
581
  #
577
582
  # @!attribute [rw] start_window_minutes
@@ -581,15 +586,14 @@ module Aws::Backup
581
586
  #
582
587
  # @!attribute [rw] completion_window_minutes
583
588
  # 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.
589
+ # it must be completed or it will be canceled by Backup. This value is
590
+ # optional.
586
591
  # @return [Integer]
587
592
  #
588
593
  # @!attribute [rw] lifecycle
589
594
  # 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.
595
+ # cold storage and when it expires. Backup will transition and expire
596
+ # backups automatically according to the lifecycle that you define.
593
597
  #
594
598
  # Backups transitioned to cold storage must be stored in cold storage
595
599
  # for a minimum of 90 days. Therefore, the “expire after days” setting
@@ -612,10 +616,10 @@ module Aws::Backup
612
616
  # @return [Array<Types::CopyAction>]
613
617
  #
614
618
  # @!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.
619
+ # Specifies whether Backup creates continuous backups. True causes
620
+ # Backup to create continuous backups capable of point-in-time restore
621
+ # (PITR). False (or not specified) causes Backup to create snapshot
622
+ # backups.
619
623
  # @return [Boolean]
620
624
  #
621
625
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/BackupRuleInput AWS API Documentation
@@ -657,7 +661,7 @@ module Aws::Backup
657
661
  # @return [String]
658
662
  #
659
663
  # @!attribute [rw] iam_role_arn
660
- # The ARN of the IAM role that AWS Backup uses to authenticate when
664
+ # The ARN of the IAM role that Backup uses to authenticate when
661
665
  # backing up the target resource; for example,
662
666
  # `arn:aws:iam::123456789012:role/S3Access`.
663
667
  # @return [String]
@@ -737,8 +741,8 @@ module Aws::Backup
737
741
  # @!attribute [rw] backup_vault_name
738
742
  # The name of a logical container where backups are stored. Backup
739
743
  # 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.
744
+ # to create them and the Amazon Web Services Region where they are
745
+ # created. They consist of lowercase letters, numbers, and hyphens.
742
746
  # @return [String]
743
747
  #
744
748
  # @!attribute [rw] backup_vault_arn
@@ -787,7 +791,7 @@ module Aws::Backup
787
791
  # used to specify a lifecycle for a recovery point.
788
792
  #
789
793
  # The lifecycle defines when a protected resource is transitioned to
790
- # cold storage and when it expires. AWS Backup transitions and expires
794
+ # cold storage and when it expires. Backup transitions and expires
791
795
  # backups automatically according to the lifecycle that you define.
792
796
  #
793
797
  # Backups transitioned to cold storage must be stored in cold storage
@@ -857,6 +861,110 @@ module Aws::Backup
857
861
  include Aws::Structure
858
862
  end
859
863
 
864
+ # Backup can't perform the action that you requested until it finishes
865
+ # performing a previous action. Try again later.
866
+ #
867
+ # @!attribute [rw] code
868
+ # @return [String]
869
+ #
870
+ # @!attribute [rw] message
871
+ # @return [String]
872
+ #
873
+ # @!attribute [rw] type
874
+ # @return [String]
875
+ #
876
+ # @!attribute [rw] context
877
+ # @return [String]
878
+ #
879
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ConflictException AWS API Documentation
880
+ #
881
+ class ConflictException < Struct.new(
882
+ :code,
883
+ :message,
884
+ :type,
885
+ :context)
886
+ SENSITIVE = []
887
+ include Aws::Structure
888
+ end
889
+
890
+ # A list of parameters for a control. A control can have zero, one, or
891
+ # more than one parameter. An example of a control with two parameters
892
+ # is: "backup plan frequency is at least `daily` and the retention
893
+ # period is at least `1 year`". The first parameter is `daily`. The
894
+ # second parameter is `1 year`.
895
+ #
896
+ # @note When making an API call, you may pass ControlInputParameter
897
+ # data as a hash:
898
+ #
899
+ # {
900
+ # parameter_name: "ParameterName",
901
+ # parameter_value: "ParameterValue",
902
+ # }
903
+ #
904
+ # @!attribute [rw] parameter_name
905
+ # The name of a parameter, for example, `BackupPlanFrequency`.
906
+ # @return [String]
907
+ #
908
+ # @!attribute [rw] parameter_value
909
+ # The value of parameter, for example, `hourly`.
910
+ # @return [String]
911
+ #
912
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ControlInputParameter AWS API Documentation
913
+ #
914
+ class ControlInputParameter < Struct.new(
915
+ :parameter_name,
916
+ :parameter_value)
917
+ SENSITIVE = []
918
+ include Aws::Structure
919
+ end
920
+
921
+ # A framework consists of one or more controls. Each control has its own
922
+ # control scope. The control scope defines what the control will
923
+ # evaluate. Three examples of control scopes are: a specific backup
924
+ # plan, all backup plans with a specific tag, or all backup plans.
925
+ #
926
+ # <note markdown="1"> To set a control scope that includes all of a particular resource,
927
+ # leave the `ControlScope` empty or do not pass it when calling
928
+ # `CreateFramework`.
929
+ #
930
+ # </note>
931
+ #
932
+ # @note When making an API call, you may pass ControlScope
933
+ # data as a hash:
934
+ #
935
+ # {
936
+ # compliance_resource_ids: ["string"],
937
+ # compliance_resource_types: ["ARN"],
938
+ # tags: {
939
+ # "string" => "string",
940
+ # },
941
+ # }
942
+ #
943
+ # @!attribute [rw] compliance_resource_ids
944
+ # Describes whether the control scope includes a specific resource
945
+ # identified by its unique Amazon Resource Name (ARN).
946
+ # @return [Array<String>]
947
+ #
948
+ # @!attribute [rw] compliance_resource_types
949
+ # Describes whether the control scope includes one or more types of
950
+ # resources, such as `EFS` or `RDS`.
951
+ # @return [Array<String>]
952
+ #
953
+ # @!attribute [rw] tags
954
+ # Describes whether the control scope includes resources with one or
955
+ # more tags. Each tag is a key-value pair.
956
+ # @return [Hash<String,String>]
957
+ #
958
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ControlScope AWS API Documentation
959
+ #
960
+ class ControlScope < Struct.new(
961
+ :compliance_resource_ids,
962
+ :compliance_resource_types,
963
+ :tags)
964
+ SENSITIVE = []
965
+ include Aws::Structure
966
+ end
967
+
860
968
  # The details of the copy operation.
861
969
  #
862
970
  # @note When making an API call, you may pass CopyAction
@@ -936,9 +1044,9 @@ module Aws::Backup
936
1044
  # @return [String]
937
1045
  #
938
1046
  # @!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.
1047
+ # The Amazon Web Services resource to be copied; for example, an
1048
+ # Amazon Elastic Block Store (Amazon EBS) volume or an Amazon
1049
+ # Relational Database Service (Amazon RDS) database.
942
1050
  # @return [String]
943
1051
  #
944
1052
  # @!attribute [rw] creation_date
@@ -974,14 +1082,14 @@ module Aws::Backup
974
1082
  # @return [String]
975
1083
  #
976
1084
  # @!attribute [rw] created_by
977
- # Contains information about the backup plan and rule that AWS Backup
978
- # used to initiate the recovery point backup.
1085
+ # Contains information about the backup plan and rule that Backup used
1086
+ # to initiate the recovery point backup.
979
1087
  # @return [Types::RecoveryPointCreator]
980
1088
  #
981
1089
  # @!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.
1090
+ # The type of Amazon Web Services resource to be copied; for example,
1091
+ # an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon
1092
+ # Relational Database Service (Amazon RDS) database.
985
1093
  # @return [String]
986
1094
  #
987
1095
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CopyJob AWS API Documentation
@@ -1105,7 +1213,8 @@ module Aws::Backup
1105
1213
  #
1106
1214
  # @!attribute [rw] advanced_backup_settings
1107
1215
  # A list of `BackupOptions` settings for a resource type. This option
1108
- # is only available for Windows VSS backup jobs.
1216
+ # is only available for Windows Volume Shadow Copy Service (VSS)
1217
+ # backup jobs.
1109
1218
  # @return [Array<Types::AdvancedBackupSetting>]
1110
1219
  #
1111
1220
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupPlanOutput AWS API Documentation
@@ -1207,8 +1316,8 @@ module Aws::Backup
1207
1316
  # @!attribute [rw] backup_vault_name
1208
1317
  # The name of a logical container where backups are stored. Backup
1209
1318
  # 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.
1319
+ # to create them and the Amazon Web Services Region where they are
1320
+ # created. They consist of letters, numbers, and hyphens.
1212
1321
  # @return [String]
1213
1322
  #
1214
1323
  # @!attribute [rw] backup_vault_tags
@@ -1269,6 +1378,189 @@ module Aws::Backup
1269
1378
  include Aws::Structure
1270
1379
  end
1271
1380
 
1381
+ # @note When making an API call, you may pass CreateFrameworkInput
1382
+ # data as a hash:
1383
+ #
1384
+ # {
1385
+ # framework_name: "FrameworkName", # required
1386
+ # framework_description: "FrameworkDescription",
1387
+ # framework_controls: [ # required
1388
+ # {
1389
+ # control_name: "ControlName", # required
1390
+ # control_input_parameters: [
1391
+ # {
1392
+ # parameter_name: "ParameterName",
1393
+ # parameter_value: "ParameterValue",
1394
+ # },
1395
+ # ],
1396
+ # control_scope: {
1397
+ # compliance_resource_ids: ["string"],
1398
+ # compliance_resource_types: ["ARN"],
1399
+ # tags: {
1400
+ # "string" => "string",
1401
+ # },
1402
+ # },
1403
+ # },
1404
+ # ],
1405
+ # idempotency_token: "string",
1406
+ # framework_tags: {
1407
+ # "string" => "string",
1408
+ # },
1409
+ # }
1410
+ #
1411
+ # @!attribute [rw] framework_name
1412
+ # The unique name of the framework. The name must be between 1 and 256
1413
+ # characters, starting with a letter, and consisting of letters (a-z,
1414
+ # A-Z), numbers (0-9), and underscores (\_).
1415
+ # @return [String]
1416
+ #
1417
+ # @!attribute [rw] framework_description
1418
+ # An optional description of the framework with a maximum of 1,024
1419
+ # characters.
1420
+ # @return [String]
1421
+ #
1422
+ # @!attribute [rw] framework_controls
1423
+ # A list of the controls that make up the framework. Each control in
1424
+ # the list has a name, input parameters, and scope.
1425
+ # @return [Array<Types::FrameworkControl>]
1426
+ #
1427
+ # @!attribute [rw] idempotency_token
1428
+ # A customer-chosen string that you can use to distinguish between
1429
+ # otherwise identical calls to `CreateFrameworkInput`. Retrying a
1430
+ # successful request with the same idempotency token results in a
1431
+ # success message with no action taken.
1432
+ #
1433
+ # **A suitable default value is auto-generated.** You should normally
1434
+ # not need to pass this option.
1435
+ # @return [String]
1436
+ #
1437
+ # @!attribute [rw] framework_tags
1438
+ # Metadata that you can assign to help organize the frameworks that
1439
+ # you create. Each tag is a key-value pair.
1440
+ # @return [Hash<String,String>]
1441
+ #
1442
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateFrameworkInput AWS API Documentation
1443
+ #
1444
+ class CreateFrameworkInput < Struct.new(
1445
+ :framework_name,
1446
+ :framework_description,
1447
+ :framework_controls,
1448
+ :idempotency_token,
1449
+ :framework_tags)
1450
+ SENSITIVE = []
1451
+ include Aws::Structure
1452
+ end
1453
+
1454
+ # @!attribute [rw] framework_name
1455
+ # The unique name of the framework. The name must be between 1 and 256
1456
+ # characters, starting with a letter, and consisting of letters (a-z,
1457
+ # A-Z), numbers (0-9), and underscores (\_).
1458
+ # @return [String]
1459
+ #
1460
+ # @!attribute [rw] framework_arn
1461
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
1462
+ # The format of the ARN depends on the resource type.
1463
+ # @return [String]
1464
+ #
1465
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateFrameworkOutput AWS API Documentation
1466
+ #
1467
+ class CreateFrameworkOutput < Struct.new(
1468
+ :framework_name,
1469
+ :framework_arn)
1470
+ SENSITIVE = []
1471
+ include Aws::Structure
1472
+ end
1473
+
1474
+ # @note When making an API call, you may pass CreateReportPlanInput
1475
+ # data as a hash:
1476
+ #
1477
+ # {
1478
+ # report_plan_name: "ReportPlanName", # required
1479
+ # report_plan_description: "ReportPlanDescription",
1480
+ # report_delivery_channel: { # required
1481
+ # s3_bucket_name: "string", # required
1482
+ # s3_key_prefix: "string",
1483
+ # formats: ["string"],
1484
+ # },
1485
+ # report_setting: { # required
1486
+ # report_template: "string", # required
1487
+ # },
1488
+ # report_plan_tags: {
1489
+ # "string" => "string",
1490
+ # },
1491
+ # idempotency_token: "string",
1492
+ # }
1493
+ #
1494
+ # @!attribute [rw] report_plan_name
1495
+ # The unique name of the report plan. The name must be between 1 and
1496
+ # 256 characters, starting with a letter, and consisting of letters
1497
+ # (a-z, A-Z), numbers (0-9), and underscores (\_).
1498
+ # @return [String]
1499
+ #
1500
+ # @!attribute [rw] report_plan_description
1501
+ # An optional description of the report plan with a maximum of 1,024
1502
+ # characters.
1503
+ # @return [String]
1504
+ #
1505
+ # @!attribute [rw] report_delivery_channel
1506
+ # A structure that contains information about where and how to deliver
1507
+ # your reports, specifically your Amazon S3 bucket name, S3 key
1508
+ # prefix, and the formats of your reports.
1509
+ # @return [Types::ReportDeliveryChannel]
1510
+ #
1511
+ # @!attribute [rw] report_setting
1512
+ # Identifies the report template for the report. Reports are built
1513
+ # using a report template. The report templates are:
1514
+ #
1515
+ # `BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
1516
+ # @return [Types::ReportSetting]
1517
+ #
1518
+ # @!attribute [rw] report_plan_tags
1519
+ # Metadata that you can assign to help organize the frameworks that
1520
+ # you create. Each tag is a key-value pair.
1521
+ # @return [Hash<String,String>]
1522
+ #
1523
+ # @!attribute [rw] idempotency_token
1524
+ # A customer-chosen string that you can use to distinguish between
1525
+ # otherwise identical calls to `CreateReportPlanInput`. Retrying a
1526
+ # successful request with the same idempotency token results in a
1527
+ # success message with no action taken.
1528
+ #
1529
+ # **A suitable default value is auto-generated.** You should normally
1530
+ # not need to pass this option.
1531
+ # @return [String]
1532
+ #
1533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateReportPlanInput AWS API Documentation
1534
+ #
1535
+ class CreateReportPlanInput < Struct.new(
1536
+ :report_plan_name,
1537
+ :report_plan_description,
1538
+ :report_delivery_channel,
1539
+ :report_setting,
1540
+ :report_plan_tags,
1541
+ :idempotency_token)
1542
+ SENSITIVE = []
1543
+ include Aws::Structure
1544
+ end
1545
+
1546
+ # @!attribute [rw] report_plan_name
1547
+ # The unique name of the report plan.
1548
+ # @return [String]
1549
+ #
1550
+ # @!attribute [rw] report_plan_arn
1551
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
1552
+ # The format of the ARN depends on the resource type.
1553
+ # @return [String]
1554
+ #
1555
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateReportPlanOutput AWS API Documentation
1556
+ #
1557
+ class CreateReportPlanOutput < Struct.new(
1558
+ :report_plan_name,
1559
+ :report_plan_arn)
1560
+ SENSITIVE = []
1561
+ include Aws::Structure
1562
+ end
1563
+
1272
1564
  # @note When making an API call, you may pass DeleteBackupPlanInput
1273
1565
  # data as a hash:
1274
1566
  #
@@ -1357,8 +1649,8 @@ module Aws::Backup
1357
1649
  # @!attribute [rw] backup_vault_name
1358
1650
  # The name of a logical container where backups are stored. Backup
1359
1651
  # 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.
1652
+ # to create them and the Amazon Web Services Region where they are
1653
+ # created. They consist of lowercase letters, numbers, and hyphens.
1362
1654
  # @return [String]
1363
1655
  #
1364
1656
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupVaultAccessPolicyInput AWS API Documentation
@@ -1379,8 +1671,8 @@ module Aws::Backup
1379
1671
  # @!attribute [rw] backup_vault_name
1380
1672
  # The name of a logical container where backups are stored. Backup
1381
1673
  # 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.
1674
+ # to create them and the Amazon Web Services Region where they are
1675
+ # created. They consist of lowercase letters, numbers, and hyphens.
1384
1676
  # @return [String]
1385
1677
  #
1386
1678
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteBackupVaultInput AWS API Documentation
@@ -1413,6 +1705,25 @@ module Aws::Backup
1413
1705
  include Aws::Structure
1414
1706
  end
1415
1707
 
1708
+ # @note When making an API call, you may pass DeleteFrameworkInput
1709
+ # data as a hash:
1710
+ #
1711
+ # {
1712
+ # framework_name: "FrameworkName", # required
1713
+ # }
1714
+ #
1715
+ # @!attribute [rw] framework_name
1716
+ # The unique name of a framework.
1717
+ # @return [String]
1718
+ #
1719
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteFrameworkInput AWS API Documentation
1720
+ #
1721
+ class DeleteFrameworkInput < Struct.new(
1722
+ :framework_name)
1723
+ SENSITIVE = []
1724
+ include Aws::Structure
1725
+ end
1726
+
1416
1727
  # @note When making an API call, you may pass DeleteRecoveryPointInput
1417
1728
  # data as a hash:
1418
1729
  #
@@ -1424,8 +1735,8 @@ module Aws::Backup
1424
1735
  # @!attribute [rw] backup_vault_name
1425
1736
  # The name of a logical container where backups are stored. Backup
1426
1737
  # 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.
1738
+ # to create them and the Amazon Web Services Region where they are
1739
+ # created. They consist of lowercase letters, numbers, and hyphens.
1429
1740
  # @return [String]
1430
1741
  #
1431
1742
  # @!attribute [rw] recovery_point_arn
@@ -1443,8 +1754,27 @@ module Aws::Backup
1443
1754
  include Aws::Structure
1444
1755
  end
1445
1756
 
1446
- # A dependent AWS service or resource returned an error to the AWS
1447
- # Backup service, and the action cannot be completed.
1757
+ # @note When making an API call, you may pass DeleteReportPlanInput
1758
+ # data as a hash:
1759
+ #
1760
+ # {
1761
+ # report_plan_name: "ReportPlanName", # required
1762
+ # }
1763
+ #
1764
+ # @!attribute [rw] report_plan_name
1765
+ # The unique name of a report plan.
1766
+ # @return [String]
1767
+ #
1768
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteReportPlanInput AWS API Documentation
1769
+ #
1770
+ class DeleteReportPlanInput < Struct.new(
1771
+ :report_plan_name)
1772
+ SENSITIVE = []
1773
+ include Aws::Structure
1774
+ end
1775
+
1776
+ # A dependent Amazon Web Services service or resource returned an error
1777
+ # to the Backup service, and the action cannot be completed.
1448
1778
  #
1449
1779
  # @!attribute [rw] code
1450
1780
  # @return [String]
@@ -1477,7 +1807,7 @@ module Aws::Backup
1477
1807
  # }
1478
1808
  #
1479
1809
  # @!attribute [rw] backup_job_id
1480
- # Uniquely identifies a request to AWS Backup to back up a resource.
1810
+ # Uniquely identifies a request to Backup to back up a resource.
1481
1811
  # @return [String]
1482
1812
  #
1483
1813
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJobInput AWS API Documentation
@@ -1493,14 +1823,14 @@ module Aws::Backup
1493
1823
  # @return [String]
1494
1824
  #
1495
1825
  # @!attribute [rw] backup_job_id
1496
- # Uniquely identifies a request to AWS Backup to back up a resource.
1826
+ # Uniquely identifies a request to Backup to back up a resource.
1497
1827
  # @return [String]
1498
1828
  #
1499
1829
  # @!attribute [rw] backup_vault_name
1500
1830
  # The name of a logical container where backups are stored. Backup
1501
1831
  # 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.
1832
+ # to create them and the Amazon Web Services Region where they are
1833
+ # created. They consist of lowercase letters, numbers, and hyphens.
1504
1834
  # @return [String]
1505
1835
  #
1506
1836
  # @!attribute [rw] backup_vault_arn
@@ -1563,9 +1893,9 @@ module Aws::Backup
1563
1893
  # @return [Types::RecoveryPointCreator]
1564
1894
  #
1565
1895
  # @!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.
1896
+ # The type of Amazon Web Services resource to be backed up; for
1897
+ # example, an Amazon Elastic Block Store (Amazon EBS) volume or an
1898
+ # Amazon Relational Database Service (Amazon RDS) database.
1569
1899
  # @return [String]
1570
1900
  #
1571
1901
  # @!attribute [rw] bytes_transferred
@@ -1599,9 +1929,9 @@ module Aws::Backup
1599
1929
  #
1600
1930
  # @!attribute [rw] backup_type
1601
1931
  # 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.
1932
+ # example, if a successful Windows Volume Shadow Copy Service (VSS)
1933
+ # backup was taken, `BackupType` returns `"WindowsVSS"`. If
1934
+ # `BackupType` is empty, then the backup type was a regular backup.
1605
1935
  # @return [String]
1606
1936
  #
1607
1937
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJobOutput AWS API Documentation
@@ -1641,8 +1971,8 @@ module Aws::Backup
1641
1971
  # @!attribute [rw] backup_vault_name
1642
1972
  # The name of a logical container where backups are stored. Backup
1643
1973
  # 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.
1974
+ # to create them and the Amazon Web Services Region where they are
1975
+ # created. They consist of lowercase letters, numbers, and hyphens.
1646
1976
  # @return [String]
1647
1977
  #
1648
1978
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVaultInput AWS API Documentation
@@ -1733,6 +2063,98 @@ module Aws::Backup
1733
2063
  include Aws::Structure
1734
2064
  end
1735
2065
 
2066
+ # @note When making an API call, you may pass DescribeFrameworkInput
2067
+ # data as a hash:
2068
+ #
2069
+ # {
2070
+ # framework_name: "FrameworkName", # required
2071
+ # }
2072
+ #
2073
+ # @!attribute [rw] framework_name
2074
+ # The unique name of a framework.
2075
+ # @return [String]
2076
+ #
2077
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeFrameworkInput AWS API Documentation
2078
+ #
2079
+ class DescribeFrameworkInput < Struct.new(
2080
+ :framework_name)
2081
+ SENSITIVE = []
2082
+ include Aws::Structure
2083
+ end
2084
+
2085
+ # @!attribute [rw] framework_name
2086
+ # The unique name of a framework.
2087
+ # @return [String]
2088
+ #
2089
+ # @!attribute [rw] framework_arn
2090
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
2091
+ # The format of the ARN depends on the resource type.
2092
+ # @return [String]
2093
+ #
2094
+ # @!attribute [rw] framework_description
2095
+ # An optional description of the framework.
2096
+ # @return [String]
2097
+ #
2098
+ # @!attribute [rw] framework_controls
2099
+ # A list of the controls that make up the framework. Each control in
2100
+ # the list has a name, input parameters, and scope.
2101
+ # @return [Array<Types::FrameworkControl>]
2102
+ #
2103
+ # @!attribute [rw] creation_time
2104
+ # The date and time that a framework is created, in Unix format and
2105
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
2106
+ # accurate to milliseconds. For example, the value 1516925490.087
2107
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2108
+ # @return [Time]
2109
+ #
2110
+ # @!attribute [rw] deployment_status
2111
+ # The deployment status of a framework. The statuses are:
2112
+ #
2113
+ # `CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS |
2114
+ # COMPLETED | FAILED`
2115
+ # @return [String]
2116
+ #
2117
+ # @!attribute [rw] framework_status
2118
+ # A framework consists of one or more controls. Each control governs a
2119
+ # resource, such as backup plans, backup selections, backup vaults, or
2120
+ # recovery points. You can also turn Config recording on or off for
2121
+ # each resource. The statuses are:
2122
+ #
2123
+ # * `ACTIVE` when recording is turned on for all resources governed by
2124
+ # the framework.
2125
+ #
2126
+ # * `PARTIALLY_ACTIVE` when recording is turned off for at least one
2127
+ # resource governed by the framework.
2128
+ #
2129
+ # * `INACTIVE` when recording is turned off for all resources governed
2130
+ # by the framework.
2131
+ #
2132
+ # * `UNAVAILABLE` when Backup is unable to validate recording status
2133
+ # at this time.
2134
+ # @return [String]
2135
+ #
2136
+ # @!attribute [rw] idempotency_token
2137
+ # A customer-chosen string that you can use to distinguish between
2138
+ # otherwise identical calls to `DescribeFrameworkOutput`. Retrying a
2139
+ # successful request with the same idempotency token results in a
2140
+ # success message with no action taken.
2141
+ # @return [String]
2142
+ #
2143
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeFrameworkOutput AWS API Documentation
2144
+ #
2145
+ class DescribeFrameworkOutput < Struct.new(
2146
+ :framework_name,
2147
+ :framework_arn,
2148
+ :framework_description,
2149
+ :framework_controls,
2150
+ :creation_time,
2151
+ :deployment_status,
2152
+ :framework_status,
2153
+ :idempotency_token)
2154
+ SENSITIVE = []
2155
+ include Aws::Structure
2156
+ end
2157
+
1736
2158
  # @api private
1737
2159
  #
1738
2160
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeGlobalSettingsInput AWS API Documentation
@@ -1740,16 +2162,15 @@ module Aws::Backup
1740
2162
  class DescribeGlobalSettingsInput < Aws::EmptyStructure; end
1741
2163
 
1742
2164
  # @!attribute [rw] global_settings
1743
- # A list of resources along with the opt-in preferences for the
1744
- # account.
2165
+ # The status of the flag `isCrossAccountBackupEnabled`.
1745
2166
  # @return [Hash<String,String>]
1746
2167
  #
1747
2168
  # @!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.
2169
+ # The date and time that the flag `isCrossAccountBackupEnabled` was
2170
+ # last updated. This update is in Unix format and Coordinated
2171
+ # Universal Time (UTC). The value of `LastUpdateTime` is accurate to
2172
+ # milliseconds. For example, the value 1516925490.087 represents
2173
+ # Friday, January 26, 2018 12:11:30.087 AM.
1753
2174
  # @return [Time]
1754
2175
  #
1755
2176
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeGlobalSettingsOutput AWS API Documentation
@@ -1787,8 +2208,8 @@ module Aws::Backup
1787
2208
  # @return [String]
1788
2209
  #
1789
2210
  # @!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.
2211
+ # The type of Amazon Web Services resource saved as a recovery point;
2212
+ # for example, an Amazon EBS volume or an Amazon RDS database.
1792
2213
  # @return [String]
1793
2214
  #
1794
2215
  # @!attribute [rw] last_backup_time
@@ -1819,8 +2240,8 @@ module Aws::Backup
1819
2240
  # @!attribute [rw] backup_vault_name
1820
2241
  # The name of a logical container where backups are stored. Backup
1821
2242
  # 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.
2243
+ # to create them and the Amazon Web Services Region where they are
2244
+ # created. They consist of lowercase letters, numbers, and hyphens.
1824
2245
  # @return [String]
1825
2246
  #
1826
2247
  # @!attribute [rw] recovery_point_arn
@@ -1859,8 +2280,8 @@ module Aws::Backup
1859
2280
  # An Amazon Resource Name (ARN) that uniquely identifies the source
1860
2281
  # vault where the resource was originally backed up in; for example,
1861
2282
  # `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`.
2283
+ # recovery is restored to the same Amazon Web Services account or
2284
+ # Region, this value will be `null`.
1864
2285
  # @return [String]
1865
2286
  #
1866
2287
  # @!attribute [rw] resource_arn
@@ -1869,9 +2290,10 @@ module Aws::Backup
1869
2290
  # @return [String]
1870
2291
  #
1871
2292
  # @!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.
2293
+ # The type of Amazon Web Services resource to save as a recovery
2294
+ # point; for example, an Amazon Elastic Block Store (Amazon EBS)
2295
+ # volume or an Amazon Relational Database Service (Amazon RDS)
2296
+ # database.
1875
2297
  # @return [String]
1876
2298
  #
1877
2299
  # @!attribute [rw] created_by
@@ -1889,10 +2311,27 @@ module Aws::Backup
1889
2311
  # @!attribute [rw] status
1890
2312
  # A status code specifying the state of the recovery point.
1891
2313
  #
1892
- # <note markdown="1"> A partial status indicates that the recovery point was not
1893
- # successfully re-created and must be retried.
2314
+ # `PARTIAL` status indicates Backup could not create the recovery
2315
+ # point before the backup window closed. To increase your backup plan
2316
+ # window using the API, see [UpdateBackupPlan][1]. You can also
2317
+ # increase your backup plan window using the Console by choosing and
2318
+ # editing your backup plan.
1894
2319
  #
1895
- # </note>
2320
+ # `EXPIRED` status indicates that the recovery point has exceeded its
2321
+ # retention period, but Backup lacks permission or is otherwise unable
2322
+ # to delete it. To manually delete these recovery points, see [ Step
2323
+ # 3: Delete the recovery points][2] in the *Clean up resources*
2324
+ # section of *Getting started*.
2325
+ #
2326
+ #
2327
+ #
2328
+ # [1]: https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateBackupPlan.html
2329
+ # [2]: https://docs.aws.amazon.com/aws-backup/latest/devguide/gs-cleanup-resources.html#cleanup-backups
2330
+ # @return [String]
2331
+ #
2332
+ # @!attribute [rw] status_message
2333
+ # A status message explaining the reason for the recovery point
2334
+ # deletion failure.
1896
2335
  # @return [String]
1897
2336
  #
1898
2337
  # @!attribute [rw] creation_date
@@ -1921,7 +2360,7 @@ module Aws::Backup
1921
2360
  #
1922
2361
  # @!attribute [rw] lifecycle
1923
2362
  # The lifecycle defines when a protected resource is transitioned to
1924
- # cold storage and when it expires. AWS Backup transitions and expires
2363
+ # cold storage and when it expires. Backup transitions and expires
1925
2364
  # backups automatically according to the lifecycle that you define.
1926
2365
  #
1927
2366
  # Backups that are transitioned to cold storage must be stored in cold
@@ -1971,6 +2410,7 @@ module Aws::Backup
1971
2410
  :created_by,
1972
2411
  :iam_role_arn,
1973
2412
  :status,
2413
+ :status_message,
1974
2414
  :creation_date,
1975
2415
  :completion_date,
1976
2416
  :backup_size_in_bytes,
@@ -2003,37 +2443,106 @@ module Aws::Backup
2003
2443
  include Aws::Structure
2004
2444
  end
2005
2445
 
2006
- # @note When making an API call, you may pass DescribeRestoreJobInput
2446
+ # @note When making an API call, you may pass DescribeReportJobInput
2007
2447
  # data as a hash:
2008
2448
  #
2009
2449
  # {
2010
- # restore_job_id: "RestoreJobId", # required
2450
+ # report_job_id: "ReportJobId", # required
2011
2451
  # }
2012
2452
  #
2013
- # @!attribute [rw] restore_job_id
2014
- # Uniquely identifies the job that restores a recovery point.
2453
+ # @!attribute [rw] report_job_id
2454
+ # The identifier of the report job. A unique, randomly generated,
2455
+ # Unicode, UTF-8 encoded string that is at most 1,024 bytes long. The
2456
+ # report job ID cannot be edited.
2015
2457
  # @return [String]
2016
2458
  #
2017
- # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRestoreJobInput AWS API Documentation
2459
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeReportJobInput AWS API Documentation
2018
2460
  #
2019
- class DescribeRestoreJobInput < Struct.new(
2020
- :restore_job_id)
2461
+ class DescribeReportJobInput < Struct.new(
2462
+ :report_job_id)
2021
2463
  SENSITIVE = []
2022
2464
  include Aws::Structure
2023
2465
  end
2024
2466
 
2025
- # @!attribute [rw] account_id
2026
- # Returns the account ID that owns the restore job.
2027
- # @return [String]
2467
+ # @!attribute [rw] report_job
2468
+ # A list of information about a report job, including its completion
2469
+ # and creation times, report destination, unique report job ID, Amazon
2470
+ # Resource Name (ARN), report template, status, and status message.
2471
+ # @return [Types::ReportJob]
2028
2472
  #
2029
- # @!attribute [rw] restore_job_id
2030
- # Uniquely identifies the job that restores a recovery point.
2031
- # @return [String]
2473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeReportJobOutput AWS API Documentation
2032
2474
  #
2033
- # @!attribute [rw] recovery_point_arn
2034
- # An ARN that uniquely identifies a recovery point; for example,
2035
- # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
2036
- # @return [String]
2475
+ class DescribeReportJobOutput < Struct.new(
2476
+ :report_job)
2477
+ SENSITIVE = []
2478
+ include Aws::Structure
2479
+ end
2480
+
2481
+ # @note When making an API call, you may pass DescribeReportPlanInput
2482
+ # data as a hash:
2483
+ #
2484
+ # {
2485
+ # report_plan_name: "ReportPlanName", # required
2486
+ # }
2487
+ #
2488
+ # @!attribute [rw] report_plan_name
2489
+ # The unique name of a report plan.
2490
+ # @return [String]
2491
+ #
2492
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeReportPlanInput AWS API Documentation
2493
+ #
2494
+ class DescribeReportPlanInput < Struct.new(
2495
+ :report_plan_name)
2496
+ SENSITIVE = []
2497
+ include Aws::Structure
2498
+ end
2499
+
2500
+ # @!attribute [rw] report_plan
2501
+ # Returns details about the report plan that is specified by its name.
2502
+ # These details include the report plan's Amazon Resource Name (ARN),
2503
+ # description, settings, delivery channel, deployment status, creation
2504
+ # time, and last attempted and successful run times.
2505
+ # @return [Types::ReportPlan]
2506
+ #
2507
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeReportPlanOutput AWS API Documentation
2508
+ #
2509
+ class DescribeReportPlanOutput < Struct.new(
2510
+ :report_plan)
2511
+ SENSITIVE = []
2512
+ include Aws::Structure
2513
+ end
2514
+
2515
+ # @note When making an API call, you may pass DescribeRestoreJobInput
2516
+ # data as a hash:
2517
+ #
2518
+ # {
2519
+ # restore_job_id: "RestoreJobId", # required
2520
+ # }
2521
+ #
2522
+ # @!attribute [rw] restore_job_id
2523
+ # Uniquely identifies the job that restores a recovery point.
2524
+ # @return [String]
2525
+ #
2526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeRestoreJobInput AWS API Documentation
2527
+ #
2528
+ class DescribeRestoreJobInput < Struct.new(
2529
+ :restore_job_id)
2530
+ SENSITIVE = []
2531
+ include Aws::Structure
2532
+ end
2533
+
2534
+ # @!attribute [rw] account_id
2535
+ # Returns the account ID that owns the restore job.
2536
+ # @return [String]
2537
+ #
2538
+ # @!attribute [rw] restore_job_id
2539
+ # Uniquely identifies the job that restores a recovery point.
2540
+ # @return [String]
2541
+ #
2542
+ # @!attribute [rw] recovery_point_arn
2543
+ # An ARN that uniquely identifies a recovery point; for example,
2544
+ # `arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45`.
2545
+ # @return [String]
2037
2546
  #
2038
2547
  # @!attribute [rw] creation_date
2039
2548
  # The date and time that a restore job is created, in Unix format and
@@ -2051,7 +2560,7 @@ module Aws::Backup
2051
2560
  # @return [Time]
2052
2561
  #
2053
2562
  # @!attribute [rw] status
2054
- # Status code specifying the state of the job that is initiated by AWS
2563
+ # Status code specifying the state of the job that is initiated by
2055
2564
  # Backup to restore a recovery point.
2056
2565
  # @return [String]
2057
2566
  #
@@ -2118,12 +2627,12 @@ module Aws::Backup
2118
2627
  # }
2119
2628
  #
2120
2629
  # @!attribute [rw] backup_vault_name
2121
- # The unique name of an AWS Backup vault. Required.
2630
+ # The unique name of an Backup vault.
2122
2631
  # @return [String]
2123
2632
  #
2124
2633
  # @!attribute [rw] recovery_point_arn
2125
- # An Amazon Resource Name (ARN) that uniquely identifies an AWS Backup
2126
- # recovery point. Required.
2634
+ # An Amazon Resource Name (ARN) that uniquely identifies an Backup
2635
+ # recovery point.
2127
2636
  # @return [String]
2128
2637
  #
2129
2638
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DisassociateRecoveryPointInput AWS API Documentation
@@ -2171,6 +2680,105 @@ module Aws::Backup
2171
2680
  include Aws::Structure
2172
2681
  end
2173
2682
 
2683
+ # Contains detailed information about a framework. Frameworks contain
2684
+ # controls, which evaluate and report on your backup events and
2685
+ # resources. Frameworks generate daily compliance results.
2686
+ #
2687
+ # @!attribute [rw] framework_name
2688
+ # The unique name of a framework. This name is between 1 and 256
2689
+ # characters, starting with a letter, and consisting of letters (a-z,
2690
+ # A-Z), numbers (0-9), and underscores (\_).
2691
+ # @return [String]
2692
+ #
2693
+ # @!attribute [rw] framework_arn
2694
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
2695
+ # The format of the ARN depends on the resource type.
2696
+ # @return [String]
2697
+ #
2698
+ # @!attribute [rw] framework_description
2699
+ # An optional description of the framework with a maximum 1,024
2700
+ # characters.
2701
+ # @return [String]
2702
+ #
2703
+ # @!attribute [rw] number_of_controls
2704
+ # The number of controls contained by the framework.
2705
+ # @return [Integer]
2706
+ #
2707
+ # @!attribute [rw] creation_time
2708
+ # The date and time that a framework is created, in Unix format and
2709
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
2710
+ # accurate to milliseconds. For example, the value 1516925490.087
2711
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
2712
+ # @return [Time]
2713
+ #
2714
+ # @!attribute [rw] deployment_status
2715
+ # The deployment status of a framework. The statuses are:
2716
+ #
2717
+ # `CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS |
2718
+ # COMPLETED | FAILED`
2719
+ # @return [String]
2720
+ #
2721
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/Framework AWS API Documentation
2722
+ #
2723
+ class Framework < Struct.new(
2724
+ :framework_name,
2725
+ :framework_arn,
2726
+ :framework_description,
2727
+ :number_of_controls,
2728
+ :creation_time,
2729
+ :deployment_status)
2730
+ SENSITIVE = []
2731
+ include Aws::Structure
2732
+ end
2733
+
2734
+ # Contains detailed information about all of the controls of a
2735
+ # framework. Each framework must contain at least one control.
2736
+ #
2737
+ # @note When making an API call, you may pass FrameworkControl
2738
+ # data as a hash:
2739
+ #
2740
+ # {
2741
+ # control_name: "ControlName", # required
2742
+ # control_input_parameters: [
2743
+ # {
2744
+ # parameter_name: "ParameterName",
2745
+ # parameter_value: "ParameterValue",
2746
+ # },
2747
+ # ],
2748
+ # control_scope: {
2749
+ # compliance_resource_ids: ["string"],
2750
+ # compliance_resource_types: ["ARN"],
2751
+ # tags: {
2752
+ # "string" => "string",
2753
+ # },
2754
+ # },
2755
+ # }
2756
+ #
2757
+ # @!attribute [rw] control_name
2758
+ # The name of a control. This name is between 1 and 256 characters.
2759
+ # @return [String]
2760
+ #
2761
+ # @!attribute [rw] control_input_parameters
2762
+ # A list of `ParameterName` and `ParameterValue` pairs.
2763
+ # @return [Array<Types::ControlInputParameter>]
2764
+ #
2765
+ # @!attribute [rw] control_scope
2766
+ # The scope of a control. The control scope defines what the control
2767
+ # will evaluate. Three examples of control scopes are: a specific
2768
+ # backup plan, all backup plans with a specific tag, or all backup
2769
+ # plans. For more information, see `ControlScope`.
2770
+ # @return [Types::ControlScope]
2771
+ #
2772
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/FrameworkControl AWS API Documentation
2773
+ #
2774
+ class FrameworkControl < Struct.new(
2775
+ :control_name,
2776
+ :control_input_parameters,
2777
+ :control_scope)
2778
+ SENSITIVE = []
2779
+ include Aws::Structure
2780
+ end
2781
+
2174
2782
  # @note When making an API call, you may pass GetBackupPlanFromJSONInput
2175
2783
  # data as a hash:
2176
2784
  #
@@ -2405,8 +3013,8 @@ module Aws::Backup
2405
3013
  # @!attribute [rw] backup_vault_name
2406
3014
  # The name of a logical container where backups are stored. Backup
2407
3015
  # 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.
3016
+ # to create them and the Amazon Web Services Region where they are
3017
+ # created. They consist of lowercase letters, numbers, and hyphens.
2410
3018
  # @return [String]
2411
3019
  #
2412
3020
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupVaultAccessPolicyInput AWS API Documentation
@@ -2454,8 +3062,8 @@ module Aws::Backup
2454
3062
  # @!attribute [rw] backup_vault_name
2455
3063
  # The name of a logical container where backups are stored. Backup
2456
3064
  # 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.
3065
+ # to create them and the Amazon Web Services Region where they are
3066
+ # created. They consist of lowercase letters, numbers, and hyphens.
2459
3067
  # @return [String]
2460
3068
  #
2461
3069
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetBackupVaultNotificationsInput AWS API Documentation
@@ -2512,8 +3120,8 @@ module Aws::Backup
2512
3120
  # @!attribute [rw] backup_vault_name
2513
3121
  # The name of a logical container where backups are stored. Backup
2514
3122
  # 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.
3123
+ # to create them and the Amazon Web Services Region where they are
3124
+ # created. They consist of lowercase letters, numbers, and hyphens.
2517
3125
  # @return [String]
2518
3126
  #
2519
3127
  # @!attribute [rw] recovery_point_arn
@@ -2558,7 +3166,8 @@ module Aws::Backup
2558
3166
  end
2559
3167
 
2560
3168
  # @!attribute [rw] resource_types
2561
- # Contains a string with the supported AWS resource types:
3169
+ # Contains a string with the supported Amazon Web Services resource
3170
+ # types:
2562
3171
  #
2563
3172
  # * `DynamoDB` for Amazon DynamoDB
2564
3173
  #
@@ -2572,7 +3181,7 @@ module Aws::Backup
2572
3181
  #
2573
3182
  # * `Aurora` for Amazon Aurora
2574
3183
  #
2575
- # * `Storage Gateway` for AWS Storage Gateway
3184
+ # * `Storage Gateway` for Storage Gateway
2576
3185
  # @return [Array<String>]
2577
3186
  #
2578
3187
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetSupportedResourceTypesOutput AWS API Documentation
@@ -2635,7 +3244,7 @@ module Aws::Backup
2635
3244
  include Aws::Structure
2636
3245
  end
2637
3246
 
2638
- # AWS Backup is already performing an action on this recovery point. It
3247
+ # Backup is already performing an action on this recovery point. It
2639
3248
  # can't perform the action you requested until the first action
2640
3249
  # finishes. Try again later.
2641
3250
  #
@@ -2766,8 +3375,9 @@ module Aws::Backup
2766
3375
  # @!attribute [rw] by_backup_vault_name
2767
3376
  # Returns only backup jobs that will be stored in the specified backup
2768
3377
  # 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.
3378
+ # account used to create them and the Amazon Web Services Region where
3379
+ # they are created. They consist of lowercase letters, numbers, and
3380
+ # hyphens.
2771
3381
  # @return [String]
2772
3382
  #
2773
3383
  # @!attribute [rw] by_created_before
@@ -2794,14 +3404,14 @@ module Aws::Backup
2794
3404
  #
2795
3405
  # * `Aurora` for Amazon Aurora
2796
3406
  #
2797
- # * `Storage Gateway` for AWS Storage Gateway
3407
+ # * `Storage Gateway` for Storage Gateway
2798
3408
  # @return [String]
2799
3409
  #
2800
3410
  # @!attribute [rw] by_account_id
2801
3411
  # The account ID to list the jobs from. Returns only backup jobs
2802
3412
  # associated with the specified account ID.
2803
3413
  #
2804
- # If used from an AWS Organizations management account, passing `*`
3414
+ # If used from an Organizations management account, passing `*`
2805
3415
  # returns all jobs across the organization.
2806
3416
  # @return [String]
2807
3417
  #
@@ -3166,7 +3776,7 @@ module Aws::Backup
3166
3776
  #
3167
3777
  # * `Aurora` for Amazon Aurora
3168
3778
  #
3169
- # * `Storage Gateway` for AWS Storage Gateway
3779
+ # * `Storage Gateway` for Storage Gateway
3170
3780
  # @return [String]
3171
3781
  #
3172
3782
  # @!attribute [rw] by_destination_vault_arn
@@ -3217,6 +3827,55 @@ module Aws::Backup
3217
3827
  include Aws::Structure
3218
3828
  end
3219
3829
 
3830
+ # @note When making an API call, you may pass ListFrameworksInput
3831
+ # data as a hash:
3832
+ #
3833
+ # {
3834
+ # max_results: 1,
3835
+ # next_token: "string",
3836
+ # }
3837
+ #
3838
+ # @!attribute [rw] max_results
3839
+ # The number of desired results from 1 to 1000. Optional. If
3840
+ # unspecified, the query will return 1 MB of data.
3841
+ # @return [Integer]
3842
+ #
3843
+ # @!attribute [rw] next_token
3844
+ # An identifier that was returned from the previous call to this
3845
+ # operation, which can be used to return the next set of items in the
3846
+ # list.
3847
+ # @return [String]
3848
+ #
3849
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListFrameworksInput AWS API Documentation
3850
+ #
3851
+ class ListFrameworksInput < Struct.new(
3852
+ :max_results,
3853
+ :next_token)
3854
+ SENSITIVE = []
3855
+ include Aws::Structure
3856
+ end
3857
+
3858
+ # @!attribute [rw] frameworks
3859
+ # A list of frameworks with details for each framework, including the
3860
+ # framework name, Amazon Resource Name (ARN), description, number of
3861
+ # controls, creation time, and deployment status.
3862
+ # @return [Array<Types::Framework>]
3863
+ #
3864
+ # @!attribute [rw] next_token
3865
+ # An identifier that was returned from the previous call to this
3866
+ # operation, which can be used to return the next set of items in the
3867
+ # list.
3868
+ # @return [String]
3869
+ #
3870
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListFrameworksOutput AWS API Documentation
3871
+ #
3872
+ class ListFrameworksOutput < Struct.new(
3873
+ :frameworks,
3874
+ :next_token)
3875
+ SENSITIVE = []
3876
+ include Aws::Structure
3877
+ end
3878
+
3220
3879
  # @note When making an API call, you may pass ListProtectedResourcesInput
3221
3880
  # data as a hash:
3222
3881
  #
@@ -3246,9 +3905,9 @@ module Aws::Backup
3246
3905
  end
3247
3906
 
3248
3907
  # @!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.
3908
+ # An array of resources successfully backed up by Backup including the
3909
+ # time the resource was saved, an Amazon Resource Name (ARN) of the
3910
+ # resource, and a resource type.
3252
3911
  # @return [Array<Types::ProtectedResource>]
3253
3912
  #
3254
3913
  # @!attribute [rw] next_token
@@ -3284,8 +3943,13 @@ module Aws::Backup
3284
3943
  # @!attribute [rw] backup_vault_name
3285
3944
  # The name of a logical container where backups are stored. Backup
3286
3945
  # 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.
3946
+ # to create them and the Amazon Web Services Region where they are
3947
+ # created. They consist of lowercase letters, numbers, and hyphens.
3948
+ #
3949
+ # <note markdown="1"> Backup vault name might not be available when a supported service
3950
+ # creates the backup.
3951
+ #
3952
+ # </note>
3289
3953
  # @return [String]
3290
3954
  #
3291
3955
  # @!attribute [rw] next_token
@@ -3382,6 +4046,10 @@ module Aws::Backup
3382
4046
  #
3383
4047
  # @!attribute [rw] max_results
3384
4048
  # The maximum number of items to be returned.
4049
+ #
4050
+ # <note markdown="1"> Amazon RDS requires a value of at least 20.
4051
+ #
4052
+ # </note>
3385
4053
  # @return [Integer]
3386
4054
  #
3387
4055
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResourceInput AWS API Documentation
@@ -3404,6 +4072,11 @@ module Aws::Backup
3404
4072
  # @!attribute [rw] recovery_points
3405
4073
  # An array of objects that contain detailed information about recovery
3406
4074
  # points of the specified resource type.
4075
+ #
4076
+ # <note markdown="1"> Only Amazon EFS and Amazon EC2 recovery points return
4077
+ # BackupVaultName.
4078
+ #
4079
+ # </note>
3407
4080
  # @return [Array<Types::RecoveryPointByResource>]
3408
4081
  #
3409
4082
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResourceOutput AWS API Documentation
@@ -3415,6 +4088,137 @@ module Aws::Backup
3415
4088
  include Aws::Structure
3416
4089
  end
3417
4090
 
4091
+ # @note When making an API call, you may pass ListReportJobsInput
4092
+ # data as a hash:
4093
+ #
4094
+ # {
4095
+ # by_report_plan_name: "ReportPlanName",
4096
+ # by_creation_before: Time.now,
4097
+ # by_creation_after: Time.now,
4098
+ # by_status: "string",
4099
+ # max_results: 1,
4100
+ # next_token: "string",
4101
+ # }
4102
+ #
4103
+ # @!attribute [rw] by_report_plan_name
4104
+ # Returns only report jobs with the specified report plan name.
4105
+ # @return [String]
4106
+ #
4107
+ # @!attribute [rw] by_creation_before
4108
+ # Returns only report jobs that were created before the date and time
4109
+ # specified in Unix format and Coordinated Universal Time (UTC). For
4110
+ # example, the value 1516925490 represents Friday, January 26, 2018
4111
+ # 12:11:30 AM.
4112
+ # @return [Time]
4113
+ #
4114
+ # @!attribute [rw] by_creation_after
4115
+ # Returns only report jobs that were created after the date and time
4116
+ # specified in Unix format and Coordinated Universal Time (UTC). For
4117
+ # example, the value 1516925490 represents Friday, January 26, 2018
4118
+ # 12:11:30 AM.
4119
+ # @return [Time]
4120
+ #
4121
+ # @!attribute [rw] by_status
4122
+ # Returns only report jobs that are in the specified status. The
4123
+ # statuses are:
4124
+ #
4125
+ # `CREATED | RUNNING | COMPLETED | FAILED`
4126
+ # @return [String]
4127
+ #
4128
+ # @!attribute [rw] max_results
4129
+ # The number of desired results from 1 to 1000. Optional. If
4130
+ # unspecified, the query will return 1 MB of data.
4131
+ # @return [Integer]
4132
+ #
4133
+ # @!attribute [rw] next_token
4134
+ # An identifier that was returned from the previous call to this
4135
+ # operation, which can be used to return the next set of items in the
4136
+ # list.
4137
+ # @return [String]
4138
+ #
4139
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportJobsInput AWS API Documentation
4140
+ #
4141
+ class ListReportJobsInput < Struct.new(
4142
+ :by_report_plan_name,
4143
+ :by_creation_before,
4144
+ :by_creation_after,
4145
+ :by_status,
4146
+ :max_results,
4147
+ :next_token)
4148
+ SENSITIVE = []
4149
+ include Aws::Structure
4150
+ end
4151
+
4152
+ # @!attribute [rw] report_jobs
4153
+ # Details about your report jobs in JSON format.
4154
+ # @return [Array<Types::ReportJob>]
4155
+ #
4156
+ # @!attribute [rw] next_token
4157
+ # An identifier that was returned from the previous call to this
4158
+ # operation, which can be used to return the next set of items in the
4159
+ # list.
4160
+ # @return [String]
4161
+ #
4162
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportJobsOutput AWS API Documentation
4163
+ #
4164
+ class ListReportJobsOutput < Struct.new(
4165
+ :report_jobs,
4166
+ :next_token)
4167
+ SENSITIVE = []
4168
+ include Aws::Structure
4169
+ end
4170
+
4171
+ # @note When making an API call, you may pass ListReportPlansInput
4172
+ # data as a hash:
4173
+ #
4174
+ # {
4175
+ # max_results: 1,
4176
+ # next_token: "string",
4177
+ # }
4178
+ #
4179
+ # @!attribute [rw] max_results
4180
+ # The number of desired results from 1 to 1000. Optional. If
4181
+ # unspecified, the query will return 1 MB of data.
4182
+ # @return [Integer]
4183
+ #
4184
+ # @!attribute [rw] next_token
4185
+ # An identifier that was returned from the previous call to this
4186
+ # operation, which can be used to return the next set of items in the
4187
+ # list.
4188
+ # @return [String]
4189
+ #
4190
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportPlansInput AWS API Documentation
4191
+ #
4192
+ class ListReportPlansInput < Struct.new(
4193
+ :max_results,
4194
+ :next_token)
4195
+ SENSITIVE = []
4196
+ include Aws::Structure
4197
+ end
4198
+
4199
+ # @!attribute [rw] report_plans
4200
+ # A list of your report plans with detailed information for each plan.
4201
+ # This information includes the Amazon Resource Name (ARN), report
4202
+ # plan name, description, settings, delivery channel, deployment
4203
+ # status, creation time, and last times the report plan attempted to
4204
+ # and successfully ran.
4205
+ # @return [Array<Types::ReportPlan>]
4206
+ #
4207
+ # @!attribute [rw] next_token
4208
+ # An identifier that was returned from the previous call to this
4209
+ # operation, which can be used to return the next set of items in the
4210
+ # list.
4211
+ # @return [String]
4212
+ #
4213
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportPlansOutput AWS API Documentation
4214
+ #
4215
+ class ListReportPlansOutput < Struct.new(
4216
+ :report_plans,
4217
+ :next_token)
4218
+ SENSITIVE = []
4219
+ include Aws::Structure
4220
+ end
4221
+
3418
4222
  # @note When making an API call, you may pass ListRestoreJobsInput
3419
4223
  # data as a hash:
3420
4224
  #
@@ -3581,10 +4385,11 @@ module Aws::Backup
3581
4385
  # @return [String]
3582
4386
  #
3583
4387
  # @!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.
4388
+ # The type of Amazon Web Services resource; for example, an Amazon
4389
+ # Elastic Block Store (Amazon EBS) volume or an Amazon Relational
4390
+ # Database Service (Amazon RDS) database. For Windows Volume Shadow
4391
+ # Copy Service (VSS) backups, the only supported resource type is
4392
+ # Amazon EC2.
3588
4393
  # @return [String]
3589
4394
  #
3590
4395
  # @!attribute [rw] last_backup_time
@@ -3615,8 +4420,8 @@ module Aws::Backup
3615
4420
  # @!attribute [rw] backup_vault_name
3616
4421
  # The name of a logical container where backups are stored. Backup
3617
4422
  # 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.
4423
+ # to create them and the Amazon Web Services Region where they are
4424
+ # created. They consist of lowercase letters, numbers, and hyphens.
3620
4425
  # @return [String]
3621
4426
  #
3622
4427
  # @!attribute [rw] policy
@@ -3644,8 +4449,8 @@ module Aws::Backup
3644
4449
  # @!attribute [rw] backup_vault_name
3645
4450
  # The name of a logical container where backups are stored. Backup
3646
4451
  # 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.
4452
+ # to create them and the Amazon Web Services Region where they are
4453
+ # created. They consist of lowercase letters, numbers, and hyphens.
3649
4454
  # @return [String]
3650
4455
  #
3651
4456
  # @!attribute [rw] sns_topic_arn
@@ -3657,6 +4462,22 @@ module Aws::Backup
3657
4462
  # @!attribute [rw] backup_vault_events
3658
4463
  # An array of events that indicate the status of jobs to back up
3659
4464
  # resources to the backup vault.
4465
+ #
4466
+ # <note markdown="1"> The following events are supported:
4467
+ #
4468
+ # `BACKUP_JOB_STARTED`, `BACKUP_JOB_COMPLETED`,
4469
+ #
4470
+ # `COPY_JOB_STARTED`, `COPY_JOB_SUCCESSFUL`, `COPY_JOB_FAILED`,
4471
+ #
4472
+ # `RESTORE_JOB_STARTED`, `RESTORE_JOB_COMPLETED`, and
4473
+ # `RECOVERY_POINT_MODIFIED`.
4474
+ #
4475
+ # To find failed backup jobs, use `BACKUP_JOB_COMPLETED` and filter
4476
+ # using event metadata.
4477
+ #
4478
+ # Other events in the following list are deprecated.
4479
+ #
4480
+ # </note>
3660
4481
  # @return [Array<String>]
3661
4482
  #
3662
4483
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultNotificationsInput AWS API Documentation
@@ -3681,8 +4502,8 @@ module Aws::Backup
3681
4502
  # @!attribute [rw] backup_vault_name
3682
4503
  # The name of a logical container where backups are stored. Backup
3683
4504
  # 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.
4505
+ # to create them and the Amazon Web Services Region where they are
4506
+ # created. They consist of lowercase letters, numbers, and hyphens.
3686
4507
  # @return [String]
3687
4508
  #
3688
4509
  # @!attribute [rw] backup_vault_arn
@@ -3702,10 +4523,11 @@ module Aws::Backup
3702
4523
  # @return [String]
3703
4524
  #
3704
4525
  # @!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.
4526
+ # The type of Amazon Web Services resource saved as a recovery point;
4527
+ # for example, an Amazon Elastic Block Store (Amazon EBS) volume or an
4528
+ # Amazon Relational Database Service (Amazon RDS) database. For
4529
+ # Windows Volume Shadow Copy Service (VSS) backups, the only supported
4530
+ # resource type is Amazon EC2.
3709
4531
  # @return [String]
3710
4532
  #
3711
4533
  # @!attribute [rw] created_by
@@ -3724,6 +4546,11 @@ module Aws::Backup
3724
4546
  # A status code specifying the state of the recovery point.
3725
4547
  # @return [String]
3726
4548
  #
4549
+ # @!attribute [rw] status_message
4550
+ # A message explaining the reason of the recovery point deletion
4551
+ # failure.
4552
+ # @return [String]
4553
+ #
3727
4554
  # @!attribute [rw] creation_date
3728
4555
  # The date and time a recovery point is created, in Unix format and
3729
4556
  # Coordinated Universal Time (UTC). The value of `CreationDate` is
@@ -3749,7 +4576,7 @@ module Aws::Backup
3749
4576
  #
3750
4577
  # @!attribute [rw] lifecycle
3751
4578
  # The lifecycle defines when a protected resource is transitioned to
3752
- # cold storage and when it expires. AWS Backup transitions and expires
4579
+ # cold storage and when it expires. Backup transitions and expires
3753
4580
  # backups automatically according to the lifecycle that you define.
3754
4581
  #
3755
4582
  # Backups transitioned to cold storage must be stored in cold storage
@@ -3793,6 +4620,7 @@ module Aws::Backup
3793
4620
  :created_by,
3794
4621
  :iam_role_arn,
3795
4622
  :status,
4623
+ :status_message,
3796
4624
  :creation_date,
3797
4625
  :completion_date,
3798
4626
  :backup_size_in_bytes,
@@ -3824,6 +4652,11 @@ module Aws::Backup
3824
4652
  # A status code specifying the state of the recovery point.
3825
4653
  # @return [String]
3826
4654
  #
4655
+ # @!attribute [rw] status_message
4656
+ # A message explaining the reason of the recovery point deletion
4657
+ # failure.
4658
+ # @return [String]
4659
+ #
3827
4660
  # @!attribute [rw] encryption_key_arn
3828
4661
  # The server-side encryption key that is used to protect your backups;
3829
4662
  # for example,
@@ -3837,8 +4670,8 @@ module Aws::Backup
3837
4670
  # @!attribute [rw] backup_vault_name
3838
4671
  # The name of a logical container where backups are stored. Backup
3839
4672
  # 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.
4673
+ # to create them and the Amazon Web Services Region where they are
4674
+ # created. They consist of lowercase letters, numbers, and hyphens.
3842
4675
  # @return [String]
3843
4676
  #
3844
4677
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RecoveryPointByResource AWS API Documentation
@@ -3847,6 +4680,7 @@ module Aws::Backup
3847
4680
  :recovery_point_arn,
3848
4681
  :creation_date,
3849
4682
  :status,
4683
+ :status_message,
3850
4684
  :encryption_key_arn,
3851
4685
  :backup_size_bytes,
3852
4686
  :backup_vault_name)
@@ -3854,8 +4688,8 @@ module Aws::Backup
3854
4688
  include Aws::Structure
3855
4689
  end
3856
4690
 
3857
- # Contains information about the backup plan and rule that AWS Backup
3858
- # used to initiate the recovery point backup.
4691
+ # Contains information about the backup plan and rule that Backup used
4692
+ # to initiate the recovery point backup.
3859
4693
  #
3860
4694
  # @!attribute [rw] backup_plan_id
3861
4695
  # Uniquely identifies a backup plan.
@@ -3888,6 +4722,237 @@ module Aws::Backup
3888
4722
  include Aws::Structure
3889
4723
  end
3890
4724
 
4725
+ # Contains information from your report plan about where to deliver your
4726
+ # reports, specifically your Amazon S3 bucket name, S3 key prefix, and
4727
+ # the formats of your reports.
4728
+ #
4729
+ # @note When making an API call, you may pass ReportDeliveryChannel
4730
+ # data as a hash:
4731
+ #
4732
+ # {
4733
+ # s3_bucket_name: "string", # required
4734
+ # s3_key_prefix: "string",
4735
+ # formats: ["string"],
4736
+ # }
4737
+ #
4738
+ # @!attribute [rw] s3_bucket_name
4739
+ # The unique name of the S3 bucket that receives your reports.
4740
+ # @return [String]
4741
+ #
4742
+ # @!attribute [rw] s3_key_prefix
4743
+ # The prefix for where Backup Audit Manager delivers your reports to
4744
+ # Amazon S3. The prefix is this part of the following path:
4745
+ # s3://your-bucket-name/`prefix`/Backup/us-west-2/year/month/day/report-name.
4746
+ # If not specified, there is no prefix.
4747
+ # @return [String]
4748
+ #
4749
+ # @!attribute [rw] formats
4750
+ # A list of the format of your reports: `CSV`, `JSON`, or both. If not
4751
+ # specified, the default format is `CSV`.
4752
+ # @return [Array<String>]
4753
+ #
4754
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportDeliveryChannel AWS API Documentation
4755
+ #
4756
+ class ReportDeliveryChannel < Struct.new(
4757
+ :s3_bucket_name,
4758
+ :s3_key_prefix,
4759
+ :formats)
4760
+ SENSITIVE = []
4761
+ include Aws::Structure
4762
+ end
4763
+
4764
+ # Contains information from your report job about your report
4765
+ # destination.
4766
+ #
4767
+ # @!attribute [rw] s3_bucket_name
4768
+ # The unique name of the Amazon S3 bucket that receives your reports.
4769
+ # @return [String]
4770
+ #
4771
+ # @!attribute [rw] s3_keys
4772
+ # The object key that uniquely identifies your reports in your S3
4773
+ # bucket.
4774
+ # @return [Array<String>]
4775
+ #
4776
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportDestination AWS API Documentation
4777
+ #
4778
+ class ReportDestination < Struct.new(
4779
+ :s3_bucket_name,
4780
+ :s3_keys)
4781
+ SENSITIVE = []
4782
+ include Aws::Structure
4783
+ end
4784
+
4785
+ # Contains detailed information about a report job. A report job
4786
+ # compiles a report based on a report plan and publishes it to Amazon
4787
+ # S3.
4788
+ #
4789
+ # @!attribute [rw] report_job_id
4790
+ # The identifier for a report job. A unique, randomly generated,
4791
+ # Unicode, UTF-8 encoded string that is at most 1,024 bytes long.
4792
+ # Report job IDs cannot be edited.
4793
+ # @return [String]
4794
+ #
4795
+ # @!attribute [rw] report_plan_arn
4796
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
4797
+ # The format of the ARN depends on the resource type.
4798
+ # @return [String]
4799
+ #
4800
+ # @!attribute [rw] report_template
4801
+ # Identifies the report template for the report. Reports are built
4802
+ # using a report template. The report templates are:
4803
+ #
4804
+ # `BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
4805
+ # @return [String]
4806
+ #
4807
+ # @!attribute [rw] creation_time
4808
+ # The date and time that a report job is created, in Unix format and
4809
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
4810
+ # accurate to milliseconds. For example, the value 1516925490.087
4811
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
4812
+ # @return [Time]
4813
+ #
4814
+ # @!attribute [rw] completion_time
4815
+ # The date and time that a report job is completed, in Unix format and
4816
+ # Coordinated Universal Time (UTC). The value of `CompletionTime` is
4817
+ # accurate to milliseconds. For example, the value 1516925490.087
4818
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
4819
+ # @return [Time]
4820
+ #
4821
+ # @!attribute [rw] status
4822
+ # The status of a report job. The statuses are:
4823
+ #
4824
+ # `CREATED | RUNNING | COMPLETED | FAILED`
4825
+ #
4826
+ # `COMPLETED` means that the report is available for your review at
4827
+ # your designated destination. If the status is `FAILED`, review the
4828
+ # `StatusMessage` for the reason.
4829
+ # @return [String]
4830
+ #
4831
+ # @!attribute [rw] status_message
4832
+ # A message explaining the status of the report job.
4833
+ # @return [String]
4834
+ #
4835
+ # @!attribute [rw] report_destination
4836
+ # The S3 bucket name and S3 keys for the destination where the report
4837
+ # job publishes the report.
4838
+ # @return [Types::ReportDestination]
4839
+ #
4840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportJob AWS API Documentation
4841
+ #
4842
+ class ReportJob < Struct.new(
4843
+ :report_job_id,
4844
+ :report_plan_arn,
4845
+ :report_template,
4846
+ :creation_time,
4847
+ :completion_time,
4848
+ :status,
4849
+ :status_message,
4850
+ :report_destination)
4851
+ SENSITIVE = []
4852
+ include Aws::Structure
4853
+ end
4854
+
4855
+ # Contains detailed information about a report plan.
4856
+ #
4857
+ # @!attribute [rw] report_plan_arn
4858
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
4859
+ # The format of the ARN depends on the resource type.
4860
+ # @return [String]
4861
+ #
4862
+ # @!attribute [rw] report_plan_name
4863
+ # The unique name of the report plan. This name is between 1 and 256
4864
+ # characters starting with a letter, and consisting of letters (a-z,
4865
+ # A-Z), numbers (0-9), and underscores (\_).
4866
+ # @return [String]
4867
+ #
4868
+ # @!attribute [rw] report_plan_description
4869
+ # An optional description of the report plan with a maximum 1,024
4870
+ # characters.
4871
+ # @return [String]
4872
+ #
4873
+ # @!attribute [rw] report_setting
4874
+ # Identifies the report template for the report. Reports are built
4875
+ # using a report template. The report templates are:
4876
+ #
4877
+ # `BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
4878
+ # @return [Types::ReportSetting]
4879
+ #
4880
+ # @!attribute [rw] report_delivery_channel
4881
+ # Contains information about where and how to deliver your reports,
4882
+ # specifically your Amazon S3 bucket name, S3 key prefix, and the
4883
+ # formats of your reports.
4884
+ # @return [Types::ReportDeliveryChannel]
4885
+ #
4886
+ # @!attribute [rw] deployment_status
4887
+ # The deployment status of a report plan. The statuses are:
4888
+ #
4889
+ # `CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS |
4890
+ # COMPLETED`
4891
+ # @return [String]
4892
+ #
4893
+ # @!attribute [rw] creation_time
4894
+ # The date and time that a report plan is created, in Unix format and
4895
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
4896
+ # accurate to milliseconds. For example, the value 1516925490.087
4897
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
4898
+ # @return [Time]
4899
+ #
4900
+ # @!attribute [rw] last_attempted_execution_time
4901
+ # The date and time that a report job associated with this report plan
4902
+ # last attempted to run, in Unix format and Coordinated Universal Time
4903
+ # (UTC). The value of `LastAttemptedExecutionTime` is accurate to
4904
+ # milliseconds. For example, the value 1516925490.087 represents
4905
+ # Friday, January 26, 2018 12:11:30.087 AM.
4906
+ # @return [Time]
4907
+ #
4908
+ # @!attribute [rw] last_successful_execution_time
4909
+ # The date and time that a report job associated with this report plan
4910
+ # last successfully ran, in Unix format and Coordinated Universal Time
4911
+ # (UTC). The value of `LastSuccessfulExecutionTime` is accurate to
4912
+ # milliseconds. For example, the value 1516925490.087 represents
4913
+ # Friday, January 26, 2018 12:11:30.087 AM.
4914
+ # @return [Time]
4915
+ #
4916
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportPlan AWS API Documentation
4917
+ #
4918
+ class ReportPlan < Struct.new(
4919
+ :report_plan_arn,
4920
+ :report_plan_name,
4921
+ :report_plan_description,
4922
+ :report_setting,
4923
+ :report_delivery_channel,
4924
+ :deployment_status,
4925
+ :creation_time,
4926
+ :last_attempted_execution_time,
4927
+ :last_successful_execution_time)
4928
+ SENSITIVE = []
4929
+ include Aws::Structure
4930
+ end
4931
+
4932
+ # Contains detailed information about a report setting.
4933
+ #
4934
+ # @note When making an API call, you may pass ReportSetting
4935
+ # data as a hash:
4936
+ #
4937
+ # {
4938
+ # report_template: "string", # required
4939
+ # }
4940
+ #
4941
+ # @!attribute [rw] report_template
4942
+ # Identifies the report template for the report. Reports are built
4943
+ # using a report template. The report templates are:
4944
+ #
4945
+ # `BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
4946
+ # @return [String]
4947
+ #
4948
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ReportSetting AWS API Documentation
4949
+ #
4950
+ class ReportSetting < Struct.new(
4951
+ :report_template)
4952
+ SENSITIVE = []
4953
+ include Aws::Structure
4954
+ end
4955
+
3891
4956
  # A resource that is required for the action doesn't exist.
3892
4957
  #
3893
4958
  # @!attribute [rw] code
@@ -3943,8 +5008,8 @@ module Aws::Backup
3943
5008
  # @return [Time]
3944
5009
  #
3945
5010
  # @!attribute [rw] status
3946
- # A status code specifying the state of the job initiated by AWS
3947
- # Backup to restore a recovery point.
5011
+ # A status code specifying the state of the job initiated by Backup to
5012
+ # restore a recovery point.
3948
5013
  # @return [String]
3949
5014
  #
3950
5015
  # @!attribute [rw] status_message
@@ -3979,8 +5044,9 @@ module Aws::Backup
3979
5044
  # @!attribute [rw] resource_type
3980
5045
  # The resource type of the listed restore jobs; for example, an Amazon
3981
5046
  # 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.
5047
+ # Database Service (Amazon RDS) database. For Windows Volume Shadow
5048
+ # Copy Service (VSS) backups, the only supported resource type is
5049
+ # Amazon EC2.
3984
5050
  # @return [String]
3985
5051
  #
3986
5052
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RestoreJobsListMember AWS API Documentation
@@ -4053,8 +5119,8 @@ module Aws::Backup
4053
5119
  # @!attribute [rw] backup_vault_name
4054
5120
  # The name of a logical container where backups are stored. Backup
4055
5121
  # 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.
5122
+ # to create them and the Amazon Web Services Region where they are
5123
+ # created. They consist of lowercase letters, numbers, and hyphens.
4058
5124
  # @return [String]
4059
5125
  #
4060
5126
  # @!attribute [rw] resource_arn
@@ -4068,8 +5134,10 @@ module Aws::Backup
4068
5134
  # @return [String]
4069
5135
  #
4070
5136
  # @!attribute [rw] idempotency_token
4071
- # A customer chosen string that can be used to distinguish between
4072
- # calls to `StartBackupJob`.
5137
+ # A customer-chosen string that you can use to distinguish between
5138
+ # otherwise identical calls to `StartBackupJob`. Retrying a successful
5139
+ # request with the same idempotency token results in a success message
5140
+ # with no action taken.
4073
5141
  # @return [String]
4074
5142
  #
4075
5143
  # @!attribute [rw] start_window_minutes
@@ -4088,9 +5156,8 @@ module Aws::Backup
4088
5156
  #
4089
5157
  # @!attribute [rw] lifecycle
4090
5158
  # 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.
5159
+ # cold storage and when it expires. Backup will transition and expire
5160
+ # backups automatically according to the lifecycle that you define.
4094
5161
  #
4095
5162
  # Backups transitioned to cold storage must be stored in cold storage
4096
5163
  # for a minimum of 90 days. Therefore, the “expire after days” setting
@@ -4109,12 +5176,13 @@ module Aws::Backup
4109
5176
  #
4110
5177
  # @!attribute [rw] backup_options
4111
5178
  # Specifies the backup option for a selected resource. This option is
4112
- # only available for Windows VSS backup jobs.
5179
+ # only available for Windows Volume Shadow Copy Service (VSS) backup
5180
+ # jobs.
4113
5181
  #
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.
5182
+ # Valid values: Set to `"WindowsVSS":"enabled"` to enable the
5183
+ # `WindowsVSS` backup option and create a Windows VSS backup. Set to
5184
+ # `"WindowsVSS""disabled"` to create a regular backup. The
5185
+ # `WindowsVSS` option is not enabled by default.
4118
5186
  # @return [Hash<String,String>]
4119
5187
  #
4120
5188
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJobInput AWS API Documentation
@@ -4134,7 +5202,7 @@ module Aws::Backup
4134
5202
  end
4135
5203
 
4136
5204
  # @!attribute [rw] backup_job_id
4137
- # Uniquely identifies a request to AWS Backup to back up a resource.
5205
+ # Uniquely identifies a request to Backup to back up a resource.
4138
5206
  # @return [String]
4139
5207
  #
4140
5208
  # @!attribute [rw] recovery_point_arn
@@ -4183,8 +5251,9 @@ module Aws::Backup
4183
5251
  # @!attribute [rw] source_backup_vault_name
4184
5252
  # The name of a logical source container where backups are stored.
4185
5253
  # 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.
5254
+ # used to create them and the Amazon Web Services Region where they
5255
+ # are created. They consist of lowercase letters, numbers, and
5256
+ # hyphens.
4188
5257
  # @return [String]
4189
5258
  #
4190
5259
  # @!attribute [rw] destination_backup_vault_arn
@@ -4199,8 +5268,10 @@ module Aws::Backup
4199
5268
  # @return [String]
4200
5269
  #
4201
5270
  # @!attribute [rw] idempotency_token
4202
- # A customer chosen string that can be used to distinguish between
4203
- # calls to `StartCopyJob`.
5271
+ # A customer-chosen string that you can use to distinguish between
5272
+ # otherwise identical calls to `StartCopyJob`. Retrying a successful
5273
+ # request with the same idempotency token results in a success message
5274
+ # with no action taken.
4204
5275
  # @return [String]
4205
5276
  #
4206
5277
  # @!attribute [rw] lifecycle
@@ -4252,6 +5323,51 @@ module Aws::Backup
4252
5323
  include Aws::Structure
4253
5324
  end
4254
5325
 
5326
+ # @note When making an API call, you may pass StartReportJobInput
5327
+ # data as a hash:
5328
+ #
5329
+ # {
5330
+ # report_plan_name: "ReportPlanName", # required
5331
+ # idempotency_token: "string",
5332
+ # }
5333
+ #
5334
+ # @!attribute [rw] report_plan_name
5335
+ # The unique name of a report plan.
5336
+ # @return [String]
5337
+ #
5338
+ # @!attribute [rw] idempotency_token
5339
+ # A customer-chosen string that you can use to distinguish between
5340
+ # otherwise identical calls to `StartReportJobInput`. Retrying a
5341
+ # successful request with the same idempotency token results in a
5342
+ # success message with no action taken.
5343
+ #
5344
+ # **A suitable default value is auto-generated.** You should normally
5345
+ # not need to pass this option.
5346
+ # @return [String]
5347
+ #
5348
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartReportJobInput AWS API Documentation
5349
+ #
5350
+ class StartReportJobInput < Struct.new(
5351
+ :report_plan_name,
5352
+ :idempotency_token)
5353
+ SENSITIVE = []
5354
+ include Aws::Structure
5355
+ end
5356
+
5357
+ # @!attribute [rw] report_job_id
5358
+ # The identifier of the report job. A unique, randomly generated,
5359
+ # Unicode, UTF-8 encoded string that is at most 1,024 bytes long. The
5360
+ # report job ID cannot be edited.
5361
+ # @return [String]
5362
+ #
5363
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartReportJobOutput AWS API Documentation
5364
+ #
5365
+ class StartReportJobOutput < Struct.new(
5366
+ :report_job_id)
5367
+ SENSITIVE = []
5368
+ include Aws::Structure
5369
+ end
5370
+
4255
5371
  # @note When making an API call, you may pass StartRestoreJobInput
4256
5372
  # data as a hash:
4257
5373
  #
@@ -4285,17 +5401,17 @@ module Aws::Backup
4285
5401
  # File System (Amazon EFS) instance:
4286
5402
  #
4287
5403
  # * `file-system-id`\: The ID of the Amazon EFS file system that is
4288
- # backed up by AWS Backup. Returned in
5404
+ # backed up by Backup. Returned in
4289
5405
  # `GetRecoveryPointRestoreMetadata`.
4290
5406
  #
4291
5407
  # * `Encrypted`\: A Boolean value that, if true, specifies that the
4292
5408
  # file system is encrypted. If `KmsKeyId` is specified, `Encrypted`
4293
5409
  # must be set to `true`.
4294
5410
  #
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.
5411
+ # * `KmsKeyId`\: Specifies the Amazon Web Services KMS key that is
5412
+ # used to encrypt the restored file system. You can specify a key
5413
+ # from another Amazon Web Services account provided that key it is
5414
+ # properly shared with your account via Amazon Web Services KMS.
4299
5415
  #
4300
5416
  # * `PerformanceMode`\: Specifies the throughput mode of the file
4301
5417
  # system.
@@ -4306,7 +5422,7 @@ module Aws::Backup
4306
5422
  # * `newFileSystem`\: A Boolean value that, if true, specifies that
4307
5423
  # the recovery point is restored to a new Amazon EFS file system.
4308
5424
  #
4309
- # * `ItemsToRestore `\: An array of one to five strings where each
5425
+ # * `ItemsToRestore`\: An array of one to five strings where each
4310
5426
  # string is a file path. Use `ItemsToRestore` to restore specific
4311
5427
  # files or directories rather than the entire file system. This
4312
5428
  # parameter is optional. For example,
@@ -4314,14 +5430,16 @@ module Aws::Backup
4314
5430
  # @return [Hash<String,String>]
4315
5431
  #
4316
5432
  # @!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,
5433
+ # The Amazon Resource Name (ARN) of the IAM role that Backup uses to
5434
+ # create the target recovery point; for example,
4319
5435
  # `arn:aws:iam::123456789012:role/S3Access`.
4320
5436
  # @return [String]
4321
5437
  #
4322
5438
  # @!attribute [rw] idempotency_token
4323
- # A customer chosen string that can be used to distinguish between
4324
- # calls to `StartRestoreJob`.
5439
+ # A customer-chosen string that you can use to distinguish between
5440
+ # otherwise identical calls to `StartRestoreJob`. Retrying a
5441
+ # successful request with the same idempotency token results in a
5442
+ # success message with no action taken.
4325
5443
  # @return [String]
4326
5444
  #
4327
5445
  # @!attribute [rw] resource_type
@@ -4340,7 +5458,7 @@ module Aws::Backup
4340
5458
  #
4341
5459
  # * `Aurora` for Amazon Aurora
4342
5460
  #
4343
- # * `Storage Gateway` for AWS Storage Gateway
5461
+ # * `Storage Gateway` for Storage Gateway
4344
5462
  # @return [String]
4345
5463
  #
4346
5464
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartRestoreJobInput AWS API Documentation
@@ -4375,7 +5493,7 @@ module Aws::Backup
4375
5493
  # }
4376
5494
  #
4377
5495
  # @!attribute [rw] backup_job_id
4378
- # Uniquely identifies a request to AWS Backup to back up a resource.
5496
+ # Uniquely identifies a request to Backup to back up a resource.
4379
5497
  # @return [String]
4380
5498
  #
4381
5499
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StopBackupJobInput AWS API Documentation
@@ -4515,7 +5633,7 @@ module Aws::Backup
4515
5633
  # @return [String]
4516
5634
  #
4517
5635
  # @!attribute [rw] creation_date
4518
- # The date and time a backup plan is updated, in Unix format and
5636
+ # The date and time a backup plan is created, in Unix format and
4519
5637
  # Coordinated Universal Time (UTC). The value of `CreationDate` is
4520
5638
  # accurate to milliseconds. For example, the value 1516925490.087
4521
5639
  # represents Friday, January 26, 2018 12:11:30.087 AM.
@@ -4542,6 +5660,98 @@ module Aws::Backup
4542
5660
  include Aws::Structure
4543
5661
  end
4544
5662
 
5663
+ # @note When making an API call, you may pass UpdateFrameworkInput
5664
+ # data as a hash:
5665
+ #
5666
+ # {
5667
+ # framework_name: "FrameworkName", # required
5668
+ # framework_description: "FrameworkDescription",
5669
+ # framework_controls: [
5670
+ # {
5671
+ # control_name: "ControlName", # required
5672
+ # control_input_parameters: [
5673
+ # {
5674
+ # parameter_name: "ParameterName",
5675
+ # parameter_value: "ParameterValue",
5676
+ # },
5677
+ # ],
5678
+ # control_scope: {
5679
+ # compliance_resource_ids: ["string"],
5680
+ # compliance_resource_types: ["ARN"],
5681
+ # tags: {
5682
+ # "string" => "string",
5683
+ # },
5684
+ # },
5685
+ # },
5686
+ # ],
5687
+ # idempotency_token: "string",
5688
+ # }
5689
+ #
5690
+ # @!attribute [rw] framework_name
5691
+ # The unique name of a framework. This name is between 1 and 256
5692
+ # characters, starting with a letter, and consisting of letters (a-z,
5693
+ # A-Z), numbers (0-9), and underscores (\_).
5694
+ # @return [String]
5695
+ #
5696
+ # @!attribute [rw] framework_description
5697
+ # An optional description of the framework with a maximum 1,024
5698
+ # characters.
5699
+ # @return [String]
5700
+ #
5701
+ # @!attribute [rw] framework_controls
5702
+ # A list of the controls that make up the framework. Each control in
5703
+ # the list has a name, input parameters, and scope.
5704
+ # @return [Array<Types::FrameworkControl>]
5705
+ #
5706
+ # @!attribute [rw] idempotency_token
5707
+ # A customer-chosen string that you can use to distinguish between
5708
+ # otherwise identical calls to `UpdateFrameworkInput`. Retrying a
5709
+ # successful request with the same idempotency token results in a
5710
+ # success message with no action taken.
5711
+ #
5712
+ # **A suitable default value is auto-generated.** You should normally
5713
+ # not need to pass this option.
5714
+ # @return [String]
5715
+ #
5716
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateFrameworkInput AWS API Documentation
5717
+ #
5718
+ class UpdateFrameworkInput < Struct.new(
5719
+ :framework_name,
5720
+ :framework_description,
5721
+ :framework_controls,
5722
+ :idempotency_token)
5723
+ SENSITIVE = []
5724
+ include Aws::Structure
5725
+ end
5726
+
5727
+ # @!attribute [rw] framework_name
5728
+ # The unique name of a framework. This name is between 1 and 256
5729
+ # characters, starting with a letter, and consisting of letters (a-z,
5730
+ # A-Z), numbers (0-9), and underscores (\_).
5731
+ # @return [String]
5732
+ #
5733
+ # @!attribute [rw] framework_arn
5734
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
5735
+ # The format of the ARN depends on the resource type.
5736
+ # @return [String]
5737
+ #
5738
+ # @!attribute [rw] creation_time
5739
+ # The date and time that a framework is created, in Unix format and
5740
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
5741
+ # accurate to milliseconds. For example, the value 1516925490.087
5742
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
5743
+ # @return [Time]
5744
+ #
5745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateFrameworkOutput AWS API Documentation
5746
+ #
5747
+ class UpdateFrameworkOutput < Struct.new(
5748
+ :framework_name,
5749
+ :framework_arn,
5750
+ :creation_time)
5751
+ SENSITIVE = []
5752
+ include Aws::Structure
5753
+ end
5754
+
4545
5755
  # @note When making an API call, you may pass UpdateGlobalSettingsInput
4546
5756
  # data as a hash:
4547
5757
  #
@@ -4552,8 +5762,9 @@ module Aws::Backup
4552
5762
  # }
4553
5763
  #
4554
5764
  # @!attribute [rw] global_settings
4555
- # A list of resources along with the opt-in preferences for the
4556
- # account.
5765
+ # A value for `isCrossAccountBackupEnabled` and a Region. Example:
5766
+ # `update-global-settings --global-settings
5767
+ # isCrossAccountBackupEnabled=false --region us-west-2`.
4557
5768
  # @return [Hash<String,String>]
4558
5769
  #
4559
5770
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateGlobalSettingsInput AWS API Documentation
@@ -4579,8 +5790,8 @@ module Aws::Backup
4579
5790
  # @!attribute [rw] backup_vault_name
4580
5791
  # The name of a logical container where backups are stored. Backup
4581
5792
  # 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.
5793
+ # to create them and the Amazon Web Services Region where they are
5794
+ # created. They consist of lowercase letters, numbers, and hyphens.
4584
5795
  # @return [String]
4585
5796
  #
4586
5797
  # @!attribute [rw] recovery_point_arn
@@ -4591,7 +5802,7 @@ module Aws::Backup
4591
5802
  #
4592
5803
  # @!attribute [rw] lifecycle
4593
5804
  # The lifecycle defines when a protected resource is transitioned to
4594
- # cold storage and when it expires. AWS Backup transitions and expires
5805
+ # cold storage and when it expires. Backup transitions and expires
4595
5806
  # backups automatically according to the lifecycle that you define.
4596
5807
  #
4597
5808
  # Backups transitioned to cold storage must be stored in cold storage
@@ -4624,7 +5835,7 @@ module Aws::Backup
4624
5835
  #
4625
5836
  # @!attribute [rw] lifecycle
4626
5837
  # The lifecycle defines when a protected resource is transitioned to
4627
- # cold storage and when it expires. AWS Backup transitions and expires
5838
+ # cold storage and when it expires. Backup transitions and expires
4628
5839
  # backups automatically according to the lifecycle that you define.
4629
5840
  #
4630
5841
  # Backups transitioned to cold storage must be stored in cold storage
@@ -4675,5 +5886,94 @@ module Aws::Backup
4675
5886
  include Aws::Structure
4676
5887
  end
4677
5888
 
5889
+ # @note When making an API call, you may pass UpdateReportPlanInput
5890
+ # data as a hash:
5891
+ #
5892
+ # {
5893
+ # report_plan_name: "ReportPlanName", # required
5894
+ # report_plan_description: "ReportPlanDescription",
5895
+ # report_delivery_channel: {
5896
+ # s3_bucket_name: "string", # required
5897
+ # s3_key_prefix: "string",
5898
+ # formats: ["string"],
5899
+ # },
5900
+ # report_setting: {
5901
+ # report_template: "string", # required
5902
+ # },
5903
+ # idempotency_token: "string",
5904
+ # }
5905
+ #
5906
+ # @!attribute [rw] report_plan_name
5907
+ # The unique name of the report plan. This name is between 1 and 256
5908
+ # characters, starting with a letter, and consisting of letters (a-z,
5909
+ # A-Z), numbers (0-9), and underscores (\_).
5910
+ # @return [String]
5911
+ #
5912
+ # @!attribute [rw] report_plan_description
5913
+ # An optional description of the report plan with a maximum 1,024
5914
+ # characters.
5915
+ # @return [String]
5916
+ #
5917
+ # @!attribute [rw] report_delivery_channel
5918
+ # A structure that contains information about where to deliver your
5919
+ # reports, specifically your Amazon S3 bucket name, S3 key prefix, and
5920
+ # the formats of your reports.
5921
+ # @return [Types::ReportDeliveryChannel]
5922
+ #
5923
+ # @!attribute [rw] report_setting
5924
+ # Identifies the report template for the report. Reports are built
5925
+ # using a report template. The report templates are:
5926
+ #
5927
+ # `BACKUP_JOB_REPORT | COPY_JOB_REPORT | RESTORE_JOB_REPORT`
5928
+ # @return [Types::ReportSetting]
5929
+ #
5930
+ # @!attribute [rw] idempotency_token
5931
+ # A customer-chosen string that you can use to distinguish between
5932
+ # otherwise identical calls to `UpdateReportPlanInput`. Retrying a
5933
+ # successful request with the same idempotency token results in a
5934
+ # success message with no action taken.
5935
+ #
5936
+ # **A suitable default value is auto-generated.** You should normally
5937
+ # not need to pass this option.
5938
+ # @return [String]
5939
+ #
5940
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateReportPlanInput AWS API Documentation
5941
+ #
5942
+ class UpdateReportPlanInput < Struct.new(
5943
+ :report_plan_name,
5944
+ :report_plan_description,
5945
+ :report_delivery_channel,
5946
+ :report_setting,
5947
+ :idempotency_token)
5948
+ SENSITIVE = []
5949
+ include Aws::Structure
5950
+ end
5951
+
5952
+ # @!attribute [rw] report_plan_name
5953
+ # The unique name of the report plan.
5954
+ # @return [String]
5955
+ #
5956
+ # @!attribute [rw] report_plan_arn
5957
+ # An Amazon Resource Name (ARN) that uniquely identifies a resource.
5958
+ # The format of the ARN depends on the resource type.
5959
+ # @return [String]
5960
+ #
5961
+ # @!attribute [rw] creation_time
5962
+ # The date and time that a report plan is created, in Unix format and
5963
+ # Coordinated Universal Time (UTC). The value of `CreationTime` is
5964
+ # accurate to milliseconds. For example, the value 1516925490.087
5965
+ # represents Friday, January 26, 2018 12:11:30.087 AM.
5966
+ # @return [Time]
5967
+ #
5968
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateReportPlanOutput AWS API Documentation
5969
+ #
5970
+ class UpdateReportPlanOutput < Struct.new(
5971
+ :report_plan_name,
5972
+ :report_plan_arn,
5973
+ :creation_time)
5974
+ SENSITIVE = []
5975
+ include Aws::Structure
5976
+ end
5977
+
4678
5978
  end
4679
5979
  end