aws-sdk-shield 1.31.0 → 1.36.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -29,28 +29,40 @@ module Aws::Shield
29
29
  AttackProperties = Shapes::ListShape.new(name: 'AttackProperties')
30
30
  AttackProperty = Shapes::StructureShape.new(name: 'AttackProperty')
31
31
  AttackPropertyIdentifier = Shapes::StringShape.new(name: 'AttackPropertyIdentifier')
32
+ AttackStatisticsDataItem = Shapes::StructureShape.new(name: 'AttackStatisticsDataItem')
33
+ AttackStatisticsDataList = Shapes::ListShape.new(name: 'AttackStatisticsDataList')
32
34
  AttackSummaries = Shapes::ListShape.new(name: 'AttackSummaries')
33
35
  AttackSummary = Shapes::StructureShape.new(name: 'AttackSummary')
34
36
  AttackTimestamp = Shapes::TimestampShape.new(name: 'AttackTimestamp')
35
37
  AttackVectorDescription = Shapes::StructureShape.new(name: 'AttackVectorDescription')
36
38
  AttackVectorDescriptionList = Shapes::ListShape.new(name: 'AttackVectorDescriptionList')
39
+ AttackVolume = Shapes::StructureShape.new(name: 'AttackVolume')
40
+ AttackVolumeStatistics = Shapes::StructureShape.new(name: 'AttackVolumeStatistics')
37
41
  AutoRenew = Shapes::StringShape.new(name: 'AutoRenew')
38
42
  ContactNotes = Shapes::StringShape.new(name: 'ContactNotes')
39
43
  Contributor = Shapes::StructureShape.new(name: 'Contributor')
44
+ CreateProtectionGroupRequest = Shapes::StructureShape.new(name: 'CreateProtectionGroupRequest')
45
+ CreateProtectionGroupResponse = Shapes::StructureShape.new(name: 'CreateProtectionGroupResponse')
40
46
  CreateProtectionRequest = Shapes::StructureShape.new(name: 'CreateProtectionRequest')
41
47
  CreateProtectionResponse = Shapes::StructureShape.new(name: 'CreateProtectionResponse')
42
48
  CreateSubscriptionRequest = Shapes::StructureShape.new(name: 'CreateSubscriptionRequest')
43
49
  CreateSubscriptionResponse = Shapes::StructureShape.new(name: 'CreateSubscriptionResponse')
50
+ DeleteProtectionGroupRequest = Shapes::StructureShape.new(name: 'DeleteProtectionGroupRequest')
51
+ DeleteProtectionGroupResponse = Shapes::StructureShape.new(name: 'DeleteProtectionGroupResponse')
44
52
  DeleteProtectionRequest = Shapes::StructureShape.new(name: 'DeleteProtectionRequest')
45
53
  DeleteProtectionResponse = Shapes::StructureShape.new(name: 'DeleteProtectionResponse')
46
54
  DeleteSubscriptionRequest = Shapes::StructureShape.new(name: 'DeleteSubscriptionRequest')
47
55
  DeleteSubscriptionResponse = Shapes::StructureShape.new(name: 'DeleteSubscriptionResponse')
48
56
  DescribeAttackRequest = Shapes::StructureShape.new(name: 'DescribeAttackRequest')
49
57
  DescribeAttackResponse = Shapes::StructureShape.new(name: 'DescribeAttackResponse')
58
+ DescribeAttackStatisticsRequest = Shapes::StructureShape.new(name: 'DescribeAttackStatisticsRequest')
59
+ DescribeAttackStatisticsResponse = Shapes::StructureShape.new(name: 'DescribeAttackStatisticsResponse')
50
60
  DescribeDRTAccessRequest = Shapes::StructureShape.new(name: 'DescribeDRTAccessRequest')
51
61
  DescribeDRTAccessResponse = Shapes::StructureShape.new(name: 'DescribeDRTAccessResponse')
52
62
  DescribeEmergencyContactSettingsRequest = Shapes::StructureShape.new(name: 'DescribeEmergencyContactSettingsRequest')
53
63
  DescribeEmergencyContactSettingsResponse = Shapes::StructureShape.new(name: 'DescribeEmergencyContactSettingsResponse')
64
+ DescribeProtectionGroupRequest = Shapes::StructureShape.new(name: 'DescribeProtectionGroupRequest')
65
+ DescribeProtectionGroupResponse = Shapes::StructureShape.new(name: 'DescribeProtectionGroupResponse')
54
66
  DescribeProtectionRequest = Shapes::StructureShape.new(name: 'DescribeProtectionRequest')
55
67
  DescribeProtectionResponse = Shapes::StructureShape.new(name: 'DescribeProtectionResponse')
56
68
  DescribeSubscriptionRequest = Shapes::StructureShape.new(name: 'DescribeSubscriptionRequest')
@@ -88,8 +100,14 @@ module Aws::Shield
88
100
  LimitsExceededException = Shapes::StructureShape.new(name: 'LimitsExceededException')
89
101
  ListAttacksRequest = Shapes::StructureShape.new(name: 'ListAttacksRequest')
90
102
  ListAttacksResponse = Shapes::StructureShape.new(name: 'ListAttacksResponse')
103
+ ListProtectionGroupsRequest = Shapes::StructureShape.new(name: 'ListProtectionGroupsRequest')
104
+ ListProtectionGroupsResponse = Shapes::StructureShape.new(name: 'ListProtectionGroupsResponse')
91
105
  ListProtectionsRequest = Shapes::StructureShape.new(name: 'ListProtectionsRequest')
92
106
  ListProtectionsResponse = Shapes::StructureShape.new(name: 'ListProtectionsResponse')
107
+ ListResourcesInProtectionGroupRequest = Shapes::StructureShape.new(name: 'ListResourcesInProtectionGroupRequest')
108
+ ListResourcesInProtectionGroupResponse = Shapes::StructureShape.new(name: 'ListResourcesInProtectionGroupResponse')
109
+ ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
110
+ ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
93
111
  LockedSubscriptionException = Shapes::StructureShape.new(name: 'LockedSubscriptionException')
94
112
  LogBucket = Shapes::StringShape.new(name: 'LogBucket')
95
113
  LogBucketList = Shapes::ListShape.new(name: 'LogBucketList')
@@ -101,13 +119,25 @@ module Aws::Shield
101
119
  OptimisticLockException = Shapes::StructureShape.new(name: 'OptimisticLockException')
102
120
  PhoneNumber = Shapes::StringShape.new(name: 'PhoneNumber')
103
121
  ProactiveEngagementStatus = Shapes::StringShape.new(name: 'ProactiveEngagementStatus')
122
+ ProtectedResourceType = Shapes::StringShape.new(name: 'ProtectedResourceType')
104
123
  Protection = Shapes::StructureShape.new(name: 'Protection')
124
+ ProtectionGroup = Shapes::StructureShape.new(name: 'ProtectionGroup')
125
+ ProtectionGroupAggregation = Shapes::StringShape.new(name: 'ProtectionGroupAggregation')
126
+ ProtectionGroupArbitraryPatternLimits = Shapes::StructureShape.new(name: 'ProtectionGroupArbitraryPatternLimits')
127
+ ProtectionGroupId = Shapes::StringShape.new(name: 'ProtectionGroupId')
128
+ ProtectionGroupLimits = Shapes::StructureShape.new(name: 'ProtectionGroupLimits')
129
+ ProtectionGroupMembers = Shapes::ListShape.new(name: 'ProtectionGroupMembers')
130
+ ProtectionGroupPattern = Shapes::StringShape.new(name: 'ProtectionGroupPattern')
131
+ ProtectionGroupPatternTypeLimits = Shapes::StructureShape.new(name: 'ProtectionGroupPatternTypeLimits')
132
+ ProtectionGroups = Shapes::ListShape.new(name: 'ProtectionGroups')
105
133
  ProtectionId = Shapes::StringShape.new(name: 'ProtectionId')
134
+ ProtectionLimits = Shapes::StructureShape.new(name: 'ProtectionLimits')
106
135
  ProtectionName = Shapes::StringShape.new(name: 'ProtectionName')
107
136
  Protections = Shapes::ListShape.new(name: 'Protections')
108
137
  ResourceAlreadyExistsException = Shapes::StructureShape.new(name: 'ResourceAlreadyExistsException')
109
138
  ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
110
139
  ResourceArnFilterList = Shapes::ListShape.new(name: 'ResourceArnFilterList')
140
+ ResourceArnList = Shapes::ListShape.new(name: 'ResourceArnList')
111
141
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
112
142
  RoleArn = Shapes::StringShape.new(name: 'RoleArn')
113
143
  String = Shapes::StringShape.new(name: 'String')
@@ -115,20 +145,35 @@ module Aws::Shield
115
145
  SubResourceSummaryList = Shapes::ListShape.new(name: 'SubResourceSummaryList')
116
146
  SubResourceType = Shapes::StringShape.new(name: 'SubResourceType')
117
147
  Subscription = Shapes::StructureShape.new(name: 'Subscription')
148
+ SubscriptionLimits = Shapes::StructureShape.new(name: 'SubscriptionLimits')
118
149
  SubscriptionState = Shapes::StringShape.new(name: 'SubscriptionState')
119
150
  SummarizedAttackVector = Shapes::StructureShape.new(name: 'SummarizedAttackVector')
120
151
  SummarizedAttackVectorList = Shapes::ListShape.new(name: 'SummarizedAttackVectorList')
121
152
  SummarizedCounter = Shapes::StructureShape.new(name: 'SummarizedCounter')
122
153
  SummarizedCounterList = Shapes::ListShape.new(name: 'SummarizedCounterList')
154
+ Tag = Shapes::StructureShape.new(name: 'Tag')
155
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
156
+ TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
157
+ TagList = Shapes::ListShape.new(name: 'TagList')
158
+ TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
159
+ TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
160
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
123
161
  TimeRange = Shapes::StructureShape.new(name: 'TimeRange')
124
162
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
125
163
  Token = Shapes::StringShape.new(name: 'Token')
126
164
  TopContributors = Shapes::ListShape.new(name: 'TopContributors')
127
165
  Unit = Shapes::StringShape.new(name: 'Unit')
166
+ UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
167
+ UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
128
168
  UpdateEmergencyContactSettingsRequest = Shapes::StructureShape.new(name: 'UpdateEmergencyContactSettingsRequest')
129
169
  UpdateEmergencyContactSettingsResponse = Shapes::StructureShape.new(name: 'UpdateEmergencyContactSettingsResponse')
170
+ UpdateProtectionGroupRequest = Shapes::StructureShape.new(name: 'UpdateProtectionGroupRequest')
171
+ UpdateProtectionGroupResponse = Shapes::StructureShape.new(name: 'UpdateProtectionGroupResponse')
130
172
  UpdateSubscriptionRequest = Shapes::StructureShape.new(name: 'UpdateSubscriptionRequest')
131
173
  UpdateSubscriptionResponse = Shapes::StructureShape.new(name: 'UpdateSubscriptionResponse')
174
+ ValidationExceptionField = Shapes::StructureShape.new(name: 'ValidationExceptionField')
175
+ ValidationExceptionFieldList = Shapes::ListShape.new(name: 'ValidationExceptionFieldList')
176
+ ValidationExceptionReason = Shapes::StringShape.new(name: 'ValidationExceptionReason')
132
177
  errorMessage = Shapes::StringShape.new(name: 'errorMessage')
133
178
 
134
179
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -177,6 +222,12 @@ module Aws::Shield
177
222
  AttackProperty.add_member(:total, Shapes::ShapeRef.new(shape: Long, location_name: "Total"))
178
223
  AttackProperty.struct_class = Types::AttackProperty
179
224
 
225
+ AttackStatisticsDataItem.add_member(:attack_volume, Shapes::ShapeRef.new(shape: AttackVolume, location_name: "AttackVolume"))
226
+ AttackStatisticsDataItem.add_member(:attack_count, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "AttackCount"))
227
+ AttackStatisticsDataItem.struct_class = Types::AttackStatisticsDataItem
228
+
229
+ AttackStatisticsDataList.member = Shapes::ShapeRef.new(shape: AttackStatisticsDataItem)
230
+
180
231
  AttackSummaries.member = Shapes::ShapeRef.new(shape: AttackSummary)
181
232
 
182
233
  AttackSummary.add_member(:attack_id, Shapes::ShapeRef.new(shape: String, location_name: "AttackId"))
@@ -191,12 +242,31 @@ module Aws::Shield
191
242
 
192
243
  AttackVectorDescriptionList.member = Shapes::ShapeRef.new(shape: AttackVectorDescription)
193
244
 
245
+ AttackVolume.add_member(:bits_per_second, Shapes::ShapeRef.new(shape: AttackVolumeStatistics, location_name: "BitsPerSecond"))
246
+ AttackVolume.add_member(:packets_per_second, Shapes::ShapeRef.new(shape: AttackVolumeStatistics, location_name: "PacketsPerSecond"))
247
+ AttackVolume.add_member(:requests_per_second, Shapes::ShapeRef.new(shape: AttackVolumeStatistics, location_name: "RequestsPerSecond"))
248
+ AttackVolume.struct_class = Types::AttackVolume
249
+
250
+ AttackVolumeStatistics.add_member(:max, Shapes::ShapeRef.new(shape: Double, required: true, location_name: "Max"))
251
+ AttackVolumeStatistics.struct_class = Types::AttackVolumeStatistics
252
+
194
253
  Contributor.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
195
254
  Contributor.add_member(:value, Shapes::ShapeRef.new(shape: Long, location_name: "Value"))
196
255
  Contributor.struct_class = Types::Contributor
197
256
 
257
+ CreateProtectionGroupRequest.add_member(:protection_group_id, Shapes::ShapeRef.new(shape: ProtectionGroupId, required: true, location_name: "ProtectionGroupId"))
258
+ CreateProtectionGroupRequest.add_member(:aggregation, Shapes::ShapeRef.new(shape: ProtectionGroupAggregation, required: true, location_name: "Aggregation"))
259
+ CreateProtectionGroupRequest.add_member(:pattern, Shapes::ShapeRef.new(shape: ProtectionGroupPattern, required: true, location_name: "Pattern"))
260
+ CreateProtectionGroupRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ProtectedResourceType, location_name: "ResourceType"))
261
+ CreateProtectionGroupRequest.add_member(:members, Shapes::ShapeRef.new(shape: ProtectionGroupMembers, location_name: "Members"))
262
+ CreateProtectionGroupRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
263
+ CreateProtectionGroupRequest.struct_class = Types::CreateProtectionGroupRequest
264
+
265
+ CreateProtectionGroupResponse.struct_class = Types::CreateProtectionGroupResponse
266
+
198
267
  CreateProtectionRequest.add_member(:name, Shapes::ShapeRef.new(shape: ProtectionName, required: true, location_name: "Name"))
199
268
  CreateProtectionRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
269
+ CreateProtectionRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
200
270
  CreateProtectionRequest.struct_class = Types::CreateProtectionRequest
201
271
 
202
272
  CreateProtectionResponse.add_member(:protection_id, Shapes::ShapeRef.new(shape: ProtectionId, location_name: "ProtectionId"))
@@ -206,6 +276,11 @@ module Aws::Shield
206
276
 
207
277
  CreateSubscriptionResponse.struct_class = Types::CreateSubscriptionResponse
208
278
 
279
+ DeleteProtectionGroupRequest.add_member(:protection_group_id, Shapes::ShapeRef.new(shape: ProtectionGroupId, required: true, location_name: "ProtectionGroupId"))
280
+ DeleteProtectionGroupRequest.struct_class = Types::DeleteProtectionGroupRequest
281
+
282
+ DeleteProtectionGroupResponse.struct_class = Types::DeleteProtectionGroupResponse
283
+
209
284
  DeleteProtectionRequest.add_member(:protection_id, Shapes::ShapeRef.new(shape: ProtectionId, required: true, location_name: "ProtectionId"))
210
285
  DeleteProtectionRequest.struct_class = Types::DeleteProtectionRequest
211
286
 
@@ -221,6 +296,12 @@ module Aws::Shield
221
296
  DescribeAttackResponse.add_member(:attack, Shapes::ShapeRef.new(shape: AttackDetail, location_name: "Attack"))
222
297
  DescribeAttackResponse.struct_class = Types::DescribeAttackResponse
223
298
 
299
+ DescribeAttackStatisticsRequest.struct_class = Types::DescribeAttackStatisticsRequest
300
+
301
+ DescribeAttackStatisticsResponse.add_member(:time_range, Shapes::ShapeRef.new(shape: TimeRange, required: true, location_name: "TimeRange"))
302
+ DescribeAttackStatisticsResponse.add_member(:data_items, Shapes::ShapeRef.new(shape: AttackStatisticsDataList, required: true, location_name: "DataItems"))
303
+ DescribeAttackStatisticsResponse.struct_class = Types::DescribeAttackStatisticsResponse
304
+
224
305
  DescribeDRTAccessRequest.struct_class = Types::DescribeDRTAccessRequest
225
306
 
226
307
  DescribeDRTAccessResponse.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "RoleArn"))
@@ -232,6 +313,12 @@ module Aws::Shield
232
313
  DescribeEmergencyContactSettingsResponse.add_member(:emergency_contact_list, Shapes::ShapeRef.new(shape: EmergencyContactList, location_name: "EmergencyContactList"))
233
314
  DescribeEmergencyContactSettingsResponse.struct_class = Types::DescribeEmergencyContactSettingsResponse
234
315
 
316
+ DescribeProtectionGroupRequest.add_member(:protection_group_id, Shapes::ShapeRef.new(shape: ProtectionGroupId, required: true, location_name: "ProtectionGroupId"))
317
+ DescribeProtectionGroupRequest.struct_class = Types::DescribeProtectionGroupRequest
318
+
319
+ DescribeProtectionGroupResponse.add_member(:protection_group, Shapes::ShapeRef.new(shape: ProtectionGroup, required: true, location_name: "ProtectionGroup"))
320
+ DescribeProtectionGroupResponse.struct_class = Types::DescribeProtectionGroupResponse
321
+
235
322
  DescribeProtectionRequest.add_member(:protection_id, Shapes::ShapeRef.new(shape: ProtectionId, location_name: "ProtectionId"))
236
323
  DescribeProtectionRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ResourceArn"))
237
324
  DescribeProtectionRequest.struct_class = Types::DescribeProtectionRequest
@@ -291,6 +378,8 @@ module Aws::Shield
291
378
  InvalidPaginationTokenException.struct_class = Types::InvalidPaginationTokenException
292
379
 
293
380
  InvalidParameterException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
381
+ InvalidParameterException.add_member(:reason, Shapes::ShapeRef.new(shape: ValidationExceptionReason, location_name: "reason"))
382
+ InvalidParameterException.add_member(:fields, Shapes::ShapeRef.new(shape: ValidationExceptionFieldList, location_name: "fields"))
294
383
  InvalidParameterException.struct_class = Types::InvalidParameterException
295
384
 
296
385
  InvalidResourceException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -318,6 +407,14 @@ module Aws::Shield
318
407
  ListAttacksResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
319
408
  ListAttacksResponse.struct_class = Types::ListAttacksResponse
320
409
 
410
+ ListProtectionGroupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
411
+ ListProtectionGroupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
412
+ ListProtectionGroupsRequest.struct_class = Types::ListProtectionGroupsRequest
413
+
414
+ ListProtectionGroupsResponse.add_member(:protection_groups, Shapes::ShapeRef.new(shape: ProtectionGroups, required: true, location_name: "ProtectionGroups"))
415
+ ListProtectionGroupsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
416
+ ListProtectionGroupsResponse.struct_class = Types::ListProtectionGroupsResponse
417
+
321
418
  ListProtectionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
322
419
  ListProtectionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
323
420
  ListProtectionsRequest.struct_class = Types::ListProtectionsRequest
@@ -326,6 +423,21 @@ module Aws::Shield
326
423
  ListProtectionsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
327
424
  ListProtectionsResponse.struct_class = Types::ListProtectionsResponse
328
425
 
426
+ ListResourcesInProtectionGroupRequest.add_member(:protection_group_id, Shapes::ShapeRef.new(shape: ProtectionGroupId, required: true, location_name: "ProtectionGroupId"))
427
+ ListResourcesInProtectionGroupRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
428
+ ListResourcesInProtectionGroupRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
429
+ ListResourcesInProtectionGroupRequest.struct_class = Types::ListResourcesInProtectionGroupRequest
430
+
431
+ ListResourcesInProtectionGroupResponse.add_member(:resource_arns, Shapes::ShapeRef.new(shape: ResourceArnList, required: true, location_name: "ResourceArns"))
432
+ ListResourcesInProtectionGroupResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
433
+ ListResourcesInProtectionGroupResponse.struct_class = Types::ListResourcesInProtectionGroupResponse
434
+
435
+ ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceARN"))
436
+ ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
437
+
438
+ ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
439
+ ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
440
+
329
441
  LockedSubscriptionException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
330
442
  LockedSubscriptionException.struct_class = Types::LockedSubscriptionException
331
443
 
@@ -346,16 +458,46 @@ module Aws::Shield
346
458
  Protection.add_member(:name, Shapes::ShapeRef.new(shape: ProtectionName, location_name: "Name"))
347
459
  Protection.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ResourceArn"))
348
460
  Protection.add_member(:health_check_ids, Shapes::ShapeRef.new(shape: HealthCheckIds, location_name: "HealthCheckIds"))
461
+ Protection.add_member(:protection_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ProtectionArn"))
349
462
  Protection.struct_class = Types::Protection
350
463
 
464
+ ProtectionGroup.add_member(:protection_group_id, Shapes::ShapeRef.new(shape: ProtectionGroupId, required: true, location_name: "ProtectionGroupId"))
465
+ ProtectionGroup.add_member(:aggregation, Shapes::ShapeRef.new(shape: ProtectionGroupAggregation, required: true, location_name: "Aggregation"))
466
+ ProtectionGroup.add_member(:pattern, Shapes::ShapeRef.new(shape: ProtectionGroupPattern, required: true, location_name: "Pattern"))
467
+ ProtectionGroup.add_member(:resource_type, Shapes::ShapeRef.new(shape: ProtectedResourceType, location_name: "ResourceType"))
468
+ ProtectionGroup.add_member(:members, Shapes::ShapeRef.new(shape: ProtectionGroupMembers, required: true, location_name: "Members"))
469
+ ProtectionGroup.add_member(:protection_group_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ProtectionGroupArn"))
470
+ ProtectionGroup.struct_class = Types::ProtectionGroup
471
+
472
+ ProtectionGroupArbitraryPatternLimits.add_member(:max_members, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "MaxMembers"))
473
+ ProtectionGroupArbitraryPatternLimits.struct_class = Types::ProtectionGroupArbitraryPatternLimits
474
+
475
+ ProtectionGroupLimits.add_member(:max_protection_groups, Shapes::ShapeRef.new(shape: Long, required: true, location_name: "MaxProtectionGroups"))
476
+ ProtectionGroupLimits.add_member(:pattern_type_limits, Shapes::ShapeRef.new(shape: ProtectionGroupPatternTypeLimits, required: true, location_name: "PatternTypeLimits"))
477
+ ProtectionGroupLimits.struct_class = Types::ProtectionGroupLimits
478
+
479
+ ProtectionGroupMembers.member = Shapes::ShapeRef.new(shape: ResourceArn)
480
+
481
+ ProtectionGroupPatternTypeLimits.add_member(:arbitrary_pattern_limits, Shapes::ShapeRef.new(shape: ProtectionGroupArbitraryPatternLimits, required: true, location_name: "ArbitraryPatternLimits"))
482
+ ProtectionGroupPatternTypeLimits.struct_class = Types::ProtectionGroupPatternTypeLimits
483
+
484
+ ProtectionGroups.member = Shapes::ShapeRef.new(shape: ProtectionGroup)
485
+
486
+ ProtectionLimits.add_member(:protected_resource_type_limits, Shapes::ShapeRef.new(shape: Limits, required: true, location_name: "ProtectedResourceTypeLimits"))
487
+ ProtectionLimits.struct_class = Types::ProtectionLimits
488
+
351
489
  Protections.member = Shapes::ShapeRef.new(shape: Protection)
352
490
 
353
491
  ResourceAlreadyExistsException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
492
+ ResourceAlreadyExistsException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, location_name: "resourceType"))
354
493
  ResourceAlreadyExistsException.struct_class = Types::ResourceAlreadyExistsException
355
494
 
356
495
  ResourceArnFilterList.member = Shapes::ShapeRef.new(shape: ResourceArn)
357
496
 
497
+ ResourceArnList.member = Shapes::ShapeRef.new(shape: ResourceArn)
498
+
358
499
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
500
+ ResourceNotFoundException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, location_name: "resourceType"))
359
501
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
360
502
 
361
503
  SubResourceSummary.add_member(:type, Shapes::ShapeRef.new(shape: SubResourceType, location_name: "Type"))
@@ -372,8 +514,14 @@ module Aws::Shield
372
514
  Subscription.add_member(:auto_renew, Shapes::ShapeRef.new(shape: AutoRenew, location_name: "AutoRenew"))
373
515
  Subscription.add_member(:limits, Shapes::ShapeRef.new(shape: Limits, location_name: "Limits"))
374
516
  Subscription.add_member(:proactive_engagement_status, Shapes::ShapeRef.new(shape: ProactiveEngagementStatus, location_name: "ProactiveEngagementStatus"))
517
+ Subscription.add_member(:subscription_limits, Shapes::ShapeRef.new(shape: SubscriptionLimits, required: true, location_name: "SubscriptionLimits"))
518
+ Subscription.add_member(:subscription_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "SubscriptionArn"))
375
519
  Subscription.struct_class = Types::Subscription
376
520
 
521
+ SubscriptionLimits.add_member(:protection_limits, Shapes::ShapeRef.new(shape: ProtectionLimits, required: true, location_name: "ProtectionLimits"))
522
+ SubscriptionLimits.add_member(:protection_group_limits, Shapes::ShapeRef.new(shape: ProtectionGroupLimits, required: true, location_name: "ProtectionGroupLimits"))
523
+ SubscriptionLimits.struct_class = Types::SubscriptionLimits
524
+
377
525
  SummarizedAttackVector.add_member(:vector_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "VectorType"))
378
526
  SummarizedAttackVector.add_member(:vector_counters, Shapes::ShapeRef.new(shape: SummarizedCounterList, location_name: "VectorCounters"))
379
527
  SummarizedAttackVector.struct_class = Types::SummarizedAttackVector
@@ -390,22 +538,57 @@ module Aws::Shield
390
538
 
391
539
  SummarizedCounterList.member = Shapes::ShapeRef.new(shape: SummarizedCounter)
392
540
 
541
+ Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, location_name: "Key"))
542
+ Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, location_name: "Value"))
543
+ Tag.struct_class = Types::Tag
544
+
545
+ TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
546
+
547
+ TagList.member = Shapes::ShapeRef.new(shape: Tag)
548
+
549
+ TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceARN"))
550
+ TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "Tags"))
551
+ TagResourceRequest.struct_class = Types::TagResourceRequest
552
+
553
+ TagResourceResponse.struct_class = Types::TagResourceResponse
554
+
393
555
  TimeRange.add_member(:from_inclusive, Shapes::ShapeRef.new(shape: AttackTimestamp, location_name: "FromInclusive"))
394
556
  TimeRange.add_member(:to_exclusive, Shapes::ShapeRef.new(shape: AttackTimestamp, location_name: "ToExclusive"))
395
557
  TimeRange.struct_class = Types::TimeRange
396
558
 
397
559
  TopContributors.member = Shapes::ShapeRef.new(shape: Contributor)
398
560
 
561
+ UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceARN"))
562
+ UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "TagKeys"))
563
+ UntagResourceRequest.struct_class = Types::UntagResourceRequest
564
+
565
+ UntagResourceResponse.struct_class = Types::UntagResourceResponse
566
+
399
567
  UpdateEmergencyContactSettingsRequest.add_member(:emergency_contact_list, Shapes::ShapeRef.new(shape: EmergencyContactList, location_name: "EmergencyContactList"))
400
568
  UpdateEmergencyContactSettingsRequest.struct_class = Types::UpdateEmergencyContactSettingsRequest
401
569
 
402
570
  UpdateEmergencyContactSettingsResponse.struct_class = Types::UpdateEmergencyContactSettingsResponse
403
571
 
572
+ UpdateProtectionGroupRequest.add_member(:protection_group_id, Shapes::ShapeRef.new(shape: ProtectionGroupId, required: true, location_name: "ProtectionGroupId"))
573
+ UpdateProtectionGroupRequest.add_member(:aggregation, Shapes::ShapeRef.new(shape: ProtectionGroupAggregation, required: true, location_name: "Aggregation"))
574
+ UpdateProtectionGroupRequest.add_member(:pattern, Shapes::ShapeRef.new(shape: ProtectionGroupPattern, required: true, location_name: "Pattern"))
575
+ UpdateProtectionGroupRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ProtectedResourceType, location_name: "ResourceType"))
576
+ UpdateProtectionGroupRequest.add_member(:members, Shapes::ShapeRef.new(shape: ProtectionGroupMembers, location_name: "Members"))
577
+ UpdateProtectionGroupRequest.struct_class = Types::UpdateProtectionGroupRequest
578
+
579
+ UpdateProtectionGroupResponse.struct_class = Types::UpdateProtectionGroupResponse
580
+
404
581
  UpdateSubscriptionRequest.add_member(:auto_renew, Shapes::ShapeRef.new(shape: AutoRenew, location_name: "AutoRenew"))
405
582
  UpdateSubscriptionRequest.struct_class = Types::UpdateSubscriptionRequest
406
583
 
407
584
  UpdateSubscriptionResponse.struct_class = Types::UpdateSubscriptionResponse
408
585
 
586
+ ValidationExceptionField.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "name"))
587
+ ValidationExceptionField.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
588
+ ValidationExceptionField.struct_class = Types::ValidationExceptionField
589
+
590
+ ValidationExceptionFieldList.member = Shapes::ShapeRef.new(shape: ValidationExceptionField)
591
+
409
592
 
410
593
  # @api private
411
594
  API = Seahorse::Model::Api.new.tap do |api|
@@ -496,6 +679,20 @@ module Aws::Shield
496
679
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
497
680
  end)
498
681
 
682
+ api.add_operation(:create_protection_group, Seahorse::Model::Operation.new.tap do |o|
683
+ o.name = "CreateProtectionGroup"
684
+ o.http_method = "POST"
685
+ o.http_request_uri = "/"
686
+ o.input = Shapes::ShapeRef.new(shape: CreateProtectionGroupRequest)
687
+ o.output = Shapes::ShapeRef.new(shape: CreateProtectionGroupResponse)
688
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
689
+ o.errors << Shapes::ShapeRef.new(shape: ResourceAlreadyExistsException)
690
+ o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
691
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
692
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
693
+ o.errors << Shapes::ShapeRef.new(shape: LimitsExceededException)
694
+ end)
695
+
499
696
  api.add_operation(:create_subscription, Seahorse::Model::Operation.new.tap do |o|
500
697
  o.name = "CreateSubscription"
501
698
  o.http_method = "POST"
@@ -517,6 +714,17 @@ module Aws::Shield
517
714
  o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
518
715
  end)
519
716
 
717
+ api.add_operation(:delete_protection_group, Seahorse::Model::Operation.new.tap do |o|
718
+ o.name = "DeleteProtectionGroup"
719
+ o.http_method = "POST"
720
+ o.http_request_uri = "/"
721
+ o.input = Shapes::ShapeRef.new(shape: DeleteProtectionGroupRequest)
722
+ o.output = Shapes::ShapeRef.new(shape: DeleteProtectionGroupResponse)
723
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
724
+ o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
725
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
726
+ end)
727
+
520
728
  api.add_operation(:delete_subscription, Seahorse::Model::Operation.new.tap do |o|
521
729
  o.name = "DeleteSubscription"
522
730
  o.http_method = "POST"
@@ -539,6 +747,15 @@ module Aws::Shield
539
747
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
540
748
  end)
541
749
 
750
+ api.add_operation(:describe_attack_statistics, Seahorse::Model::Operation.new.tap do |o|
751
+ o.name = "DescribeAttackStatistics"
752
+ o.http_method = "POST"
753
+ o.http_request_uri = "/"
754
+ o.input = Shapes::ShapeRef.new(shape: DescribeAttackStatisticsRequest)
755
+ o.output = Shapes::ShapeRef.new(shape: DescribeAttackStatisticsResponse)
756
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
757
+ end)
758
+
542
759
  api.add_operation(:describe_drt_access, Seahorse::Model::Operation.new.tap do |o|
543
760
  o.name = "DescribeDRTAccess"
544
761
  o.http_method = "POST"
@@ -570,6 +787,16 @@ module Aws::Shield
570
787
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
571
788
  end)
572
789
 
790
+ api.add_operation(:describe_protection_group, Seahorse::Model::Operation.new.tap do |o|
791
+ o.name = "DescribeProtectionGroup"
792
+ o.http_method = "POST"
793
+ o.http_request_uri = "/"
794
+ o.input = Shapes::ShapeRef.new(shape: DescribeProtectionGroupRequest)
795
+ o.output = Shapes::ShapeRef.new(shape: DescribeProtectionGroupResponse)
796
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
797
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
798
+ end)
799
+
573
800
  api.add_operation(:describe_subscription, Seahorse::Model::Operation.new.tap do |o|
574
801
  o.name = "DescribeSubscription"
575
802
  o.http_method = "POST"
@@ -670,6 +897,23 @@ module Aws::Shield
670
897
  )
671
898
  end)
672
899
 
900
+ api.add_operation(:list_protection_groups, Seahorse::Model::Operation.new.tap do |o|
901
+ o.name = "ListProtectionGroups"
902
+ o.http_method = "POST"
903
+ o.http_request_uri = "/"
904
+ o.input = Shapes::ShapeRef.new(shape: ListProtectionGroupsRequest)
905
+ o.output = Shapes::ShapeRef.new(shape: ListProtectionGroupsResponse)
906
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
907
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
908
+ o.errors << Shapes::ShapeRef.new(shape: InvalidPaginationTokenException)
909
+ o[:pager] = Aws::Pager.new(
910
+ limit_key: "max_results",
911
+ tokens: {
912
+ "next_token" => "next_token"
913
+ }
914
+ )
915
+ end)
916
+
673
917
  api.add_operation(:list_protections, Seahorse::Model::Operation.new.tap do |o|
674
918
  o.name = "ListProtections"
675
919
  o.http_method = "POST"
@@ -687,6 +931,58 @@ module Aws::Shield
687
931
  )
688
932
  end)
689
933
 
934
+ api.add_operation(:list_resources_in_protection_group, Seahorse::Model::Operation.new.tap do |o|
935
+ o.name = "ListResourcesInProtectionGroup"
936
+ o.http_method = "POST"
937
+ o.http_request_uri = "/"
938
+ o.input = Shapes::ShapeRef.new(shape: ListResourcesInProtectionGroupRequest)
939
+ o.output = Shapes::ShapeRef.new(shape: ListResourcesInProtectionGroupResponse)
940
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
941
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
942
+ o.errors << Shapes::ShapeRef.new(shape: InvalidPaginationTokenException)
943
+ o[:pager] = Aws::Pager.new(
944
+ limit_key: "max_results",
945
+ tokens: {
946
+ "next_token" => "next_token"
947
+ }
948
+ )
949
+ end)
950
+
951
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
952
+ o.name = "ListTagsForResource"
953
+ o.http_method = "POST"
954
+ o.http_request_uri = "/"
955
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
956
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
957
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
958
+ o.errors << Shapes::ShapeRef.new(shape: InvalidResourceException)
959
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
960
+ end)
961
+
962
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
963
+ o.name = "TagResource"
964
+ o.http_method = "POST"
965
+ o.http_request_uri = "/"
966
+ o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
967
+ o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
968
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
969
+ o.errors << Shapes::ShapeRef.new(shape: InvalidResourceException)
970
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
971
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
972
+ end)
973
+
974
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
975
+ o.name = "UntagResource"
976
+ o.http_method = "POST"
977
+ o.http_request_uri = "/"
978
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
979
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
980
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
981
+ o.errors << Shapes::ShapeRef.new(shape: InvalidResourceException)
982
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
983
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
984
+ end)
985
+
690
986
  api.add_operation(:update_emergency_contact_settings, Seahorse::Model::Operation.new.tap do |o|
691
987
  o.name = "UpdateEmergencyContactSettings"
692
988
  o.http_method = "POST"
@@ -699,6 +995,18 @@ module Aws::Shield
699
995
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
700
996
  end)
701
997
 
998
+ api.add_operation(:update_protection_group, Seahorse::Model::Operation.new.tap do |o|
999
+ o.name = "UpdateProtectionGroup"
1000
+ o.http_method = "POST"
1001
+ o.http_request_uri = "/"
1002
+ o.input = Shapes::ShapeRef.new(shape: UpdateProtectionGroupRequest)
1003
+ o.output = Shapes::ShapeRef.new(shape: UpdateProtectionGroupResponse)
1004
+ o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1005
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1006
+ o.errors << Shapes::ShapeRef.new(shape: OptimisticLockException)
1007
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1008
+ end)
1009
+
702
1010
  api.add_operation(:update_subscription, Seahorse::Model::Operation.new.tap do |o|
703
1011
  o.name = "UpdateSubscription"
704
1012
  o.http_method = "POST"