aws-sdk-iot 1.63.0 → 1.64.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.
@@ -89,7 +89,6 @@ module Aws::IoT
89
89
  AuditMitigationActionExecutionMetadata = Shapes::StructureShape.new(name: 'AuditMitigationActionExecutionMetadata')
90
90
  AuditMitigationActionExecutionMetadataList = Shapes::ListShape.new(name: 'AuditMitigationActionExecutionMetadataList')
91
91
  AuditMitigationActionsExecutionStatus = Shapes::StringShape.new(name: 'AuditMitigationActionsExecutionStatus')
92
- AuditMitigationActionsTaskId = Shapes::StringShape.new(name: 'AuditMitigationActionsTaskId')
93
92
  AuditMitigationActionsTaskMetadata = Shapes::StructureShape.new(name: 'AuditMitigationActionsTaskMetadata')
94
93
  AuditMitigationActionsTaskMetadataList = Shapes::ListShape.new(name: 'AuditMitigationActionsTaskMetadataList')
95
94
  AuditMitigationActionsTaskStatistics = Shapes::MapShape.new(name: 'AuditMitigationActionsTaskStatistics')
@@ -144,7 +143,10 @@ module Aws::IoT
144
143
  BatchMode = Shapes::BooleanShape.new(name: 'BatchMode')
145
144
  Behavior = Shapes::StructureShape.new(name: 'Behavior')
146
145
  BehaviorCriteria = Shapes::StructureShape.new(name: 'BehaviorCriteria')
146
+ BehaviorCriteriaType = Shapes::StringShape.new(name: 'BehaviorCriteriaType')
147
147
  BehaviorMetric = Shapes::StringShape.new(name: 'BehaviorMetric')
148
+ BehaviorModelTrainingSummaries = Shapes::ListShape.new(name: 'BehaviorModelTrainingSummaries')
149
+ BehaviorModelTrainingSummary = Shapes::StructureShape.new(name: 'BehaviorModelTrainingSummary')
148
150
  BehaviorName = Shapes::StringShape.new(name: 'BehaviorName')
149
151
  Behaviors = Shapes::ListShape.new(name: 'Behaviors')
150
152
  BillingGroupArn = Shapes::StringShape.new(name: 'BillingGroupArn')
@@ -167,6 +169,8 @@ module Aws::IoT
167
169
  CancelAuditTaskRequest = Shapes::StructureShape.new(name: 'CancelAuditTaskRequest')
168
170
  CancelAuditTaskResponse = Shapes::StructureShape.new(name: 'CancelAuditTaskResponse')
169
171
  CancelCertificateTransferRequest = Shapes::StructureShape.new(name: 'CancelCertificateTransferRequest')
172
+ CancelDetectMitigationActionsTaskRequest = Shapes::StructureShape.new(name: 'CancelDetectMitigationActionsTaskRequest')
173
+ CancelDetectMitigationActionsTaskResponse = Shapes::StructureShape.new(name: 'CancelDetectMitigationActionsTaskResponse')
170
174
  CancelJobExecutionRequest = Shapes::StructureShape.new(name: 'CancelJobExecutionRequest')
171
175
  CancelJobRequest = Shapes::StructureShape.new(name: 'CancelJobRequest')
172
176
  CancelJobResponse = Shapes::StructureShape.new(name: 'CancelJobResponse')
@@ -196,6 +200,7 @@ module Aws::IoT
196
200
  ClearDefaultAuthorizerRequest = Shapes::StructureShape.new(name: 'ClearDefaultAuthorizerRequest')
197
201
  ClearDefaultAuthorizerResponse = Shapes::StructureShape.new(name: 'ClearDefaultAuthorizerResponse')
198
202
  ClientId = Shapes::StringShape.new(name: 'ClientId')
203
+ ClientProperties = Shapes::MapShape.new(name: 'ClientProperties')
199
204
  ClientRequestToken = Shapes::StringShape.new(name: 'ClientRequestToken')
200
205
  CloudwatchAlarmAction = Shapes::StructureShape.new(name: 'CloudwatchAlarmAction')
201
206
  CloudwatchLogsAction = Shapes::StructureShape.new(name: 'CloudwatchLogsAction')
@@ -208,6 +213,7 @@ module Aws::IoT
208
213
  Comment = Shapes::StringShape.new(name: 'Comment')
209
214
  ComparisonOperator = Shapes::StringShape.new(name: 'ComparisonOperator')
210
215
  CompliantChecksCount = Shapes::IntegerShape.new(name: 'CompliantChecksCount')
216
+ ConfidenceLevel = Shapes::StringShape.new(name: 'ConfidenceLevel')
211
217
  Configuration = Shapes::StructureShape.new(name: 'Configuration')
212
218
  ConfirmTopicRuleDestinationRequest = Shapes::StructureShape.new(name: 'ConfirmTopicRuleDestinationRequest')
213
219
  ConfirmTopicRuleDestinationResponse = Shapes::StructureShape.new(name: 'ConfirmTopicRuleDestinationResponse')
@@ -225,6 +231,8 @@ module Aws::IoT
225
231
  CreateBillingGroupResponse = Shapes::StructureShape.new(name: 'CreateBillingGroupResponse')
226
232
  CreateCertificateFromCsrRequest = Shapes::StructureShape.new(name: 'CreateCertificateFromCsrRequest')
227
233
  CreateCertificateFromCsrResponse = Shapes::StructureShape.new(name: 'CreateCertificateFromCsrResponse')
234
+ CreateCustomMetricRequest = Shapes::StructureShape.new(name: 'CreateCustomMetricRequest')
235
+ CreateCustomMetricResponse = Shapes::StructureShape.new(name: 'CreateCustomMetricResponse')
228
236
  CreateDimensionRequest = Shapes::StructureShape.new(name: 'CreateDimensionRequest')
229
237
  CreateDimensionResponse = Shapes::StructureShape.new(name: 'CreateDimensionResponse')
230
238
  CreateDomainConfigurationRequest = Shapes::StructureShape.new(name: 'CreateDomainConfigurationRequest')
@@ -270,7 +278,11 @@ module Aws::IoT
270
278
  CreationDate = Shapes::TimestampShape.new(name: 'CreationDate')
271
279
  CredentialDurationSeconds = Shapes::IntegerShape.new(name: 'CredentialDurationSeconds')
272
280
  CustomCodeSigning = Shapes::StructureShape.new(name: 'CustomCodeSigning')
281
+ CustomMetricArn = Shapes::StringShape.new(name: 'CustomMetricArn')
282
+ CustomMetricDisplayName = Shapes::StringShape.new(name: 'CustomMetricDisplayName')
283
+ CustomMetricType = Shapes::StringShape.new(name: 'CustomMetricType')
273
284
  CustomerVersion = Shapes::IntegerShape.new(name: 'CustomerVersion')
285
+ DataCollectionPercentage = Shapes::FloatShape.new(name: 'DataCollectionPercentage')
274
286
  DateType = Shapes::TimestampShape.new(name: 'DateType')
275
287
  DayOfMonth = Shapes::StringShape.new(name: 'DayOfMonth')
276
288
  DayOfWeek = Shapes::StringShape.new(name: 'DayOfWeek')
@@ -289,6 +301,8 @@ module Aws::IoT
289
301
  DeleteCACertificateResponse = Shapes::StructureShape.new(name: 'DeleteCACertificateResponse')
290
302
  DeleteCertificateRequest = Shapes::StructureShape.new(name: 'DeleteCertificateRequest')
291
303
  DeleteConflictException = Shapes::StructureShape.new(name: 'DeleteConflictException')
304
+ DeleteCustomMetricRequest = Shapes::StructureShape.new(name: 'DeleteCustomMetricRequest')
305
+ DeleteCustomMetricResponse = Shapes::StructureShape.new(name: 'DeleteCustomMetricResponse')
292
306
  DeleteDimensionRequest = Shapes::StructureShape.new(name: 'DeleteDimensionRequest')
293
307
  DeleteDimensionResponse = Shapes::StructureShape.new(name: 'DeleteDimensionResponse')
294
308
  DeleteDomainConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteDomainConfigurationRequest')
@@ -352,8 +366,12 @@ module Aws::IoT
352
366
  DescribeCACertificateResponse = Shapes::StructureShape.new(name: 'DescribeCACertificateResponse')
353
367
  DescribeCertificateRequest = Shapes::StructureShape.new(name: 'DescribeCertificateRequest')
354
368
  DescribeCertificateResponse = Shapes::StructureShape.new(name: 'DescribeCertificateResponse')
369
+ DescribeCustomMetricRequest = Shapes::StructureShape.new(name: 'DescribeCustomMetricRequest')
370
+ DescribeCustomMetricResponse = Shapes::StructureShape.new(name: 'DescribeCustomMetricResponse')
355
371
  DescribeDefaultAuthorizerRequest = Shapes::StructureShape.new(name: 'DescribeDefaultAuthorizerRequest')
356
372
  DescribeDefaultAuthorizerResponse = Shapes::StructureShape.new(name: 'DescribeDefaultAuthorizerResponse')
373
+ DescribeDetectMitigationActionsTaskRequest = Shapes::StructureShape.new(name: 'DescribeDetectMitigationActionsTaskRequest')
374
+ DescribeDetectMitigationActionsTaskResponse = Shapes::StructureShape.new(name: 'DescribeDetectMitigationActionsTaskResponse')
357
375
  DescribeDimensionRequest = Shapes::StructureShape.new(name: 'DescribeDimensionRequest')
358
376
  DescribeDimensionResponse = Shapes::StructureShape.new(name: 'DescribeDimensionResponse')
359
377
  DescribeDomainConfigurationRequest = Shapes::StructureShape.new(name: 'DescribeDomainConfigurationRequest')
@@ -401,6 +419,16 @@ module Aws::IoT
401
419
  DetailsKey = Shapes::StringShape.new(name: 'DetailsKey')
402
420
  DetailsMap = Shapes::MapShape.new(name: 'DetailsMap')
403
421
  DetailsValue = Shapes::StringShape.new(name: 'DetailsValue')
422
+ DetectMitigationActionExecution = Shapes::StructureShape.new(name: 'DetectMitigationActionExecution')
423
+ DetectMitigationActionExecutionErrorCode = Shapes::StringShape.new(name: 'DetectMitigationActionExecutionErrorCode')
424
+ DetectMitigationActionExecutionList = Shapes::ListShape.new(name: 'DetectMitigationActionExecutionList')
425
+ DetectMitigationActionExecutionStatus = Shapes::StringShape.new(name: 'DetectMitigationActionExecutionStatus')
426
+ DetectMitigationActionsTaskStatistics = Shapes::StructureShape.new(name: 'DetectMitigationActionsTaskStatistics')
427
+ DetectMitigationActionsTaskStatus = Shapes::StringShape.new(name: 'DetectMitigationActionsTaskStatus')
428
+ DetectMitigationActionsTaskSummary = Shapes::StructureShape.new(name: 'DetectMitigationActionsTaskSummary')
429
+ DetectMitigationActionsTaskSummaryList = Shapes::ListShape.new(name: 'DetectMitigationActionsTaskSummaryList')
430
+ DetectMitigationActionsTaskTarget = Shapes::StructureShape.new(name: 'DetectMitigationActionsTaskTarget')
431
+ DetectMitigationActionsToExecuteList = Shapes::ListShape.new(name: 'DetectMitigationActionsToExecuteList')
404
432
  DeviceCertificateUpdateAction = Shapes::StringShape.new(name: 'DeviceCertificateUpdateAction')
405
433
  DeviceDefenderThingName = Shapes::StringShape.new(name: 'DeviceDefenderThingName')
406
434
  DimensionArn = Shapes::StringShape.new(name: 'DimensionArn')
@@ -472,6 +500,9 @@ module Aws::IoT
472
500
  Forced = Shapes::BooleanShape.new(name: 'Forced')
473
501
  FunctionArn = Shapes::StringShape.new(name: 'FunctionArn')
474
502
  GenerationId = Shapes::StringShape.new(name: 'GenerationId')
503
+ GenericLongValue = Shapes::IntegerShape.new(name: 'GenericLongValue')
504
+ GetBehaviorModelTrainingSummariesRequest = Shapes::StructureShape.new(name: 'GetBehaviorModelTrainingSummariesRequest')
505
+ GetBehaviorModelTrainingSummariesResponse = Shapes::StructureShape.new(name: 'GetBehaviorModelTrainingSummariesResponse')
475
506
  GetCardinalityRequest = Shapes::StructureShape.new(name: 'GetCardinalityRequest')
476
507
  GetCardinalityResponse = Shapes::StructureShape.new(name: 'GetCardinalityResponse')
477
508
  GetEffectivePoliciesRequest = Shapes::StructureShape.new(name: 'GetEffectivePoliciesRequest')
@@ -566,6 +597,7 @@ module Aws::IoT
566
597
  JobSummaryList = Shapes::ListShape.new(name: 'JobSummaryList')
567
598
  JobTargets = Shapes::ListShape.new(name: 'JobTargets')
568
599
  JsonDocument = Shapes::StringShape.new(name: 'JsonDocument')
600
+ KafkaAction = Shapes::StructureShape.new(name: 'KafkaAction')
569
601
  Key = Shapes::StringShape.new(name: 'Key')
570
602
  KeyName = Shapes::StringShape.new(name: 'KeyName')
571
603
  KeyPair = Shapes::StructureShape.new(name: 'KeyPair')
@@ -574,6 +606,7 @@ module Aws::IoT
574
606
  LambdaAction = Shapes::StructureShape.new(name: 'LambdaAction')
575
607
  LaserMaxResults = Shapes::IntegerShape.new(name: 'LaserMaxResults')
576
608
  LastModifiedDate = Shapes::TimestampShape.new(name: 'LastModifiedDate')
609
+ LastUpdatedAtDate = Shapes::TimestampShape.new(name: 'LastUpdatedAtDate')
577
610
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
578
611
  ListActiveViolationsRequest = Shapes::StructureShape.new(name: 'ListActiveViolationsRequest')
579
612
  ListActiveViolationsResponse = Shapes::StructureShape.new(name: 'ListActiveViolationsResponse')
@@ -599,6 +632,12 @@ module Aws::IoT
599
632
  ListCertificatesByCAResponse = Shapes::StructureShape.new(name: 'ListCertificatesByCAResponse')
600
633
  ListCertificatesRequest = Shapes::StructureShape.new(name: 'ListCertificatesRequest')
601
634
  ListCertificatesResponse = Shapes::StructureShape.new(name: 'ListCertificatesResponse')
635
+ ListCustomMetricsRequest = Shapes::StructureShape.new(name: 'ListCustomMetricsRequest')
636
+ ListCustomMetricsResponse = Shapes::StructureShape.new(name: 'ListCustomMetricsResponse')
637
+ ListDetectMitigationActionsExecutionsRequest = Shapes::StructureShape.new(name: 'ListDetectMitigationActionsExecutionsRequest')
638
+ ListDetectMitigationActionsExecutionsResponse = Shapes::StructureShape.new(name: 'ListDetectMitigationActionsExecutionsResponse')
639
+ ListDetectMitigationActionsTasksRequest = Shapes::StructureShape.new(name: 'ListDetectMitigationActionsTasksRequest')
640
+ ListDetectMitigationActionsTasksResponse = Shapes::StructureShape.new(name: 'ListDetectMitigationActionsTasksResponse')
602
641
  ListDimensionsRequest = Shapes::StructureShape.new(name: 'ListDimensionsRequest')
603
642
  ListDimensionsResponse = Shapes::StructureShape.new(name: 'ListDimensionsResponse')
604
643
  ListDomainConfigurationsRequest = Shapes::StructureShape.new(name: 'ListDomainConfigurationsRequest')
@@ -641,6 +680,7 @@ module Aws::IoT
641
680
  ListSecurityProfilesResponse = Shapes::StructureShape.new(name: 'ListSecurityProfilesResponse')
642
681
  ListStreamsRequest = Shapes::StructureShape.new(name: 'ListStreamsRequest')
643
682
  ListStreamsResponse = Shapes::StructureShape.new(name: 'ListStreamsResponse')
683
+ ListSuppressedAlerts = Shapes::BooleanShape.new(name: 'ListSuppressedAlerts')
644
684
  ListSuppressedFindings = Shapes::BooleanShape.new(name: 'ListSuppressedFindings')
645
685
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
646
686
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
@@ -682,6 +722,7 @@ module Aws::IoT
682
722
  LogTargetName = Shapes::StringShape.new(name: 'LogTargetName')
683
723
  LogTargetType = Shapes::StringShape.new(name: 'LogTargetType')
684
724
  LoggingOptionsPayload = Shapes::StructureShape.new(name: 'LoggingOptionsPayload')
725
+ MachineLearningDetectionConfig = Shapes::StructureShape.new(name: 'MachineLearningDetectionConfig')
685
726
  MalformedPolicyException = Shapes::StructureShape.new(name: 'MalformedPolicyException')
686
727
  Marker = Shapes::StringShape.new(name: 'Marker')
687
728
  MaxJobExecutionsPerMin = Shapes::IntegerShape.new(name: 'MaxJobExecutionsPerMin')
@@ -692,6 +733,8 @@ module Aws::IoT
692
733
  MessageFormat = Shapes::StringShape.new(name: 'MessageFormat')
693
734
  MessageId = Shapes::StringShape.new(name: 'MessageId')
694
735
  MetricDimension = Shapes::StructureShape.new(name: 'MetricDimension')
736
+ MetricName = Shapes::StringShape.new(name: 'MetricName')
737
+ MetricNames = Shapes::ListShape.new(name: 'MetricNames')
695
738
  MetricToRetain = Shapes::StructureShape.new(name: 'MetricToRetain')
696
739
  MetricValue = Shapes::StructureShape.new(name: 'MetricValue')
697
740
  Minimum = Shapes::FloatShape.new(name: 'Minimum')
@@ -708,6 +751,8 @@ module Aws::IoT
708
751
  MitigationActionNameList = Shapes::ListShape.new(name: 'MitigationActionNameList')
709
752
  MitigationActionParams = Shapes::StructureShape.new(name: 'MitigationActionParams')
710
753
  MitigationActionType = Shapes::StringShape.new(name: 'MitigationActionType')
754
+ MitigationActionsTaskId = Shapes::StringShape.new(name: 'MitigationActionsTaskId')
755
+ ModelStatus = Shapes::StringShape.new(name: 'ModelStatus')
711
756
  MqttClientId = Shapes::StringShape.new(name: 'MqttClientId')
712
757
  MqttContext = Shapes::StructureShape.new(name: 'MqttContext')
713
758
  MqttPassword = Shapes::BlobShape.new(name: 'MqttPassword')
@@ -718,6 +763,9 @@ module Aws::IoT
718
763
  NonCompliantResource = Shapes::StructureShape.new(name: 'NonCompliantResource')
719
764
  NonCompliantResourcesCount = Shapes::IntegerShape.new(name: 'NonCompliantResourcesCount')
720
765
  NotConfiguredException = Shapes::StructureShape.new(name: 'NotConfiguredException')
766
+ NullableBoolean = Shapes::BooleanShape.new(name: 'NullableBoolean')
767
+ Number = Shapes::FloatShape.new(name: 'Number')
768
+ NumberList = Shapes::ListShape.new(name: 'NumberList')
721
769
  NumberOfThings = Shapes::IntegerShape.new(name: 'NumberOfThings')
722
770
  OTAUpdateArn = Shapes::StringShape.new(name: 'OTAUpdateArn')
723
771
  OTAUpdateDescription = Shapes::StringShape.new(name: 'OTAUpdateDescription')
@@ -765,6 +813,7 @@ module Aws::IoT
765
813
  Ports = Shapes::ListShape.new(name: 'Ports')
766
814
  Prefix = Shapes::StringShape.new(name: 'Prefix')
767
815
  PresignedUrlConfig = Shapes::StructureShape.new(name: 'PresignedUrlConfig')
816
+ PrimitiveBoolean = Shapes::BooleanShape.new(name: 'PrimitiveBoolean')
768
817
  Principal = Shapes::StringShape.new(name: 'Principal')
769
818
  PrincipalArn = Shapes::StringShape.new(name: 'PrincipalArn')
770
819
  PrincipalId = Shapes::StringShape.new(name: 'PrincipalId')
@@ -870,6 +919,8 @@ module Aws::IoT
870
919
  SearchIndexResponse = Shapes::StructureShape.new(name: 'SearchIndexResponse')
871
920
  SearchableAttributes = Shapes::ListShape.new(name: 'SearchableAttributes')
872
921
  Seconds = Shapes::IntegerShape.new(name: 'Seconds')
922
+ SecurityGroupId = Shapes::StringShape.new(name: 'SecurityGroupId')
923
+ SecurityGroupList = Shapes::ListShape.new(name: 'SecurityGroupList')
873
924
  SecurityProfileArn = Shapes::StringShape.new(name: 'SecurityProfileArn')
874
925
  SecurityProfileDescription = Shapes::StringShape.new(name: 'SecurityProfileDescription')
875
926
  SecurityProfileIdentifier = Shapes::StructureShape.new(name: 'SecurityProfileIdentifier')
@@ -913,6 +964,8 @@ module Aws::IoT
913
964
  SqsAction = Shapes::StructureShape.new(name: 'SqsAction')
914
965
  StartAuditMitigationActionsTaskRequest = Shapes::StructureShape.new(name: 'StartAuditMitigationActionsTaskRequest')
915
966
  StartAuditMitigationActionsTaskResponse = Shapes::StructureShape.new(name: 'StartAuditMitigationActionsTaskResponse')
967
+ StartDetectMitigationActionsTaskRequest = Shapes::StructureShape.new(name: 'StartDetectMitigationActionsTaskRequest')
968
+ StartDetectMitigationActionsTaskResponse = Shapes::StructureShape.new(name: 'StartDetectMitigationActionsTaskResponse')
916
969
  StartOnDemandAuditTaskRequest = Shapes::StructureShape.new(name: 'StartOnDemandAuditTaskRequest')
917
970
  StartOnDemandAuditTaskResponse = Shapes::StructureShape.new(name: 'StartOnDemandAuditTaskResponse')
918
971
  StartSigningJobParameter = Shapes::StructureShape.new(name: 'StartSigningJobParameter')
@@ -940,11 +993,15 @@ module Aws::IoT
940
993
  StreamVersion = Shapes::IntegerShape.new(name: 'StreamVersion')
941
994
  StreamsSummary = Shapes::ListShape.new(name: 'StreamsSummary')
942
995
  String = Shapes::StringShape.new(name: 'String')
996
+ StringList = Shapes::ListShape.new(name: 'StringList')
943
997
  StringMap = Shapes::MapShape.new(name: 'StringMap')
998
+ SubnetId = Shapes::StringShape.new(name: 'SubnetId')
999
+ SubnetIdList = Shapes::ListShape.new(name: 'SubnetIdList')
944
1000
  SucceededFindingsCount = Shapes::IntegerShape.new(name: 'SucceededFindingsCount')
945
1001
  SucceededThings = Shapes::IntegerShape.new(name: 'SucceededThings')
946
1002
  Sum = Shapes::FloatShape.new(name: 'Sum')
947
1003
  SumOfSquares = Shapes::FloatShape.new(name: 'SumOfSquares')
1004
+ SuppressAlerts = Shapes::BooleanShape.new(name: 'SuppressAlerts')
948
1005
  SuppressIndefinitely = Shapes::BooleanShape.new(name: 'SuppressIndefinitely')
949
1006
  SuppressedNonCompliantResourcesCount = Shapes::IntegerShape.new(name: 'SuppressedNonCompliantResourcesCount')
950
1007
  TableName = Shapes::StringShape.new(name: 'TableName')
@@ -959,6 +1016,7 @@ module Aws::IoT
959
1016
  TargetArn = Shapes::StringShape.new(name: 'TargetArn')
960
1017
  TargetAuditCheckNames = Shapes::ListShape.new(name: 'TargetAuditCheckNames')
961
1018
  TargetSelection = Shapes::StringShape.new(name: 'TargetSelection')
1019
+ TargetViolationIdsForDetectMitigationActions = Shapes::ListShape.new(name: 'TargetViolationIdsForDetectMitigationActions')
962
1020
  Targets = Shapes::ListShape.new(name: 'Targets')
963
1021
  TaskAlreadyExistsException = Shapes::StructureShape.new(name: 'TaskAlreadyExistsException')
964
1022
  TaskId = Shapes::StringShape.new(name: 'TaskId')
@@ -1022,6 +1080,7 @@ module Aws::IoT
1022
1080
  TimestreamTimestamp = Shapes::StructureShape.new(name: 'TimestreamTimestamp')
1023
1081
  TimestreamTimestampUnit = Shapes::StringShape.new(name: 'TimestreamTimestampUnit')
1024
1082
  TimestreamTimestampValue = Shapes::StringShape.new(name: 'TimestreamTimestampValue')
1083
+ TinyMaxResults = Shapes::IntegerShape.new(name: 'TinyMaxResults')
1025
1084
  TlsContext = Shapes::StructureShape.new(name: 'TlsContext')
1026
1085
  Token = Shapes::StringShape.new(name: 'Token')
1027
1086
  TokenKeyName = Shapes::StringShape.new(name: 'TokenKeyName')
@@ -1063,6 +1122,8 @@ module Aws::IoT
1063
1122
  UpdateCACertificateParams = Shapes::StructureShape.new(name: 'UpdateCACertificateParams')
1064
1123
  UpdateCACertificateRequest = Shapes::StructureShape.new(name: 'UpdateCACertificateRequest')
1065
1124
  UpdateCertificateRequest = Shapes::StructureShape.new(name: 'UpdateCertificateRequest')
1125
+ UpdateCustomMetricRequest = Shapes::StructureShape.new(name: 'UpdateCustomMetricRequest')
1126
+ UpdateCustomMetricResponse = Shapes::StructureShape.new(name: 'UpdateCustomMetricResponse')
1066
1127
  UpdateDeviceCertificateParams = Shapes::StructureShape.new(name: 'UpdateDeviceCertificateParams')
1067
1128
  UpdateDimensionRequest = Shapes::StructureShape.new(name: 'UpdateDimensionRequest')
1068
1129
  UpdateDimensionResponse = Shapes::StructureShape.new(name: 'UpdateDimensionResponse')
@@ -1109,13 +1170,20 @@ module Aws::IoT
1109
1170
  VersionNumber = Shapes::IntegerShape.new(name: 'VersionNumber')
1110
1171
  VersionsLimitExceededException = Shapes::StructureShape.new(name: 'VersionsLimitExceededException')
1111
1172
  ViolationEvent = Shapes::StructureShape.new(name: 'ViolationEvent')
1173
+ ViolationEventAdditionalInfo = Shapes::StructureShape.new(name: 'ViolationEventAdditionalInfo')
1174
+ ViolationEventOccurrenceRange = Shapes::StructureShape.new(name: 'ViolationEventOccurrenceRange')
1112
1175
  ViolationEventType = Shapes::StringShape.new(name: 'ViolationEventType')
1113
1176
  ViolationEvents = Shapes::ListShape.new(name: 'ViolationEvents')
1114
1177
  ViolationId = Shapes::StringShape.new(name: 'ViolationId')
1178
+ VpcDestinationConfiguration = Shapes::StructureShape.new(name: 'VpcDestinationConfiguration')
1179
+ VpcDestinationProperties = Shapes::StructureShape.new(name: 'VpcDestinationProperties')
1180
+ VpcDestinationSummary = Shapes::StructureShape.new(name: 'VpcDestinationSummary')
1181
+ VpcId = Shapes::StringShape.new(name: 'VpcId')
1115
1182
  WaitingForDataCollectionChecksCount = Shapes::IntegerShape.new(name: 'WaitingForDataCollectionChecksCount')
1116
1183
  errorMessage = Shapes::StringShape.new(name: 'errorMessage')
1117
1184
  resourceArn = Shapes::StringShape.new(name: 'resourceArn')
1118
1185
  resourceId = Shapes::StringShape.new(name: 'resourceId')
1186
+ stringValue = Shapes::StringShape.new(name: 'stringValue')
1119
1187
 
1120
1188
  AbortConfig.add_member(:criteria_list, Shapes::ShapeRef.new(shape: AbortCriteriaList, required: true, location_name: "criteriaList"))
1121
1189
  AbortConfig.struct_class = Types::AbortConfig
@@ -1152,6 +1220,7 @@ module Aws::IoT
1152
1220
  Action.add_member(:step_functions, Shapes::ShapeRef.new(shape: StepFunctionsAction, location_name: "stepFunctions"))
1153
1221
  Action.add_member(:timestream, Shapes::ShapeRef.new(shape: TimestreamAction, location_name: "timestream"))
1154
1222
  Action.add_member(:http, Shapes::ShapeRef.new(shape: HttpAction, location_name: "http"))
1223
+ Action.add_member(:kafka, Shapes::ShapeRef.new(shape: KafkaAction, location_name: "kafka"))
1155
1224
  Action.struct_class = Types::Action
1156
1225
 
1157
1226
  ActionList.member = Shapes::ShapeRef.new(shape: Action)
@@ -1161,6 +1230,7 @@ module Aws::IoT
1161
1230
  ActiveViolation.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location_name: "securityProfileName"))
1162
1231
  ActiveViolation.add_member(:behavior, Shapes::ShapeRef.new(shape: Behavior, location_name: "behavior"))
1163
1232
  ActiveViolation.add_member(:last_violation_value, Shapes::ShapeRef.new(shape: MetricValue, location_name: "lastViolationValue"))
1233
+ ActiveViolation.add_member(:violation_event_additional_info, Shapes::ShapeRef.new(shape: ViolationEventAdditionalInfo, location_name: "violationEventAdditionalInfo"))
1164
1234
  ActiveViolation.add_member(:last_violation_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastViolationTime"))
1165
1235
  ActiveViolation.add_member(:violation_start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "violationStartTime"))
1166
1236
  ActiveViolation.struct_class = Types::ActiveViolation
@@ -1302,7 +1372,7 @@ module Aws::IoT
1302
1372
 
1303
1373
  AuditFindings.member = Shapes::ShapeRef.new(shape: AuditFinding)
1304
1374
 
1305
- AuditMitigationActionExecutionMetadata.add_member(:task_id, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskId, location_name: "taskId"))
1375
+ AuditMitigationActionExecutionMetadata.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, location_name: "taskId"))
1306
1376
  AuditMitigationActionExecutionMetadata.add_member(:finding_id, Shapes::ShapeRef.new(shape: FindingId, location_name: "findingId"))
1307
1377
  AuditMitigationActionExecutionMetadata.add_member(:action_name, Shapes::ShapeRef.new(shape: MitigationActionName, location_name: "actionName"))
1308
1378
  AuditMitigationActionExecutionMetadata.add_member(:action_id, Shapes::ShapeRef.new(shape: MitigationActionId, location_name: "actionId"))
@@ -1315,7 +1385,7 @@ module Aws::IoT
1315
1385
 
1316
1386
  AuditMitigationActionExecutionMetadataList.member = Shapes::ShapeRef.new(shape: AuditMitigationActionExecutionMetadata)
1317
1387
 
1318
- AuditMitigationActionsTaskMetadata.add_member(:task_id, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskId, location_name: "taskId"))
1388
+ AuditMitigationActionsTaskMetadata.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, location_name: "taskId"))
1319
1389
  AuditMitigationActionsTaskMetadata.add_member(:start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "startTime"))
1320
1390
  AuditMitigationActionsTaskMetadata.add_member(:task_status, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskStatus, location_name: "taskStatus"))
1321
1391
  AuditMitigationActionsTaskMetadata.struct_class = Types::AuditMitigationActionsTaskMetadata
@@ -1424,6 +1494,7 @@ module Aws::IoT
1424
1494
  Behavior.add_member(:metric, Shapes::ShapeRef.new(shape: BehaviorMetric, location_name: "metric"))
1425
1495
  Behavior.add_member(:metric_dimension, Shapes::ShapeRef.new(shape: MetricDimension, location_name: "metricDimension"))
1426
1496
  Behavior.add_member(:criteria, Shapes::ShapeRef.new(shape: BehaviorCriteria, location_name: "criteria"))
1497
+ Behavior.add_member(:suppress_alerts, Shapes::ShapeRef.new(shape: SuppressAlerts, location_name: "suppressAlerts"))
1427
1498
  Behavior.struct_class = Types::Behavior
1428
1499
 
1429
1500
  BehaviorCriteria.add_member(:comparison_operator, Shapes::ShapeRef.new(shape: ComparisonOperator, location_name: "comparisonOperator"))
@@ -1432,8 +1503,19 @@ module Aws::IoT
1432
1503
  BehaviorCriteria.add_member(:consecutive_datapoints_to_alarm, Shapes::ShapeRef.new(shape: ConsecutiveDatapointsToAlarm, location_name: "consecutiveDatapointsToAlarm"))
1433
1504
  BehaviorCriteria.add_member(:consecutive_datapoints_to_clear, Shapes::ShapeRef.new(shape: ConsecutiveDatapointsToClear, location_name: "consecutiveDatapointsToClear"))
1434
1505
  BehaviorCriteria.add_member(:statistical_threshold, Shapes::ShapeRef.new(shape: StatisticalThreshold, location_name: "statisticalThreshold"))
1506
+ BehaviorCriteria.add_member(:ml_detection_config, Shapes::ShapeRef.new(shape: MachineLearningDetectionConfig, location_name: "mlDetectionConfig"))
1435
1507
  BehaviorCriteria.struct_class = Types::BehaviorCriteria
1436
1508
 
1509
+ BehaviorModelTrainingSummaries.member = Shapes::ShapeRef.new(shape: BehaviorModelTrainingSummary)
1510
+
1511
+ BehaviorModelTrainingSummary.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location_name: "securityProfileName"))
1512
+ BehaviorModelTrainingSummary.add_member(:behavior_name, Shapes::ShapeRef.new(shape: BehaviorName, location_name: "behaviorName"))
1513
+ BehaviorModelTrainingSummary.add_member(:training_data_collection_start_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "trainingDataCollectionStartDate"))
1514
+ BehaviorModelTrainingSummary.add_member(:model_status, Shapes::ShapeRef.new(shape: ModelStatus, location_name: "modelStatus"))
1515
+ BehaviorModelTrainingSummary.add_member(:datapoints_collection_percentage, Shapes::ShapeRef.new(shape: DataCollectionPercentage, location_name: "datapointsCollectionPercentage"))
1516
+ BehaviorModelTrainingSummary.add_member(:last_model_refresh_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastModelRefreshDate"))
1517
+ BehaviorModelTrainingSummary.struct_class = Types::BehaviorModelTrainingSummary
1518
+
1437
1519
  Behaviors.member = Shapes::ShapeRef.new(shape: Behavior)
1438
1520
 
1439
1521
  BillingGroupMetadata.add_member(:creation_date, Shapes::ShapeRef.new(shape: CreationDate, location_name: "creationDate"))
@@ -1465,7 +1547,7 @@ module Aws::IoT
1465
1547
 
1466
1548
  CACertificates.member = Shapes::ShapeRef.new(shape: CACertificate)
1467
1549
 
1468
- CancelAuditMitigationActionsTaskRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskId, required: true, location: "uri", location_name: "taskId"))
1550
+ CancelAuditMitigationActionsTaskRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, required: true, location: "uri", location_name: "taskId"))
1469
1551
  CancelAuditMitigationActionsTaskRequest.struct_class = Types::CancelAuditMitigationActionsTaskRequest
1470
1552
 
1471
1553
  CancelAuditMitigationActionsTaskResponse.struct_class = Types::CancelAuditMitigationActionsTaskResponse
@@ -1478,6 +1560,11 @@ module Aws::IoT
1478
1560
  CancelCertificateTransferRequest.add_member(:certificate_id, Shapes::ShapeRef.new(shape: CertificateId, required: true, location: "uri", location_name: "certificateId"))
1479
1561
  CancelCertificateTransferRequest.struct_class = Types::CancelCertificateTransferRequest
1480
1562
 
1563
+ CancelDetectMitigationActionsTaskRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, required: true, location: "uri", location_name: "taskId"))
1564
+ CancelDetectMitigationActionsTaskRequest.struct_class = Types::CancelDetectMitigationActionsTaskRequest
1565
+
1566
+ CancelDetectMitigationActionsTaskResponse.struct_class = Types::CancelDetectMitigationActionsTaskResponse
1567
+
1481
1568
  CancelJobExecutionRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, required: true, location: "uri", location_name: "jobId"))
1482
1569
  CancelJobExecutionRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
1483
1570
  CancelJobExecutionRequest.add_member(:force, Shapes::ShapeRef.new(shape: ForceFlag, location: "querystring", location_name: "force"))
@@ -1540,6 +1627,9 @@ module Aws::IoT
1540
1627
 
1541
1628
  ClearDefaultAuthorizerResponse.struct_class = Types::ClearDefaultAuthorizerResponse
1542
1629
 
1630
+ ClientProperties.key = Shapes::ShapeRef.new(shape: String)
1631
+ ClientProperties.value = Shapes::ShapeRef.new(shape: String)
1632
+
1543
1633
  CloudwatchAlarmAction.add_member(:role_arn, Shapes::ShapeRef.new(shape: AwsArn, required: true, location_name: "roleArn"))
1544
1634
  CloudwatchAlarmAction.add_member(:alarm_name, Shapes::ShapeRef.new(shape: AlarmName, required: true, location_name: "alarmName"))
1545
1635
  CloudwatchAlarmAction.add_member(:state_reason, Shapes::ShapeRef.new(shape: StateReason, required: true, location_name: "stateReason"))
@@ -1623,6 +1713,17 @@ module Aws::IoT
1623
1713
  CreateCertificateFromCsrResponse.add_member(:certificate_pem, Shapes::ShapeRef.new(shape: CertificatePem, location_name: "certificatePem"))
1624
1714
  CreateCertificateFromCsrResponse.struct_class = Types::CreateCertificateFromCsrResponse
1625
1715
 
1716
+ CreateCustomMetricRequest.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location: "uri", location_name: "metricName"))
1717
+ CreateCustomMetricRequest.add_member(:display_name, Shapes::ShapeRef.new(shape: CustomMetricDisplayName, location_name: "displayName"))
1718
+ CreateCustomMetricRequest.add_member(:metric_type, Shapes::ShapeRef.new(shape: CustomMetricType, required: true, location_name: "metricType"))
1719
+ CreateCustomMetricRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
1720
+ CreateCustomMetricRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ClientRequestToken, required: true, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
1721
+ CreateCustomMetricRequest.struct_class = Types::CreateCustomMetricRequest
1722
+
1723
+ CreateCustomMetricResponse.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, location_name: "metricName"))
1724
+ CreateCustomMetricResponse.add_member(:metric_arn, Shapes::ShapeRef.new(shape: CustomMetricArn, location_name: "metricArn"))
1725
+ CreateCustomMetricResponse.struct_class = Types::CreateCustomMetricResponse
1726
+
1626
1727
  CreateDimensionRequest.add_member(:name, Shapes::ShapeRef.new(shape: DimensionName, required: true, location: "uri", location_name: "name"))
1627
1728
  CreateDimensionRequest.add_member(:type, Shapes::ShapeRef.new(shape: DimensionType, required: true, location_name: "type"))
1628
1729
  CreateDimensionRequest.add_member(:string_values, Shapes::ShapeRef.new(shape: DimensionStringValues, required: true, location_name: "stringValues"))
@@ -1911,6 +2012,11 @@ module Aws::IoT
1911
2012
  DeleteConflictException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
1912
2013
  DeleteConflictException.struct_class = Types::DeleteConflictException
1913
2014
 
2015
+ DeleteCustomMetricRequest.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location: "uri", location_name: "metricName"))
2016
+ DeleteCustomMetricRequest.struct_class = Types::DeleteCustomMetricRequest
2017
+
2018
+ DeleteCustomMetricResponse.struct_class = Types::DeleteCustomMetricResponse
2019
+
1914
2020
  DeleteDimensionRequest.add_member(:name, Shapes::ShapeRef.new(shape: DimensionName, required: true, location: "uri", location_name: "name"))
1915
2021
  DeleteDimensionRequest.struct_class = Types::DeleteDimensionRequest
1916
2022
 
@@ -2046,7 +2152,7 @@ module Aws::IoT
2046
2152
  DescribeAuditFindingResponse.add_member(:finding, Shapes::ShapeRef.new(shape: AuditFinding, location_name: "finding"))
2047
2153
  DescribeAuditFindingResponse.struct_class = Types::DescribeAuditFindingResponse
2048
2154
 
2049
- DescribeAuditMitigationActionsTaskRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskId, required: true, location: "uri", location_name: "taskId"))
2155
+ DescribeAuditMitigationActionsTaskRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, required: true, location: "uri", location_name: "taskId"))
2050
2156
  DescribeAuditMitigationActionsTaskRequest.struct_class = Types::DescribeAuditMitigationActionsTaskRequest
2051
2157
 
2052
2158
  DescribeAuditMitigationActionsTaskResponse.add_member(:task_status, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskStatus, location_name: "taskStatus"))
@@ -2110,11 +2216,28 @@ module Aws::IoT
2110
2216
  DescribeCertificateResponse.add_member(:certificate_description, Shapes::ShapeRef.new(shape: CertificateDescription, location_name: "certificateDescription"))
2111
2217
  DescribeCertificateResponse.struct_class = Types::DescribeCertificateResponse
2112
2218
 
2219
+ DescribeCustomMetricRequest.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location: "uri", location_name: "metricName"))
2220
+ DescribeCustomMetricRequest.struct_class = Types::DescribeCustomMetricRequest
2221
+
2222
+ DescribeCustomMetricResponse.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, location_name: "metricName"))
2223
+ DescribeCustomMetricResponse.add_member(:metric_arn, Shapes::ShapeRef.new(shape: CustomMetricArn, location_name: "metricArn"))
2224
+ DescribeCustomMetricResponse.add_member(:metric_type, Shapes::ShapeRef.new(shape: CustomMetricType, location_name: "metricType"))
2225
+ DescribeCustomMetricResponse.add_member(:display_name, Shapes::ShapeRef.new(shape: CustomMetricDisplayName, location_name: "displayName"))
2226
+ DescribeCustomMetricResponse.add_member(:creation_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDate"))
2227
+ DescribeCustomMetricResponse.add_member(:last_modified_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastModifiedDate"))
2228
+ DescribeCustomMetricResponse.struct_class = Types::DescribeCustomMetricResponse
2229
+
2113
2230
  DescribeDefaultAuthorizerRequest.struct_class = Types::DescribeDefaultAuthorizerRequest
2114
2231
 
2115
2232
  DescribeDefaultAuthorizerResponse.add_member(:authorizer_description, Shapes::ShapeRef.new(shape: AuthorizerDescription, location_name: "authorizerDescription"))
2116
2233
  DescribeDefaultAuthorizerResponse.struct_class = Types::DescribeDefaultAuthorizerResponse
2117
2234
 
2235
+ DescribeDetectMitigationActionsTaskRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, required: true, location: "uri", location_name: "taskId"))
2236
+ DescribeDetectMitigationActionsTaskRequest.struct_class = Types::DescribeDetectMitigationActionsTaskRequest
2237
+
2238
+ DescribeDetectMitigationActionsTaskResponse.add_member(:task_summary, Shapes::ShapeRef.new(shape: DetectMitigationActionsTaskSummary, location_name: "taskSummary"))
2239
+ DescribeDetectMitigationActionsTaskResponse.struct_class = Types::DescribeDetectMitigationActionsTaskResponse
2240
+
2118
2241
  DescribeDimensionRequest.add_member(:name, Shapes::ShapeRef.new(shape: DimensionName, required: true, location: "uri", location_name: "name"))
2119
2242
  DescribeDimensionRequest.struct_class = Types::DescribeDimensionRequest
2120
2243
 
@@ -2333,6 +2456,45 @@ module Aws::IoT
2333
2456
  DetailsMap.key = Shapes::ShapeRef.new(shape: DetailsKey)
2334
2457
  DetailsMap.value = Shapes::ShapeRef.new(shape: DetailsValue)
2335
2458
 
2459
+ DetectMitigationActionExecution.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, location_name: "taskId"))
2460
+ DetectMitigationActionExecution.add_member(:violation_id, Shapes::ShapeRef.new(shape: ViolationId, location_name: "violationId"))
2461
+ DetectMitigationActionExecution.add_member(:action_name, Shapes::ShapeRef.new(shape: MitigationActionName, location_name: "actionName"))
2462
+ DetectMitigationActionExecution.add_member(:thing_name, Shapes::ShapeRef.new(shape: DeviceDefenderThingName, location_name: "thingName"))
2463
+ DetectMitigationActionExecution.add_member(:execution_start_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "executionStartDate"))
2464
+ DetectMitigationActionExecution.add_member(:execution_end_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "executionEndDate"))
2465
+ DetectMitigationActionExecution.add_member(:status, Shapes::ShapeRef.new(shape: DetectMitigationActionExecutionStatus, location_name: "status"))
2466
+ DetectMitigationActionExecution.add_member(:error_code, Shapes::ShapeRef.new(shape: DetectMitigationActionExecutionErrorCode, location_name: "errorCode"))
2467
+ DetectMitigationActionExecution.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
2468
+ DetectMitigationActionExecution.struct_class = Types::DetectMitigationActionExecution
2469
+
2470
+ DetectMitigationActionExecutionList.member = Shapes::ShapeRef.new(shape: DetectMitigationActionExecution)
2471
+
2472
+ DetectMitigationActionsTaskStatistics.add_member(:actions_executed, Shapes::ShapeRef.new(shape: GenericLongValue, location_name: "actionsExecuted"))
2473
+ DetectMitigationActionsTaskStatistics.add_member(:actions_skipped, Shapes::ShapeRef.new(shape: GenericLongValue, location_name: "actionsSkipped"))
2474
+ DetectMitigationActionsTaskStatistics.add_member(:actions_failed, Shapes::ShapeRef.new(shape: GenericLongValue, location_name: "actionsFailed"))
2475
+ DetectMitigationActionsTaskStatistics.struct_class = Types::DetectMitigationActionsTaskStatistics
2476
+
2477
+ DetectMitigationActionsTaskSummary.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, location_name: "taskId"))
2478
+ DetectMitigationActionsTaskSummary.add_member(:task_status, Shapes::ShapeRef.new(shape: DetectMitigationActionsTaskStatus, location_name: "taskStatus"))
2479
+ DetectMitigationActionsTaskSummary.add_member(:task_start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "taskStartTime"))
2480
+ DetectMitigationActionsTaskSummary.add_member(:task_end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "taskEndTime"))
2481
+ DetectMitigationActionsTaskSummary.add_member(:target, Shapes::ShapeRef.new(shape: DetectMitigationActionsTaskTarget, location_name: "target"))
2482
+ DetectMitigationActionsTaskSummary.add_member(:violation_event_occurrence_range, Shapes::ShapeRef.new(shape: ViolationEventOccurrenceRange, location_name: "violationEventOccurrenceRange"))
2483
+ DetectMitigationActionsTaskSummary.add_member(:only_active_violations_included, Shapes::ShapeRef.new(shape: PrimitiveBoolean, location_name: "onlyActiveViolationsIncluded"))
2484
+ DetectMitigationActionsTaskSummary.add_member(:suppressed_alerts_included, Shapes::ShapeRef.new(shape: PrimitiveBoolean, location_name: "suppressedAlertsIncluded"))
2485
+ DetectMitigationActionsTaskSummary.add_member(:actions_definition, Shapes::ShapeRef.new(shape: MitigationActionList, location_name: "actionsDefinition"))
2486
+ DetectMitigationActionsTaskSummary.add_member(:task_statistics, Shapes::ShapeRef.new(shape: DetectMitigationActionsTaskStatistics, location_name: "taskStatistics"))
2487
+ DetectMitigationActionsTaskSummary.struct_class = Types::DetectMitigationActionsTaskSummary
2488
+
2489
+ DetectMitigationActionsTaskSummaryList.member = Shapes::ShapeRef.new(shape: DetectMitigationActionsTaskSummary)
2490
+
2491
+ DetectMitigationActionsTaskTarget.add_member(:violation_ids, Shapes::ShapeRef.new(shape: TargetViolationIdsForDetectMitigationActions, location_name: "violationIds"))
2492
+ DetectMitigationActionsTaskTarget.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location_name: "securityProfileName"))
2493
+ DetectMitigationActionsTaskTarget.add_member(:behavior_name, Shapes::ShapeRef.new(shape: BehaviorName, location_name: "behaviorName"))
2494
+ DetectMitigationActionsTaskTarget.struct_class = Types::DetectMitigationActionsTaskTarget
2495
+
2496
+ DetectMitigationActionsToExecuteList.member = Shapes::ShapeRef.new(shape: MitigationActionName)
2497
+
2336
2498
  DimensionNames.member = Shapes::ShapeRef.new(shape: DimensionName)
2337
2499
 
2338
2500
  DimensionStringValues.member = Shapes::ShapeRef.new(shape: DimensionStringValue)
@@ -2417,6 +2579,15 @@ module Aws::IoT
2417
2579
  FirehoseAction.add_member(:batch_mode, Shapes::ShapeRef.new(shape: BatchMode, location_name: "batchMode"))
2418
2580
  FirehoseAction.struct_class = Types::FirehoseAction
2419
2581
 
2582
+ GetBehaviorModelTrainingSummariesRequest.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location: "querystring", location_name: "securityProfileName"))
2583
+ GetBehaviorModelTrainingSummariesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: TinyMaxResults, location: "querystring", location_name: "maxResults"))
2584
+ GetBehaviorModelTrainingSummariesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
2585
+ GetBehaviorModelTrainingSummariesRequest.struct_class = Types::GetBehaviorModelTrainingSummariesRequest
2586
+
2587
+ GetBehaviorModelTrainingSummariesResponse.add_member(:summaries, Shapes::ShapeRef.new(shape: BehaviorModelTrainingSummaries, location_name: "summaries"))
2588
+ GetBehaviorModelTrainingSummariesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
2589
+ GetBehaviorModelTrainingSummariesResponse.struct_class = Types::GetBehaviorModelTrainingSummariesResponse
2590
+
2420
2591
  GetCardinalityRequest.add_member(:index_name, Shapes::ShapeRef.new(shape: IndexName, location_name: "indexName"))
2421
2592
  GetCardinalityRequest.add_member(:query_string, Shapes::ShapeRef.new(shape: QueryString, required: true, location_name: "queryString"))
2422
2593
  GetCardinalityRequest.add_member(:aggregation_field, Shapes::ShapeRef.new(shape: AggregationField, location_name: "aggregationField"))
@@ -2692,6 +2863,13 @@ module Aws::IoT
2692
2863
 
2693
2864
  JobTargets.member = Shapes::ShapeRef.new(shape: TargetArn)
2694
2865
 
2866
+ KafkaAction.add_member(:destination_arn, Shapes::ShapeRef.new(shape: AwsArn, required: true, location_name: "destinationArn"))
2867
+ KafkaAction.add_member(:topic, Shapes::ShapeRef.new(shape: String, required: true, location_name: "topic"))
2868
+ KafkaAction.add_member(:key, Shapes::ShapeRef.new(shape: String, location_name: "key"))
2869
+ KafkaAction.add_member(:partition, Shapes::ShapeRef.new(shape: String, location_name: "partition"))
2870
+ KafkaAction.add_member(:client_properties, Shapes::ShapeRef.new(shape: ClientProperties, required: true, location_name: "clientProperties"))
2871
+ KafkaAction.struct_class = Types::KafkaAction
2872
+
2695
2873
  KeyPair.add_member(:public_key, Shapes::ShapeRef.new(shape: PublicKey, location_name: "PublicKey"))
2696
2874
  KeyPair.add_member(:private_key, Shapes::ShapeRef.new(shape: PrivateKey, location_name: "PrivateKey"))
2697
2875
  KeyPair.struct_class = Types::KeyPair
@@ -2709,6 +2887,8 @@ module Aws::IoT
2709
2887
 
2710
2888
  ListActiveViolationsRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: DeviceDefenderThingName, location: "querystring", location_name: "thingName"))
2711
2889
  ListActiveViolationsRequest.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location: "querystring", location_name: "securityProfileName"))
2890
+ ListActiveViolationsRequest.add_member(:behavior_criteria_type, Shapes::ShapeRef.new(shape: BehaviorCriteriaType, location: "querystring", location_name: "behaviorCriteriaType"))
2891
+ ListActiveViolationsRequest.add_member(:list_suppressed_alerts, Shapes::ShapeRef.new(shape: ListSuppressedAlerts, location: "querystring", location_name: "listSuppressedAlerts"))
2712
2892
  ListActiveViolationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
2713
2893
  ListActiveViolationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
2714
2894
  ListActiveViolationsRequest.struct_class = Types::ListActiveViolationsRequest
@@ -2741,7 +2921,7 @@ module Aws::IoT
2741
2921
  ListAuditFindingsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
2742
2922
  ListAuditFindingsResponse.struct_class = Types::ListAuditFindingsResponse
2743
2923
 
2744
- ListAuditMitigationActionsExecutionsRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskId, required: true, location: "querystring", location_name: "taskId"))
2924
+ ListAuditMitigationActionsExecutionsRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, required: true, location: "querystring", location_name: "taskId"))
2745
2925
  ListAuditMitigationActionsExecutionsRequest.add_member(:action_status, Shapes::ShapeRef.new(shape: AuditMitigationActionsExecutionStatus, location: "querystring", location_name: "actionStatus"))
2746
2926
  ListAuditMitigationActionsExecutionsRequest.add_member(:finding_id, Shapes::ShapeRef.new(shape: FindingId, required: true, location: "querystring", location_name: "findingId"))
2747
2927
  ListAuditMitigationActionsExecutionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
@@ -2835,6 +3015,37 @@ module Aws::IoT
2835
3015
  ListCertificatesResponse.add_member(:next_marker, Shapes::ShapeRef.new(shape: Marker, location_name: "nextMarker"))
2836
3016
  ListCertificatesResponse.struct_class = Types::ListCertificatesResponse
2837
3017
 
3018
+ ListCustomMetricsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
3019
+ ListCustomMetricsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
3020
+ ListCustomMetricsRequest.struct_class = Types::ListCustomMetricsRequest
3021
+
3022
+ ListCustomMetricsResponse.add_member(:metric_names, Shapes::ShapeRef.new(shape: MetricNames, location_name: "metricNames"))
3023
+ ListCustomMetricsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3024
+ ListCustomMetricsResponse.struct_class = Types::ListCustomMetricsResponse
3025
+
3026
+ ListDetectMitigationActionsExecutionsRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, location: "querystring", location_name: "taskId"))
3027
+ ListDetectMitigationActionsExecutionsRequest.add_member(:violation_id, Shapes::ShapeRef.new(shape: ViolationId, location: "querystring", location_name: "violationId"))
3028
+ ListDetectMitigationActionsExecutionsRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: DeviceDefenderThingName, location: "querystring", location_name: "thingName"))
3029
+ ListDetectMitigationActionsExecutionsRequest.add_member(:start_time, Shapes::ShapeRef.new(shape: Timestamp, location: "querystring", location_name: "startTime"))
3030
+ ListDetectMitigationActionsExecutionsRequest.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, location: "querystring", location_name: "endTime"))
3031
+ ListDetectMitigationActionsExecutionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
3032
+ ListDetectMitigationActionsExecutionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
3033
+ ListDetectMitigationActionsExecutionsRequest.struct_class = Types::ListDetectMitigationActionsExecutionsRequest
3034
+
3035
+ ListDetectMitigationActionsExecutionsResponse.add_member(:actions_executions, Shapes::ShapeRef.new(shape: DetectMitigationActionExecutionList, location_name: "actionsExecutions"))
3036
+ ListDetectMitigationActionsExecutionsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3037
+ ListDetectMitigationActionsExecutionsResponse.struct_class = Types::ListDetectMitigationActionsExecutionsResponse
3038
+
3039
+ ListDetectMitigationActionsTasksRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
3040
+ ListDetectMitigationActionsTasksRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
3041
+ ListDetectMitigationActionsTasksRequest.add_member(:start_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location: "querystring", location_name: "startTime"))
3042
+ ListDetectMitigationActionsTasksRequest.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location: "querystring", location_name: "endTime"))
3043
+ ListDetectMitigationActionsTasksRequest.struct_class = Types::ListDetectMitigationActionsTasksRequest
3044
+
3045
+ ListDetectMitigationActionsTasksResponse.add_member(:tasks, Shapes::ShapeRef.new(shape: DetectMitigationActionsTaskSummaryList, location_name: "tasks"))
3046
+ ListDetectMitigationActionsTasksResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3047
+ ListDetectMitigationActionsTasksResponse.struct_class = Types::ListDetectMitigationActionsTasksResponse
3048
+
2838
3049
  ListDimensionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
2839
3050
  ListDimensionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
2840
3051
  ListDimensionsRequest.struct_class = Types::ListDimensionsRequest
@@ -3012,6 +3223,7 @@ module Aws::IoT
3012
3223
  ListSecurityProfilesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
3013
3224
  ListSecurityProfilesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
3014
3225
  ListSecurityProfilesRequest.add_member(:dimension_name, Shapes::ShapeRef.new(shape: DimensionName, location: "querystring", location_name: "dimensionName"))
3226
+ ListSecurityProfilesRequest.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, location: "querystring", location_name: "metricName"))
3015
3227
  ListSecurityProfilesRequest.struct_class = Types::ListSecurityProfilesRequest
3016
3228
 
3017
3229
  ListSecurityProfilesResponse.add_member(:security_profile_identifiers, Shapes::ShapeRef.new(shape: SecurityProfileIdentifiers, location_name: "securityProfileIdentifiers"))
@@ -3172,6 +3384,8 @@ module Aws::IoT
3172
3384
  ListViolationEventsRequest.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location: "querystring", location_name: "endTime"))
3173
3385
  ListViolationEventsRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: DeviceDefenderThingName, location: "querystring", location_name: "thingName"))
3174
3386
  ListViolationEventsRequest.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location: "querystring", location_name: "securityProfileName"))
3387
+ ListViolationEventsRequest.add_member(:behavior_criteria_type, Shapes::ShapeRef.new(shape: BehaviorCriteriaType, location: "querystring", location_name: "behaviorCriteriaType"))
3388
+ ListViolationEventsRequest.add_member(:list_suppressed_alerts, Shapes::ShapeRef.new(shape: ListSuppressedAlerts, location: "querystring", location_name: "listSuppressedAlerts"))
3175
3389
  ListViolationEventsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
3176
3390
  ListViolationEventsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
3177
3391
  ListViolationEventsRequest.struct_class = Types::ListViolationEventsRequest
@@ -3194,6 +3408,9 @@ module Aws::IoT
3194
3408
  LoggingOptionsPayload.add_member(:log_level, Shapes::ShapeRef.new(shape: LogLevel, location_name: "logLevel"))
3195
3409
  LoggingOptionsPayload.struct_class = Types::LoggingOptionsPayload
3196
3410
 
3411
+ MachineLearningDetectionConfig.add_member(:confidence_level, Shapes::ShapeRef.new(shape: ConfidenceLevel, required: true, location_name: "confidenceLevel"))
3412
+ MachineLearningDetectionConfig.struct_class = Types::MachineLearningDetectionConfig
3413
+
3197
3414
  MalformedPolicyException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
3198
3415
  MalformedPolicyException.struct_class = Types::MalformedPolicyException
3199
3416
 
@@ -3201,6 +3418,8 @@ module Aws::IoT
3201
3418
  MetricDimension.add_member(:operator, Shapes::ShapeRef.new(shape: DimensionValueOperator, location_name: "operator"))
3202
3419
  MetricDimension.struct_class = Types::MetricDimension
3203
3420
 
3421
+ MetricNames.member = Shapes::ShapeRef.new(shape: MetricName)
3422
+
3204
3423
  MetricToRetain.add_member(:metric, Shapes::ShapeRef.new(shape: BehaviorMetric, required: true, location_name: "metric"))
3205
3424
  MetricToRetain.add_member(:metric_dimension, Shapes::ShapeRef.new(shape: MetricDimension, location_name: "metricDimension"))
3206
3425
  MetricToRetain.struct_class = Types::MetricToRetain
@@ -3208,6 +3427,9 @@ module Aws::IoT
3208
3427
  MetricValue.add_member(:count, Shapes::ShapeRef.new(shape: UnsignedLong, location_name: "count"))
3209
3428
  MetricValue.add_member(:cidrs, Shapes::ShapeRef.new(shape: Cidrs, location_name: "cidrs"))
3210
3429
  MetricValue.add_member(:ports, Shapes::ShapeRef.new(shape: Ports, location_name: "ports"))
3430
+ MetricValue.add_member(:number, Shapes::ShapeRef.new(shape: Number, location_name: "number"))
3431
+ MetricValue.add_member(:numbers, Shapes::ShapeRef.new(shape: NumberList, location_name: "numbers"))
3432
+ MetricValue.add_member(:strings, Shapes::ShapeRef.new(shape: StringList, location_name: "strings"))
3211
3433
  MetricValue.struct_class = Types::MetricValue
3212
3434
 
3213
3435
  MissingContextValues.member = Shapes::ShapeRef.new(shape: MissingContextValue)
@@ -3250,6 +3472,8 @@ module Aws::IoT
3250
3472
  NotConfiguredException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
3251
3473
  NotConfiguredException.struct_class = Types::NotConfiguredException
3252
3474
 
3475
+ NumberList.member = Shapes::ShapeRef.new(shape: Number)
3476
+
3253
3477
  OTAUpdateFile.add_member(:file_name, Shapes::ShapeRef.new(shape: FileName, location_name: "fileName"))
3254
3478
  OTAUpdateFile.add_member(:file_type, Shapes::ShapeRef.new(shape: FileType, location_name: "fileType"))
3255
3479
  OTAUpdateFile.add_member(:file_version, Shapes::ShapeRef.new(shape: OTAUpdateFileVersion, location_name: "fileVersion"))
@@ -3553,6 +3777,8 @@ module Aws::IoT
3553
3777
 
3554
3778
  SearchableAttributes.member = Shapes::ShapeRef.new(shape: AttributeName)
3555
3779
 
3780
+ SecurityGroupList.member = Shapes::ShapeRef.new(shape: SecurityGroupId)
3781
+
3556
3782
  SecurityProfileIdentifier.add_member(:name, Shapes::ShapeRef.new(shape: SecurityProfileName, required: true, location_name: "name"))
3557
3783
  SecurityProfileIdentifier.add_member(:arn, Shapes::ShapeRef.new(shape: SecurityProfileArn, required: true, location_name: "arn"))
3558
3784
  SecurityProfileIdentifier.struct_class = Types::SecurityProfileIdentifier
@@ -3630,15 +3856,27 @@ module Aws::IoT
3630
3856
  SqsAction.add_member(:use_base_64, Shapes::ShapeRef.new(shape: UseBase64, location_name: "useBase64"))
3631
3857
  SqsAction.struct_class = Types::SqsAction
3632
3858
 
3633
- StartAuditMitigationActionsTaskRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskId, required: true, location: "uri", location_name: "taskId"))
3859
+ StartAuditMitigationActionsTaskRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, required: true, location: "uri", location_name: "taskId"))
3634
3860
  StartAuditMitigationActionsTaskRequest.add_member(:target, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskTarget, required: true, location_name: "target"))
3635
3861
  StartAuditMitigationActionsTaskRequest.add_member(:audit_check_to_actions_mapping, Shapes::ShapeRef.new(shape: AuditCheckToActionsMapping, required: true, location_name: "auditCheckToActionsMapping"))
3636
3862
  StartAuditMitigationActionsTaskRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ClientRequestToken, required: true, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
3637
3863
  StartAuditMitigationActionsTaskRequest.struct_class = Types::StartAuditMitigationActionsTaskRequest
3638
3864
 
3639
- StartAuditMitigationActionsTaskResponse.add_member(:task_id, Shapes::ShapeRef.new(shape: AuditMitigationActionsTaskId, location_name: "taskId"))
3865
+ StartAuditMitigationActionsTaskResponse.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, location_name: "taskId"))
3640
3866
  StartAuditMitigationActionsTaskResponse.struct_class = Types::StartAuditMitigationActionsTaskResponse
3641
3867
 
3868
+ StartDetectMitigationActionsTaskRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, required: true, location: "uri", location_name: "taskId"))
3869
+ StartDetectMitigationActionsTaskRequest.add_member(:target, Shapes::ShapeRef.new(shape: DetectMitigationActionsTaskTarget, required: true, location_name: "target"))
3870
+ StartDetectMitigationActionsTaskRequest.add_member(:actions, Shapes::ShapeRef.new(shape: DetectMitigationActionsToExecuteList, required: true, location_name: "actions"))
3871
+ StartDetectMitigationActionsTaskRequest.add_member(:violation_event_occurrence_range, Shapes::ShapeRef.new(shape: ViolationEventOccurrenceRange, location_name: "violationEventOccurrenceRange"))
3872
+ StartDetectMitigationActionsTaskRequest.add_member(:include_only_active_violations, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "includeOnlyActiveViolations"))
3873
+ StartDetectMitigationActionsTaskRequest.add_member(:include_suppressed_alerts, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "includeSuppressedAlerts"))
3874
+ StartDetectMitigationActionsTaskRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ClientRequestToken, required: true, location_name: "clientRequestToken", metadata: {"idempotencyToken"=>true}))
3875
+ StartDetectMitigationActionsTaskRequest.struct_class = Types::StartDetectMitigationActionsTaskRequest
3876
+
3877
+ StartDetectMitigationActionsTaskResponse.add_member(:task_id, Shapes::ShapeRef.new(shape: MitigationActionsTaskId, location_name: "taskId"))
3878
+ StartDetectMitigationActionsTaskResponse.struct_class = Types::StartDetectMitigationActionsTaskResponse
3879
+
3642
3880
  StartOnDemandAuditTaskRequest.add_member(:target_check_names, Shapes::ShapeRef.new(shape: TargetAuditCheckNames, required: true, location_name: "targetCheckNames"))
3643
3881
  StartOnDemandAuditTaskRequest.struct_class = Types::StartOnDemandAuditTaskRequest
3644
3882
 
@@ -3710,9 +3948,13 @@ module Aws::IoT
3710
3948
 
3711
3949
  StreamsSummary.member = Shapes::ShapeRef.new(shape: StreamSummary)
3712
3950
 
3951
+ StringList.member = Shapes::ShapeRef.new(shape: stringValue)
3952
+
3713
3953
  StringMap.key = Shapes::ShapeRef.new(shape: String)
3714
3954
  StringMap.value = Shapes::ShapeRef.new(shape: String)
3715
3955
 
3956
+ SubnetIdList.member = Shapes::ShapeRef.new(shape: SubnetId)
3957
+
3716
3958
  Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
3717
3959
  Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, location_name: "Value"))
3718
3960
  Tag.struct_class = Types::Tag
@@ -3729,6 +3971,8 @@ module Aws::IoT
3729
3971
 
3730
3972
  TargetAuditCheckNames.member = Shapes::ShapeRef.new(shape: AuditCheckName)
3731
3973
 
3974
+ TargetViolationIdsForDetectMitigationActions.member = Shapes::ShapeRef.new(shape: ViolationId)
3975
+
3732
3976
  Targets.member = Shapes::ShapeRef.new(shape: Target)
3733
3977
 
3734
3978
  TaskAlreadyExistsException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -3896,19 +4140,26 @@ module Aws::IoT
3896
4140
 
3897
4141
  TopicRuleDestination.add_member(:arn, Shapes::ShapeRef.new(shape: AwsArn, location_name: "arn"))
3898
4142
  TopicRuleDestination.add_member(:status, Shapes::ShapeRef.new(shape: TopicRuleDestinationStatus, location_name: "status"))
4143
+ TopicRuleDestination.add_member(:created_at, Shapes::ShapeRef.new(shape: CreatedAtDate, location_name: "createdAt"))
4144
+ TopicRuleDestination.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: LastUpdatedAtDate, location_name: "lastUpdatedAt"))
3899
4145
  TopicRuleDestination.add_member(:status_reason, Shapes::ShapeRef.new(shape: String, location_name: "statusReason"))
3900
4146
  TopicRuleDestination.add_member(:http_url_properties, Shapes::ShapeRef.new(shape: HttpUrlDestinationProperties, location_name: "httpUrlProperties"))
4147
+ TopicRuleDestination.add_member(:vpc_properties, Shapes::ShapeRef.new(shape: VpcDestinationProperties, location_name: "vpcProperties"))
3901
4148
  TopicRuleDestination.struct_class = Types::TopicRuleDestination
3902
4149
 
3903
4150
  TopicRuleDestinationConfiguration.add_member(:http_url_configuration, Shapes::ShapeRef.new(shape: HttpUrlDestinationConfiguration, location_name: "httpUrlConfiguration"))
4151
+ TopicRuleDestinationConfiguration.add_member(:vpc_configuration, Shapes::ShapeRef.new(shape: VpcDestinationConfiguration, location_name: "vpcConfiguration"))
3904
4152
  TopicRuleDestinationConfiguration.struct_class = Types::TopicRuleDestinationConfiguration
3905
4153
 
3906
4154
  TopicRuleDestinationSummaries.member = Shapes::ShapeRef.new(shape: TopicRuleDestinationSummary)
3907
4155
 
3908
4156
  TopicRuleDestinationSummary.add_member(:arn, Shapes::ShapeRef.new(shape: AwsArn, location_name: "arn"))
3909
4157
  TopicRuleDestinationSummary.add_member(:status, Shapes::ShapeRef.new(shape: TopicRuleDestinationStatus, location_name: "status"))
4158
+ TopicRuleDestinationSummary.add_member(:created_at, Shapes::ShapeRef.new(shape: CreatedAtDate, location_name: "createdAt"))
4159
+ TopicRuleDestinationSummary.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: LastUpdatedAtDate, location_name: "lastUpdatedAt"))
3910
4160
  TopicRuleDestinationSummary.add_member(:status_reason, Shapes::ShapeRef.new(shape: String, location_name: "statusReason"))
3911
4161
  TopicRuleDestinationSummary.add_member(:http_url_summary, Shapes::ShapeRef.new(shape: HttpUrlDestinationSummary, location_name: "httpUrlSummary"))
4162
+ TopicRuleDestinationSummary.add_member(:vpc_destination_summary, Shapes::ShapeRef.new(shape: VpcDestinationSummary, location_name: "vpcDestinationSummary"))
3912
4163
  TopicRuleDestinationSummary.struct_class = Types::TopicRuleDestinationSummary
3913
4164
 
3914
4165
  TopicRuleList.member = Shapes::ShapeRef.new(shape: TopicRuleListItem)
@@ -4007,6 +4258,18 @@ module Aws::IoT
4007
4258
  UpdateCertificateRequest.add_member(:new_status, Shapes::ShapeRef.new(shape: CertificateStatus, required: true, location: "querystring", location_name: "newStatus"))
4008
4259
  UpdateCertificateRequest.struct_class = Types::UpdateCertificateRequest
4009
4260
 
4261
+ UpdateCustomMetricRequest.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location: "uri", location_name: "metricName"))
4262
+ UpdateCustomMetricRequest.add_member(:display_name, Shapes::ShapeRef.new(shape: CustomMetricDisplayName, required: true, location_name: "displayName"))
4263
+ UpdateCustomMetricRequest.struct_class = Types::UpdateCustomMetricRequest
4264
+
4265
+ UpdateCustomMetricResponse.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, location_name: "metricName"))
4266
+ UpdateCustomMetricResponse.add_member(:metric_arn, Shapes::ShapeRef.new(shape: CustomMetricArn, location_name: "metricArn"))
4267
+ UpdateCustomMetricResponse.add_member(:metric_type, Shapes::ShapeRef.new(shape: CustomMetricType, location_name: "metricType"))
4268
+ UpdateCustomMetricResponse.add_member(:display_name, Shapes::ShapeRef.new(shape: CustomMetricDisplayName, location_name: "displayName"))
4269
+ UpdateCustomMetricResponse.add_member(:creation_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "creationDate"))
4270
+ UpdateCustomMetricResponse.add_member(:last_modified_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "lastModifiedDate"))
4271
+ UpdateCustomMetricResponse.struct_class = Types::UpdateCustomMetricResponse
4272
+
4010
4273
  UpdateDeviceCertificateParams.add_member(:action, Shapes::ShapeRef.new(shape: DeviceCertificateUpdateAction, required: true, location_name: "action"))
4011
4274
  UpdateDeviceCertificateParams.struct_class = Types::UpdateDeviceCertificateParams
4012
4275
 
@@ -4192,12 +4455,38 @@ module Aws::IoT
4192
4455
  ViolationEvent.add_member(:security_profile_name, Shapes::ShapeRef.new(shape: SecurityProfileName, location_name: "securityProfileName"))
4193
4456
  ViolationEvent.add_member(:behavior, Shapes::ShapeRef.new(shape: Behavior, location_name: "behavior"))
4194
4457
  ViolationEvent.add_member(:metric_value, Shapes::ShapeRef.new(shape: MetricValue, location_name: "metricValue"))
4458
+ ViolationEvent.add_member(:violation_event_additional_info, Shapes::ShapeRef.new(shape: ViolationEventAdditionalInfo, location_name: "violationEventAdditionalInfo"))
4195
4459
  ViolationEvent.add_member(:violation_event_type, Shapes::ShapeRef.new(shape: ViolationEventType, location_name: "violationEventType"))
4196
4460
  ViolationEvent.add_member(:violation_event_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "violationEventTime"))
4197
4461
  ViolationEvent.struct_class = Types::ViolationEvent
4198
4462
 
4463
+ ViolationEventAdditionalInfo.add_member(:confidence_level, Shapes::ShapeRef.new(shape: ConfidenceLevel, location_name: "confidenceLevel"))
4464
+ ViolationEventAdditionalInfo.struct_class = Types::ViolationEventAdditionalInfo
4465
+
4466
+ ViolationEventOccurrenceRange.add_member(:start_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "startTime"))
4467
+ ViolationEventOccurrenceRange.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "endTime"))
4468
+ ViolationEventOccurrenceRange.struct_class = Types::ViolationEventOccurrenceRange
4469
+
4199
4470
  ViolationEvents.member = Shapes::ShapeRef.new(shape: ViolationEvent)
4200
4471
 
4472
+ VpcDestinationConfiguration.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: SubnetIdList, required: true, location_name: "subnetIds"))
4473
+ VpcDestinationConfiguration.add_member(:security_groups, Shapes::ShapeRef.new(shape: SecurityGroupList, location_name: "securityGroups"))
4474
+ VpcDestinationConfiguration.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, required: true, location_name: "vpcId"))
4475
+ VpcDestinationConfiguration.add_member(:role_arn, Shapes::ShapeRef.new(shape: AwsArn, required: true, location_name: "roleArn"))
4476
+ VpcDestinationConfiguration.struct_class = Types::VpcDestinationConfiguration
4477
+
4478
+ VpcDestinationProperties.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: SubnetIdList, location_name: "subnetIds"))
4479
+ VpcDestinationProperties.add_member(:security_groups, Shapes::ShapeRef.new(shape: SecurityGroupList, location_name: "securityGroups"))
4480
+ VpcDestinationProperties.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, location_name: "vpcId"))
4481
+ VpcDestinationProperties.add_member(:role_arn, Shapes::ShapeRef.new(shape: AwsArn, location_name: "roleArn"))
4482
+ VpcDestinationProperties.struct_class = Types::VpcDestinationProperties
4483
+
4484
+ VpcDestinationSummary.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: SubnetIdList, location_name: "subnetIds"))
4485
+ VpcDestinationSummary.add_member(:security_groups, Shapes::ShapeRef.new(shape: SecurityGroupList, location_name: "securityGroups"))
4486
+ VpcDestinationSummary.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, location_name: "vpcId"))
4487
+ VpcDestinationSummary.add_member(:role_arn, Shapes::ShapeRef.new(shape: AwsArn, location_name: "roleArn"))
4488
+ VpcDestinationSummary.struct_class = Types::VpcDestinationSummary
4489
+
4201
4490
 
4202
4491
  # @api private
4203
4492
  API = Seahorse::Model::Api.new.tap do |api|
@@ -4365,6 +4654,18 @@ module Aws::IoT
4365
4654
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
4366
4655
  end)
4367
4656
 
4657
+ api.add_operation(:cancel_detect_mitigation_actions_task, Seahorse::Model::Operation.new.tap do |o|
4658
+ o.name = "CancelDetectMitigationActionsTask"
4659
+ o.http_method = "PUT"
4660
+ o.http_request_uri = "/detect/mitigationactions/tasks/{taskId}/cancel"
4661
+ o.input = Shapes::ShapeRef.new(shape: CancelDetectMitigationActionsTaskRequest)
4662
+ o.output = Shapes::ShapeRef.new(shape: CancelDetectMitigationActionsTaskResponse)
4663
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
4664
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
4665
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
4666
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
4667
+ end)
4668
+
4368
4669
  api.add_operation(:cancel_job, Seahorse::Model::Operation.new.tap do |o|
4369
4670
  o.name = "CancelJob"
4370
4671
  o.http_method = "PUT"
@@ -4471,6 +4772,19 @@ module Aws::IoT
4471
4772
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
4472
4773
  end)
4473
4774
 
4775
+ api.add_operation(:create_custom_metric, Seahorse::Model::Operation.new.tap do |o|
4776
+ o.name = "CreateCustomMetric"
4777
+ o.http_method = "POST"
4778
+ o.http_request_uri = "/custom-metric/{metricName}"
4779
+ o.input = Shapes::ShapeRef.new(shape: CreateCustomMetricRequest)
4780
+ o.output = Shapes::ShapeRef.new(shape: CreateCustomMetricResponse)
4781
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
4782
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
4783
+ o.errors << Shapes::ShapeRef.new(shape: ResourceAlreadyExistsException)
4784
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
4785
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
4786
+ end)
4787
+
4474
4788
  api.add_operation(:create_dimension, Seahorse::Model::Operation.new.tap do |o|
4475
4789
  o.name = "CreateDimension"
4476
4790
  o.http_method = "POST"
@@ -4850,6 +5164,17 @@ module Aws::IoT
4850
5164
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
4851
5165
  end)
4852
5166
 
5167
+ api.add_operation(:delete_custom_metric, Seahorse::Model::Operation.new.tap do |o|
5168
+ o.name = "DeleteCustomMetric"
5169
+ o.http_method = "DELETE"
5170
+ o.http_request_uri = "/custom-metric/{metricName}"
5171
+ o.input = Shapes::ShapeRef.new(shape: DeleteCustomMetricRequest)
5172
+ o.output = Shapes::ShapeRef.new(shape: DeleteCustomMetricResponse)
5173
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
5174
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
5175
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
5176
+ end)
5177
+
4853
5178
  api.add_operation(:delete_dimension, Seahorse::Model::Operation.new.tap do |o|
4854
5179
  o.name = "DeleteDimension"
4855
5180
  o.http_method = "DELETE"
@@ -5271,6 +5596,18 @@ module Aws::IoT
5271
5596
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
5272
5597
  end)
5273
5598
 
5599
+ api.add_operation(:describe_custom_metric, Seahorse::Model::Operation.new.tap do |o|
5600
+ o.name = "DescribeCustomMetric"
5601
+ o.http_method = "GET"
5602
+ o.http_request_uri = "/custom-metric/{metricName}"
5603
+ o.input = Shapes::ShapeRef.new(shape: DescribeCustomMetricRequest)
5604
+ o.output = Shapes::ShapeRef.new(shape: DescribeCustomMetricResponse)
5605
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
5606
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
5607
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
5608
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
5609
+ end)
5610
+
5274
5611
  api.add_operation(:describe_default_authorizer, Seahorse::Model::Operation.new.tap do |o|
5275
5612
  o.name = "DescribeDefaultAuthorizer"
5276
5613
  o.http_method = "GET"
@@ -5285,6 +5622,18 @@ module Aws::IoT
5285
5622
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
5286
5623
  end)
5287
5624
 
5625
+ api.add_operation(:describe_detect_mitigation_actions_task, Seahorse::Model::Operation.new.tap do |o|
5626
+ o.name = "DescribeDetectMitigationActionsTask"
5627
+ o.http_method = "GET"
5628
+ o.http_request_uri = "/detect/mitigationactions/tasks/{taskId}"
5629
+ o.input = Shapes::ShapeRef.new(shape: DescribeDetectMitigationActionsTaskRequest)
5630
+ o.output = Shapes::ShapeRef.new(shape: DescribeDetectMitigationActionsTaskResponse)
5631
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
5632
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
5633
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
5634
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
5635
+ end)
5636
+
5288
5637
  api.add_operation(:describe_dimension, Seahorse::Model::Operation.new.tap do |o|
5289
5638
  o.name = "DescribeDimension"
5290
5639
  o.http_method = "GET"
@@ -5595,6 +5944,24 @@ module Aws::IoT
5595
5944
  o.errors << Shapes::ShapeRef.new(shape: ConflictingResourceUpdateException)
5596
5945
  end)
5597
5946
 
5947
+ api.add_operation(:get_behavior_model_training_summaries, Seahorse::Model::Operation.new.tap do |o|
5948
+ o.name = "GetBehaviorModelTrainingSummaries"
5949
+ o.http_method = "GET"
5950
+ o.http_request_uri = "/behavior-model-training/summaries"
5951
+ o.input = Shapes::ShapeRef.new(shape: GetBehaviorModelTrainingSummariesRequest)
5952
+ o.output = Shapes::ShapeRef.new(shape: GetBehaviorModelTrainingSummariesResponse)
5953
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
5954
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
5955
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
5956
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
5957
+ o[:pager] = Aws::Pager.new(
5958
+ limit_key: "max_results",
5959
+ tokens: {
5960
+ "next_token" => "next_token"
5961
+ }
5962
+ )
5963
+ end)
5964
+
5598
5965
  api.add_operation(:get_cardinality, Seahorse::Model::Operation.new.tap do |o|
5599
5966
  o.name = "GetCardinality"
5600
5967
  o.http_method = "POST"
@@ -6005,6 +6372,57 @@ module Aws::IoT
6005
6372
  )
6006
6373
  end)
6007
6374
 
6375
+ api.add_operation(:list_custom_metrics, Seahorse::Model::Operation.new.tap do |o|
6376
+ o.name = "ListCustomMetrics"
6377
+ o.http_method = "GET"
6378
+ o.http_request_uri = "/custom-metrics"
6379
+ o.input = Shapes::ShapeRef.new(shape: ListCustomMetricsRequest)
6380
+ o.output = Shapes::ShapeRef.new(shape: ListCustomMetricsResponse)
6381
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
6382
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
6383
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
6384
+ o[:pager] = Aws::Pager.new(
6385
+ limit_key: "max_results",
6386
+ tokens: {
6387
+ "next_token" => "next_token"
6388
+ }
6389
+ )
6390
+ end)
6391
+
6392
+ api.add_operation(:list_detect_mitigation_actions_executions, Seahorse::Model::Operation.new.tap do |o|
6393
+ o.name = "ListDetectMitigationActionsExecutions"
6394
+ o.http_method = "GET"
6395
+ o.http_request_uri = "/detect/mitigationactions/executions"
6396
+ o.input = Shapes::ShapeRef.new(shape: ListDetectMitigationActionsExecutionsRequest)
6397
+ o.output = Shapes::ShapeRef.new(shape: ListDetectMitigationActionsExecutionsResponse)
6398
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
6399
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
6400
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
6401
+ o[:pager] = Aws::Pager.new(
6402
+ limit_key: "max_results",
6403
+ tokens: {
6404
+ "next_token" => "next_token"
6405
+ }
6406
+ )
6407
+ end)
6408
+
6409
+ api.add_operation(:list_detect_mitigation_actions_tasks, Seahorse::Model::Operation.new.tap do |o|
6410
+ o.name = "ListDetectMitigationActionsTasks"
6411
+ o.http_method = "GET"
6412
+ o.http_request_uri = "/detect/mitigationactions/tasks"
6413
+ o.input = Shapes::ShapeRef.new(shape: ListDetectMitigationActionsTasksRequest)
6414
+ o.output = Shapes::ShapeRef.new(shape: ListDetectMitigationActionsTasksResponse)
6415
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
6416
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
6417
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
6418
+ o[:pager] = Aws::Pager.new(
6419
+ limit_key: "max_results",
6420
+ tokens: {
6421
+ "next_token" => "next_token"
6422
+ }
6423
+ )
6424
+ end)
6425
+
6008
6426
  api.add_operation(:list_dimensions, Seahorse::Model::Operation.new.tap do |o|
6009
6427
  o.name = "ListDimensions"
6010
6428
  o.http_method = "GET"
@@ -6895,6 +7313,19 @@ module Aws::IoT
6895
7313
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
6896
7314
  end)
6897
7315
 
7316
+ api.add_operation(:start_detect_mitigation_actions_task, Seahorse::Model::Operation.new.tap do |o|
7317
+ o.name = "StartDetectMitigationActionsTask"
7318
+ o.http_method = "PUT"
7319
+ o.http_request_uri = "/detect/mitigationactions/tasks/{taskId}"
7320
+ o.input = Shapes::ShapeRef.new(shape: StartDetectMitigationActionsTaskRequest)
7321
+ o.output = Shapes::ShapeRef.new(shape: StartDetectMitigationActionsTaskResponse)
7322
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
7323
+ o.errors << Shapes::ShapeRef.new(shape: TaskAlreadyExistsException)
7324
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
7325
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
7326
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
7327
+ end)
7328
+
6898
7329
  api.add_operation(:start_on_demand_audit_task, Seahorse::Model::Operation.new.tap do |o|
6899
7330
  o.name = "StartOnDemandAuditTask"
6900
7331
  o.http_method = "POST"
@@ -7083,6 +7514,18 @@ module Aws::IoT
7083
7514
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
7084
7515
  end)
7085
7516
 
7517
+ api.add_operation(:update_custom_metric, Seahorse::Model::Operation.new.tap do |o|
7518
+ o.name = "UpdateCustomMetric"
7519
+ o.http_method = "PATCH"
7520
+ o.http_request_uri = "/custom-metric/{metricName}"
7521
+ o.input = Shapes::ShapeRef.new(shape: UpdateCustomMetricRequest)
7522
+ o.output = Shapes::ShapeRef.new(shape: UpdateCustomMetricResponse)
7523
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
7524
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
7525
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
7526
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
7527
+ end)
7528
+
7086
7529
  api.add_operation(:update_dimension, Seahorse::Model::Operation.new.tap do |o|
7087
7530
  o.name = "UpdateDimension"
7088
7531
  o.http_method = "PATCH"