aws-sdk-iot 1.63.0 → 1.68.0

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.68.0
data/lib/aws-sdk-iot.rb CHANGED
@@ -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
 
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-iot/customizations'
48
48
  # @!group service
49
49
  module Aws::IoT
50
50
 
51
- GEM_VERSION = '1.63.0'
51
+ GEM_VERSION = '1.68.0'
52
52
 
53
53
  end
@@ -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
 
@@ -610,7 +610,7 @@ module Aws::IoT
610
610
  # @example Request syntax with placeholder values
611
611
  #
612
612
  # resp = client.cancel_audit_mitigation_actions_task({
613
- # task_id: "AuditMitigationActionsTaskId", # required
613
+ # task_id: "MitigationActionsTaskId", # required
614
614
  # })
615
615
  #
616
616
  # @overload cancel_audit_mitigation_actions_task(params = {})
@@ -621,7 +621,7 @@ module Aws::IoT
621
621
  end
622
622
 
623
623
  # Cancels an audit that is in progress. The audit can be either
624
- # scheduled or on-demand. If the audit is not in progress, an
624
+ # scheduled or on demand. If the audit isn't in progress, an
625
625
  # "InvalidRequestException" occurs.
626
626
  #
627
627
  # @option params [required, String] :task_id
@@ -674,6 +674,26 @@ module Aws::IoT
674
674
  req.send_request(options)
675
675
  end
676
676
 
677
+ # Cancels a Device Defender ML Detect mitigation action.
678
+ #
679
+ # @option params [required, String] :task_id
680
+ # The unique identifier of the task.
681
+ #
682
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
683
+ #
684
+ # @example Request syntax with placeholder values
685
+ #
686
+ # resp = client.cancel_detect_mitigation_actions_task({
687
+ # task_id: "MitigationActionsTaskId", # required
688
+ # })
689
+ #
690
+ # @overload cancel_detect_mitigation_actions_task(params = {})
691
+ # @param [Hash] params ({})
692
+ def cancel_detect_mitigation_actions_task(params = {}, options = {})
693
+ req = build_request(:cancel_detect_mitigation_actions_task, params)
694
+ req.send_request(options)
695
+ end
696
+
677
697
  # Cancels a job.
678
698
  #
679
699
  # @option params [required, String] :job_id
@@ -1071,6 +1091,67 @@ module Aws::IoT
1071
1091
  req.send_request(options)
1072
1092
  end
1073
1093
 
1094
+ # Use this API to define a Custom Metric published by your devices to
1095
+ # Device Defender.
1096
+ #
1097
+ # @option params [required, String] :metric_name
1098
+ # The name of the custom metric. This will be used in the metric report
1099
+ # submitted from the device/thing. Shouldn't begin with `aws:`. Cannot
1100
+ # be updated once defined.
1101
+ #
1102
+ # @option params [String] :display_name
1103
+ # Field represents a friendly name in the console for the custom metric;
1104
+ # it doesn't have to be unique. Don't use this name as the metric
1105
+ # identifier in the device metric report. Can be updated once defined.
1106
+ #
1107
+ # @option params [required, String] :metric_type
1108
+ # The type of the custom metric. Types include `string-list`,
1109
+ # `ip-address-list`, `number-list`, and `number`.
1110
+ #
1111
+ # @option params [Array<Types::Tag>] :tags
1112
+ # Metadata that can be used to manage the custom metric.
1113
+ #
1114
+ # @option params [required, String] :client_request_token
1115
+ # Each custom metric must have a unique client request token. If you try
1116
+ # to create a new custom metric that already exists with a different
1117
+ # token, an exception occurs. If you omit this value, AWS SDKs will
1118
+ # automatically generate a unique client request.
1119
+ #
1120
+ # **A suitable default value is auto-generated.** You should normally
1121
+ # not need to pass this option.**
1122
+ #
1123
+ # @return [Types::CreateCustomMetricResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1124
+ #
1125
+ # * {Types::CreateCustomMetricResponse#metric_name #metric_name} => String
1126
+ # * {Types::CreateCustomMetricResponse#metric_arn #metric_arn} => String
1127
+ #
1128
+ # @example Request syntax with placeholder values
1129
+ #
1130
+ # resp = client.create_custom_metric({
1131
+ # metric_name: "MetricName", # required
1132
+ # display_name: "CustomMetricDisplayName",
1133
+ # metric_type: "string-list", # required, accepts string-list, ip-address-list, number-list, number
1134
+ # tags: [
1135
+ # {
1136
+ # key: "TagKey", # required
1137
+ # value: "TagValue",
1138
+ # },
1139
+ # ],
1140
+ # client_request_token: "ClientRequestToken", # required
1141
+ # })
1142
+ #
1143
+ # @example Response structure
1144
+ #
1145
+ # resp.metric_name #=> String
1146
+ # resp.metric_arn #=> String
1147
+ #
1148
+ # @overload create_custom_metric(params = {})
1149
+ # @param [Hash] params ({})
1150
+ def create_custom_metric(params = {}, options = {})
1151
+ req = build_request(:create_custom_metric, params)
1152
+ req.send_request(options)
1153
+ end
1154
+
1074
1155
  # Create a dimension that you can use to limit the scope of a metric
1075
1156
  # used in a security profile for AWS IoT Device Defender. For example,
1076
1157
  # using a `TOPIC_FILTER` dimension, you can narrow down the scope of the
@@ -2052,22 +2133,22 @@ module Aws::IoT
2052
2133
  # Creates a scheduled audit that is run at a specified time interval.
2053
2134
  #
2054
2135
  # @option params [required, String] :frequency
2055
- # How often the scheduled audit takes place. Can be one of "DAILY",
2056
- # "WEEKLY", "BIWEEKLY" or "MONTHLY". The start time of each audit
2057
- # is determined by the system.
2136
+ # How often the scheduled audit takes place, either `DAILY`, `WEEKLY`,
2137
+ # `BIWEEKLY` or `MONTHLY`. The start time of each audit is determined by
2138
+ # the system.
2058
2139
  #
2059
2140
  # @option params [String] :day_of_month
2060
- # The day of the month on which the scheduled audit takes place. Can be
2061
- # "1" through "31" or "LAST". This field is required if the
2062
- # "frequency" parameter is set to "MONTHLY". If days 29-31 are
2063
- # specified, and the month does not have that many days, the audit takes
2064
- # place on the "LAST" day of the month.
2141
+ # The day of the month on which the scheduled audit takes place. This
2142
+ # can be "1" through "31" or "LAST". This field is required if the
2143
+ # "frequency" parameter is set to `MONTHLY`. If days 29 to 31 are
2144
+ # specified, and the month doesn't have that many days, the audit takes
2145
+ # place on the `LAST` day of the month.
2065
2146
  #
2066
2147
  # @option params [String] :day_of_week
2067
- # The day of the week on which the scheduled audit takes place. Can be
2068
- # one of "SUN", "MON", "TUE", "WED", "THU", "FRI", or
2069
- # "SAT". This field is required if the "frequency" parameter is set
2070
- # to "WEEKLY" or "BIWEEKLY".
2148
+ # The day of the week on which the scheduled audit takes place, either
2149
+ # `SUN`, `MON`, `TUE`, `WED`, `THU`, `FRI`, or `SAT`. This field is
2150
+ # required if the `frequency` parameter is set to `WEEKLY` or
2151
+ # `BIWEEKLY`.
2071
2152
  #
2072
2153
  # @option params [required, Array<String>] :target_check_names
2073
2154
  # Which checks are performed during the scheduled audit. Checks must be
@@ -2135,12 +2216,14 @@ module Aws::IoT
2135
2216
  #
2136
2217
  # A list of metrics whose data is retained (stored). By default, data is
2137
2218
  # retained for any metric used in the profile's `behaviors`, but it is
2138
- # also retained for any metric specified here.
2219
+ # also retained for any metric specified here. Can be used with custom
2220
+ # metrics; cannot be used with dimensions.
2139
2221
  #
2140
2222
  # @option params [Array<Types::MetricToRetain>] :additional_metrics_to_retain_v2
2141
2223
  # A list of metrics whose data is retained (stored). By default, data is
2142
2224
  # retained for any metric used in the profile's `behaviors`, but it is
2143
- # also retained for any metric specified here.
2225
+ # also retained for any metric specified here. Can be used with custom
2226
+ # metrics; cannot be used with dimensions.
2144
2227
  #
2145
2228
  # @option params [Array<Types::Tag>] :tags
2146
2229
  # Metadata that can be used to manage the security profile.
@@ -2164,11 +2247,14 @@ module Aws::IoT
2164
2247
  # operator: "IN", # accepts IN, NOT_IN
2165
2248
  # },
2166
2249
  # criteria: {
2167
- # comparison_operator: "less-than", # accepts less-than, less-than-equals, greater-than, greater-than-equals, in-cidr-set, not-in-cidr-set, in-port-set, not-in-port-set
2250
+ # comparison_operator: "less-than", # accepts less-than, less-than-equals, greater-than, greater-than-equals, in-cidr-set, not-in-cidr-set, in-port-set, not-in-port-set, in-set, not-in-set
2168
2251
  # value: {
2169
2252
  # count: 1,
2170
2253
  # cidrs: ["Cidr"],
2171
2254
  # ports: [1],
2255
+ # number: 1.0,
2256
+ # numbers: [1.0],
2257
+ # strings: ["stringValue"],
2172
2258
  # },
2173
2259
  # duration_seconds: 1,
2174
2260
  # consecutive_datapoints_to_alarm: 1,
@@ -2176,7 +2262,11 @@ module Aws::IoT
2176
2262
  # statistical_threshold: {
2177
2263
  # statistic: "EvaluationStatistic",
2178
2264
  # },
2265
+ # ml_detection_config: {
2266
+ # confidence_level: "LOW", # required, accepts LOW, MEDIUM, HIGH
2267
+ # },
2179
2268
  # },
2269
+ # suppress_alerts: false,
2180
2270
  # },
2181
2271
  # ],
2182
2272
  # alert_targets: {
@@ -2651,6 +2741,15 @@ module Aws::IoT
2651
2741
  # },
2652
2742
  # },
2653
2743
  # },
2744
+ # kafka: {
2745
+ # destination_arn: "AwsArn", # required
2746
+ # topic: "String", # required
2747
+ # key: "String",
2748
+ # partition: "String",
2749
+ # client_properties: { # required
2750
+ # "String" => "String",
2751
+ # },
2752
+ # },
2654
2753
  # },
2655
2754
  # ],
2656
2755
  # rule_disabled: false,
@@ -2813,6 +2912,15 @@ module Aws::IoT
2813
2912
  # },
2814
2913
  # },
2815
2914
  # },
2915
+ # kafka: {
2916
+ # destination_arn: "AwsArn", # required
2917
+ # topic: "String", # required
2918
+ # key: "String",
2919
+ # partition: "String",
2920
+ # client_properties: { # required
2921
+ # "String" => "String",
2922
+ # },
2923
+ # },
2816
2924
  # },
2817
2925
  # },
2818
2926
  # tags: "String",
@@ -2842,15 +2950,29 @@ module Aws::IoT
2842
2950
  # http_url_configuration: {
2843
2951
  # confirmation_url: "Url", # required
2844
2952
  # },
2953
+ # vpc_configuration: {
2954
+ # subnet_ids: ["SubnetId"], # required
2955
+ # security_groups: ["SecurityGroupId"],
2956
+ # vpc_id: "VpcId", # required
2957
+ # role_arn: "AwsArn", # required
2958
+ # },
2845
2959
  # },
2846
2960
  # })
2847
2961
  #
2848
2962
  # @example Response structure
2849
2963
  #
2850
2964
  # resp.topic_rule_destination.arn #=> String
2851
- # resp.topic_rule_destination.status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR"
2965
+ # resp.topic_rule_destination.status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR", "DELETING"
2966
+ # resp.topic_rule_destination.created_at #=> Time
2967
+ # resp.topic_rule_destination.last_updated_at #=> Time
2852
2968
  # resp.topic_rule_destination.status_reason #=> String
2853
2969
  # resp.topic_rule_destination.http_url_properties.confirmation_url #=> String
2970
+ # resp.topic_rule_destination.vpc_properties.subnet_ids #=> Array
2971
+ # resp.topic_rule_destination.vpc_properties.subnet_ids[0] #=> String
2972
+ # resp.topic_rule_destination.vpc_properties.security_groups #=> Array
2973
+ # resp.topic_rule_destination.vpc_properties.security_groups[0] #=> String
2974
+ # resp.topic_rule_destination.vpc_properties.vpc_id #=> String
2975
+ # resp.topic_rule_destination.vpc_properties.role_arn #=> String
2854
2976
  #
2855
2977
  # @overload create_topic_rule_destination(params = {})
2856
2978
  # @param [Hash] params ({})
@@ -3020,6 +3142,38 @@ module Aws::IoT
3020
3142
  req.send_request(options)
3021
3143
  end
3022
3144
 
3145
+ # <note markdown="1"> Before you can delete a custom metric, you must first remove the
3146
+ # custom metric from all security profiles it's a part of. The security
3147
+ # profile associated with the custom metric can be found using the
3148
+ # [ListSecurityProfiles][1] API with `metricName` set to your custom
3149
+ # metric name.
3150
+ #
3151
+ # </note>
3152
+ #
3153
+ # Deletes a Device Defender detect custom metric.
3154
+ #
3155
+ #
3156
+ #
3157
+ # [1]: https://docs.aws.amazon.com/iot/latest/apireference/API_ListSecurityProfiles.html
3158
+ #
3159
+ # @option params [required, String] :metric_name
3160
+ # The name of the custom metric.
3161
+ #
3162
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3163
+ #
3164
+ # @example Request syntax with placeholder values
3165
+ #
3166
+ # resp = client.delete_custom_metric({
3167
+ # metric_name: "MetricName", # required
3168
+ # })
3169
+ #
3170
+ # @overload delete_custom_metric(params = {})
3171
+ # @param [Hash] params ({})
3172
+ def delete_custom_metric(params = {}, options = {})
3173
+ req = build_request(:delete_custom_metric, params)
3174
+ req.send_request(options)
3175
+ end
3176
+
3023
3177
  # Removes the specified dimension from your AWS account.
3024
3178
  #
3025
3179
  # @option params [required, String] :name
@@ -3239,12 +3393,15 @@ module Aws::IoT
3239
3393
  # The ID of the OTA update to delete.
3240
3394
  #
3241
3395
  # @option params [Boolean] :delete_stream
3242
- # Specifies if the stream associated with an OTA update should be
3243
- # deleted when the OTA update is deleted.
3396
+ # When true, the stream created by the OTAUpdate process is deleted when
3397
+ # the OTA update is deleted. Ignored if the stream specified in the
3398
+ # OTAUpdate is supplied by the user.
3244
3399
  #
3245
3400
  # @option params [Boolean] :force_delete_aws_job
3246
- # Specifies if the AWS Job associated with the OTA update should be
3247
- # deleted when the OTA update is deleted.
3401
+ # When true, deletes the AWS job created by the OTAUpdate process even
3402
+ # if it is "IN\_PROGRESS". Otherwise, if the job is not in a terminal
3403
+ # state ("COMPLETED" or "CANCELED") an exception will occur. The
3404
+ # default is false.
3248
3405
  #
3249
3406
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3250
3407
  #
@@ -3661,8 +3818,8 @@ module Aws::IoT
3661
3818
  end
3662
3819
 
3663
3820
  # Gets information about a single audit finding. Properties include the
3664
- # reason for noncompliance, the severity of the issue, and when the
3665
- # audit that returned the finding was started.
3821
+ # reason for noncompliance, the severity of the issue, and the start
3822
+ # time when the audit that returned the finding.
3666
3823
  #
3667
3824
  # @option params [required, String] :finding_id
3668
3825
  # A unique identifier for a single audit finding. You can use this
@@ -3743,7 +3900,7 @@ module Aws::IoT
3743
3900
  # @example Request syntax with placeholder values
3744
3901
  #
3745
3902
  # resp = client.describe_audit_mitigation_actions_task({
3746
- # task_id: "AuditMitigationActionsTaskId", # required
3903
+ # task_id: "MitigationActionsTaskId", # required
3747
3904
  # })
3748
3905
  #
3749
3906
  # @example Response structure
@@ -4053,6 +4210,42 @@ module Aws::IoT
4053
4210
  req.send_request(options)
4054
4211
  end
4055
4212
 
4213
+ # Gets information about a Device Defender detect custom metric.
4214
+ #
4215
+ # @option params [required, String] :metric_name
4216
+ # The name of the custom metric.
4217
+ #
4218
+ # @return [Types::DescribeCustomMetricResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4219
+ #
4220
+ # * {Types::DescribeCustomMetricResponse#metric_name #metric_name} => String
4221
+ # * {Types::DescribeCustomMetricResponse#metric_arn #metric_arn} => String
4222
+ # * {Types::DescribeCustomMetricResponse#metric_type #metric_type} => String
4223
+ # * {Types::DescribeCustomMetricResponse#display_name #display_name} => String
4224
+ # * {Types::DescribeCustomMetricResponse#creation_date #creation_date} => Time
4225
+ # * {Types::DescribeCustomMetricResponse#last_modified_date #last_modified_date} => Time
4226
+ #
4227
+ # @example Request syntax with placeholder values
4228
+ #
4229
+ # resp = client.describe_custom_metric({
4230
+ # metric_name: "MetricName", # required
4231
+ # })
4232
+ #
4233
+ # @example Response structure
4234
+ #
4235
+ # resp.metric_name #=> String
4236
+ # resp.metric_arn #=> String
4237
+ # resp.metric_type #=> String, one of "string-list", "ip-address-list", "number-list", "number"
4238
+ # resp.display_name #=> String
4239
+ # resp.creation_date #=> Time
4240
+ # resp.last_modified_date #=> Time
4241
+ #
4242
+ # @overload describe_custom_metric(params = {})
4243
+ # @param [Hash] params ({})
4244
+ def describe_custom_metric(params = {}, options = {})
4245
+ req = build_request(:describe_custom_metric, params)
4246
+ req.send_request(options)
4247
+ end
4248
+
4056
4249
  # Describes the default authorizer.
4057
4250
  #
4058
4251
  # @return [Types::DescribeDefaultAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -4079,6 +4272,59 @@ module Aws::IoT
4079
4272
  req.send_request(options)
4080
4273
  end
4081
4274
 
4275
+ # Gets information about a Device Defender ML Detect mitigation action.
4276
+ #
4277
+ # @option params [required, String] :task_id
4278
+ # The unique identifier of the task.
4279
+ #
4280
+ # @return [Types::DescribeDetectMitigationActionsTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4281
+ #
4282
+ # * {Types::DescribeDetectMitigationActionsTaskResponse#task_summary #task_summary} => Types::DetectMitigationActionsTaskSummary
4283
+ #
4284
+ # @example Request syntax with placeholder values
4285
+ #
4286
+ # resp = client.describe_detect_mitigation_actions_task({
4287
+ # task_id: "MitigationActionsTaskId", # required
4288
+ # })
4289
+ #
4290
+ # @example Response structure
4291
+ #
4292
+ # resp.task_summary.task_id #=> String
4293
+ # resp.task_summary.task_status #=> String, one of "IN_PROGRESS", "SUCCESSFUL", "FAILED", "CANCELED"
4294
+ # resp.task_summary.task_start_time #=> Time
4295
+ # resp.task_summary.task_end_time #=> Time
4296
+ # resp.task_summary.target.violation_ids #=> Array
4297
+ # resp.task_summary.target.violation_ids[0] #=> String
4298
+ # resp.task_summary.target.security_profile_name #=> String
4299
+ # resp.task_summary.target.behavior_name #=> String
4300
+ # resp.task_summary.violation_event_occurrence_range.start_time #=> Time
4301
+ # resp.task_summary.violation_event_occurrence_range.end_time #=> Time
4302
+ # resp.task_summary.only_active_violations_included #=> Boolean
4303
+ # resp.task_summary.suppressed_alerts_included #=> Boolean
4304
+ # resp.task_summary.actions_definition #=> Array
4305
+ # resp.task_summary.actions_definition[0].name #=> String
4306
+ # resp.task_summary.actions_definition[0].id #=> String
4307
+ # resp.task_summary.actions_definition[0].role_arn #=> String
4308
+ # resp.task_summary.actions_definition[0].action_params.update_device_certificate_params.action #=> String, one of "DEACTIVATE"
4309
+ # resp.task_summary.actions_definition[0].action_params.update_ca_certificate_params.action #=> String, one of "DEACTIVATE"
4310
+ # resp.task_summary.actions_definition[0].action_params.add_things_to_thing_group_params.thing_group_names #=> Array
4311
+ # resp.task_summary.actions_definition[0].action_params.add_things_to_thing_group_params.thing_group_names[0] #=> String
4312
+ # resp.task_summary.actions_definition[0].action_params.add_things_to_thing_group_params.override_dynamic_groups #=> Boolean
4313
+ # resp.task_summary.actions_definition[0].action_params.replace_default_policy_version_params.template_name #=> String, one of "BLANK_POLICY"
4314
+ # resp.task_summary.actions_definition[0].action_params.enable_io_t_logging_params.role_arn_for_logging #=> String
4315
+ # resp.task_summary.actions_definition[0].action_params.enable_io_t_logging_params.log_level #=> String, one of "DEBUG", "INFO", "ERROR", "WARN", "DISABLED"
4316
+ # resp.task_summary.actions_definition[0].action_params.publish_finding_to_sns_params.topic_arn #=> String
4317
+ # resp.task_summary.task_statistics.actions_executed #=> Integer
4318
+ # resp.task_summary.task_statistics.actions_skipped #=> Integer
4319
+ # resp.task_summary.task_statistics.actions_failed #=> Integer
4320
+ #
4321
+ # @overload describe_detect_mitigation_actions_task(params = {})
4322
+ # @param [Hash] params ({})
4323
+ def describe_detect_mitigation_actions_task(params = {}, options = {})
4324
+ req = build_request(:describe_detect_mitigation_actions_task, params)
4325
+ req.send_request(options)
4326
+ end
4327
+
4082
4328
  # Provides details about a dimension that is defined in your AWS
4083
4329
  # account.
4084
4330
  #
@@ -4612,16 +4858,23 @@ module Aws::IoT
4612
4858
  # resp.behaviors[0].metric #=> String
4613
4859
  # resp.behaviors[0].metric_dimension.dimension_name #=> String
4614
4860
  # resp.behaviors[0].metric_dimension.operator #=> String, one of "IN", "NOT_IN"
4615
- # resp.behaviors[0].criteria.comparison_operator #=> String, one of "less-than", "less-than-equals", "greater-than", "greater-than-equals", "in-cidr-set", "not-in-cidr-set", "in-port-set", "not-in-port-set"
4861
+ # resp.behaviors[0].criteria.comparison_operator #=> String, one of "less-than", "less-than-equals", "greater-than", "greater-than-equals", "in-cidr-set", "not-in-cidr-set", "in-port-set", "not-in-port-set", "in-set", "not-in-set"
4616
4862
  # resp.behaviors[0].criteria.value.count #=> Integer
4617
4863
  # resp.behaviors[0].criteria.value.cidrs #=> Array
4618
4864
  # resp.behaviors[0].criteria.value.cidrs[0] #=> String
4619
4865
  # resp.behaviors[0].criteria.value.ports #=> Array
4620
4866
  # resp.behaviors[0].criteria.value.ports[0] #=> Integer
4867
+ # resp.behaviors[0].criteria.value.number #=> Float
4868
+ # resp.behaviors[0].criteria.value.numbers #=> Array
4869
+ # resp.behaviors[0].criteria.value.numbers[0] #=> Float
4870
+ # resp.behaviors[0].criteria.value.strings #=> Array
4871
+ # resp.behaviors[0].criteria.value.strings[0] #=> String
4621
4872
  # resp.behaviors[0].criteria.duration_seconds #=> Integer
4622
4873
  # resp.behaviors[0].criteria.consecutive_datapoints_to_alarm #=> Integer
4623
4874
  # resp.behaviors[0].criteria.consecutive_datapoints_to_clear #=> Integer
4624
4875
  # resp.behaviors[0].criteria.statistical_threshold.statistic #=> String
4876
+ # resp.behaviors[0].criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
4877
+ # resp.behaviors[0].suppress_alerts #=> Boolean
4625
4878
  # resp.alert_targets #=> Hash
4626
4879
  # resp.alert_targets["AlertTargetType"].alert_target_arn #=> String
4627
4880
  # resp.alert_targets["AlertTargetType"].role_arn #=> String
@@ -5012,6 +5265,52 @@ module Aws::IoT
5012
5265
  req.send_request(options)
5013
5266
  end
5014
5267
 
5268
+ # Returns a Device Defender's ML Detect Security Profile training
5269
+ # model's status.
5270
+ #
5271
+ # @option params [String] :security_profile_name
5272
+ # The name of the security profile.
5273
+ #
5274
+ # @option params [Integer] :max_results
5275
+ # The maximum number of results to return at one time. The default is
5276
+ # 25.
5277
+ #
5278
+ # @option params [String] :next_token
5279
+ # The token for the next set of results.
5280
+ #
5281
+ # @return [Types::GetBehaviorModelTrainingSummariesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5282
+ #
5283
+ # * {Types::GetBehaviorModelTrainingSummariesResponse#summaries #summaries} => Array&lt;Types::BehaviorModelTrainingSummary&gt;
5284
+ # * {Types::GetBehaviorModelTrainingSummariesResponse#next_token #next_token} => String
5285
+ #
5286
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5287
+ #
5288
+ # @example Request syntax with placeholder values
5289
+ #
5290
+ # resp = client.get_behavior_model_training_summaries({
5291
+ # security_profile_name: "SecurityProfileName",
5292
+ # max_results: 1,
5293
+ # next_token: "NextToken",
5294
+ # })
5295
+ #
5296
+ # @example Response structure
5297
+ #
5298
+ # resp.summaries #=> Array
5299
+ # resp.summaries[0].security_profile_name #=> String
5300
+ # resp.summaries[0].behavior_name #=> String
5301
+ # resp.summaries[0].training_data_collection_start_date #=> Time
5302
+ # resp.summaries[0].model_status #=> String, one of "PENDING_BUILD", "ACTIVE", "EXPIRED"
5303
+ # resp.summaries[0].datapoints_collection_percentage #=> Float
5304
+ # resp.summaries[0].last_model_refresh_date #=> Time
5305
+ # resp.next_token #=> String
5306
+ #
5307
+ # @overload get_behavior_model_training_summaries(params = {})
5308
+ # @param [Hash] params ({})
5309
+ def get_behavior_model_training_summaries(params = {}, options = {})
5310
+ req = build_request(:get_behavior_model_training_summaries, params)
5311
+ req.send_request(options)
5312
+ end
5313
+
5015
5314
  # Returns the approximate count of unique values that match the query.
5016
5315
  #
5017
5316
  # @option params [String] :index_name
@@ -5565,6 +5864,12 @@ module Aws::IoT
5565
5864
  # resp.rule.actions[0].http.auth.sigv4.signing_region #=> String
5566
5865
  # resp.rule.actions[0].http.auth.sigv4.service_name #=> String
5567
5866
  # resp.rule.actions[0].http.auth.sigv4.role_arn #=> String
5867
+ # resp.rule.actions[0].kafka.destination_arn #=> String
5868
+ # resp.rule.actions[0].kafka.topic #=> String
5869
+ # resp.rule.actions[0].kafka.key #=> String
5870
+ # resp.rule.actions[0].kafka.partition #=> String
5871
+ # resp.rule.actions[0].kafka.client_properties #=> Hash
5872
+ # resp.rule.actions[0].kafka.client_properties["String"] #=> String
5568
5873
  # resp.rule.rule_disabled #=> Boolean
5569
5874
  # resp.rule.aws_iot_sql_version #=> String
5570
5875
  # resp.rule.error_action.dynamo_db.table_name #=> String
@@ -5660,6 +5965,12 @@ module Aws::IoT
5660
5965
  # resp.rule.error_action.http.auth.sigv4.signing_region #=> String
5661
5966
  # resp.rule.error_action.http.auth.sigv4.service_name #=> String
5662
5967
  # resp.rule.error_action.http.auth.sigv4.role_arn #=> String
5968
+ # resp.rule.error_action.kafka.destination_arn #=> String
5969
+ # resp.rule.error_action.kafka.topic #=> String
5970
+ # resp.rule.error_action.kafka.key #=> String
5971
+ # resp.rule.error_action.kafka.partition #=> String
5972
+ # resp.rule.error_action.kafka.client_properties #=> Hash
5973
+ # resp.rule.error_action.kafka.client_properties["String"] #=> String
5663
5974
  #
5664
5975
  # @overload get_topic_rule(params = {})
5665
5976
  # @param [Hash] params ({})
@@ -5686,9 +5997,17 @@ module Aws::IoT
5686
5997
  # @example Response structure
5687
5998
  #
5688
5999
  # resp.topic_rule_destination.arn #=> String
5689
- # resp.topic_rule_destination.status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR"
6000
+ # resp.topic_rule_destination.status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR", "DELETING"
6001
+ # resp.topic_rule_destination.created_at #=> Time
6002
+ # resp.topic_rule_destination.last_updated_at #=> Time
5690
6003
  # resp.topic_rule_destination.status_reason #=> String
5691
6004
  # resp.topic_rule_destination.http_url_properties.confirmation_url #=> String
6005
+ # resp.topic_rule_destination.vpc_properties.subnet_ids #=> Array
6006
+ # resp.topic_rule_destination.vpc_properties.subnet_ids[0] #=> String
6007
+ # resp.topic_rule_destination.vpc_properties.security_groups #=> Array
6008
+ # resp.topic_rule_destination.vpc_properties.security_groups[0] #=> String
6009
+ # resp.topic_rule_destination.vpc_properties.vpc_id #=> String
6010
+ # resp.topic_rule_destination.vpc_properties.role_arn #=> String
5692
6011
  #
5693
6012
  # @overload get_topic_rule_destination(params = {})
5694
6013
  # @param [Hash] params ({})
@@ -5728,6 +6047,12 @@ module Aws::IoT
5728
6047
  # The name of the Device Defender security profile for which violations
5729
6048
  # are listed.
5730
6049
  #
6050
+ # @option params [String] :behavior_criteria_type
6051
+ # The criteria for a behavior.
6052
+ #
6053
+ # @option params [Boolean] :list_suppressed_alerts
6054
+ # A list of all suppressed alerts.
6055
+ #
5731
6056
  # @option params [String] :next_token
5732
6057
  # The token for the next set of results.
5733
6058
  #
@@ -5746,6 +6071,8 @@ module Aws::IoT
5746
6071
  # resp = client.list_active_violations({
5747
6072
  # thing_name: "DeviceDefenderThingName",
5748
6073
  # security_profile_name: "SecurityProfileName",
6074
+ # behavior_criteria_type: "STATIC", # accepts STATIC, STATISTICAL, MACHINE_LEARNING
6075
+ # list_suppressed_alerts: false,
5749
6076
  # next_token: "NextToken",
5750
6077
  # max_results: 1,
5751
6078
  # })
@@ -5760,21 +6087,34 @@ module Aws::IoT
5760
6087
  # resp.active_violations[0].behavior.metric #=> String
5761
6088
  # resp.active_violations[0].behavior.metric_dimension.dimension_name #=> String
5762
6089
  # resp.active_violations[0].behavior.metric_dimension.operator #=> String, one of "IN", "NOT_IN"
5763
- # resp.active_violations[0].behavior.criteria.comparison_operator #=> String, one of "less-than", "less-than-equals", "greater-than", "greater-than-equals", "in-cidr-set", "not-in-cidr-set", "in-port-set", "not-in-port-set"
6090
+ # resp.active_violations[0].behavior.criteria.comparison_operator #=> String, one of "less-than", "less-than-equals", "greater-than", "greater-than-equals", "in-cidr-set", "not-in-cidr-set", "in-port-set", "not-in-port-set", "in-set", "not-in-set"
5764
6091
  # resp.active_violations[0].behavior.criteria.value.count #=> Integer
5765
6092
  # resp.active_violations[0].behavior.criteria.value.cidrs #=> Array
5766
6093
  # resp.active_violations[0].behavior.criteria.value.cidrs[0] #=> String
5767
6094
  # resp.active_violations[0].behavior.criteria.value.ports #=> Array
5768
6095
  # resp.active_violations[0].behavior.criteria.value.ports[0] #=> Integer
6096
+ # resp.active_violations[0].behavior.criteria.value.number #=> Float
6097
+ # resp.active_violations[0].behavior.criteria.value.numbers #=> Array
6098
+ # resp.active_violations[0].behavior.criteria.value.numbers[0] #=> Float
6099
+ # resp.active_violations[0].behavior.criteria.value.strings #=> Array
6100
+ # resp.active_violations[0].behavior.criteria.value.strings[0] #=> String
5769
6101
  # resp.active_violations[0].behavior.criteria.duration_seconds #=> Integer
5770
6102
  # resp.active_violations[0].behavior.criteria.consecutive_datapoints_to_alarm #=> Integer
5771
6103
  # resp.active_violations[0].behavior.criteria.consecutive_datapoints_to_clear #=> Integer
5772
6104
  # resp.active_violations[0].behavior.criteria.statistical_threshold.statistic #=> String
6105
+ # resp.active_violations[0].behavior.criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
6106
+ # resp.active_violations[0].behavior.suppress_alerts #=> Boolean
5773
6107
  # resp.active_violations[0].last_violation_value.count #=> Integer
5774
6108
  # resp.active_violations[0].last_violation_value.cidrs #=> Array
5775
6109
  # resp.active_violations[0].last_violation_value.cidrs[0] #=> String
5776
6110
  # resp.active_violations[0].last_violation_value.ports #=> Array
5777
6111
  # resp.active_violations[0].last_violation_value.ports[0] #=> Integer
6112
+ # resp.active_violations[0].last_violation_value.number #=> Float
6113
+ # resp.active_violations[0].last_violation_value.numbers #=> Array
6114
+ # resp.active_violations[0].last_violation_value.numbers[0] #=> Float
6115
+ # resp.active_violations[0].last_violation_value.strings #=> Array
6116
+ # resp.active_violations[0].last_violation_value.strings[0] #=> String
6117
+ # resp.active_violations[0].violation_event_additional_info.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
5778
6118
  # resp.active_violations[0].last_violation_time #=> Time
5779
6119
  # resp.active_violations[0].violation_start_time #=> Time
5780
6120
  # resp.next_token #=> String
@@ -5981,7 +6321,7 @@ module Aws::IoT
5981
6321
  # @example Request syntax with placeholder values
5982
6322
  #
5983
6323
  # resp = client.list_audit_mitigation_actions_executions({
5984
- # task_id: "AuditMitigationActionsTaskId", # required
6324
+ # task_id: "MitigationActionsTaskId", # required
5985
6325
  # action_status: "IN_PROGRESS", # accepts IN_PROGRESS, COMPLETED, FAILED, CANCELED, SKIPPED, PENDING
5986
6326
  # finding_id: "FindingId", # required
5987
6327
  # max_results: 1,
@@ -6437,6 +6777,184 @@ module Aws::IoT
6437
6777
  req.send_request(options)
6438
6778
  end
6439
6779
 
6780
+ # Lists your Device Defender detect custom metrics.
6781
+ #
6782
+ # @option params [String] :next_token
6783
+ # The token for the next set of results.
6784
+ #
6785
+ # @option params [Integer] :max_results
6786
+ # The maximum number of results to return at one time. The default is
6787
+ # 25.
6788
+ #
6789
+ # @return [Types::ListCustomMetricsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6790
+ #
6791
+ # * {Types::ListCustomMetricsResponse#metric_names #metric_names} => Array&lt;String&gt;
6792
+ # * {Types::ListCustomMetricsResponse#next_token #next_token} => String
6793
+ #
6794
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
6795
+ #
6796
+ # @example Request syntax with placeholder values
6797
+ #
6798
+ # resp = client.list_custom_metrics({
6799
+ # next_token: "NextToken",
6800
+ # max_results: 1,
6801
+ # })
6802
+ #
6803
+ # @example Response structure
6804
+ #
6805
+ # resp.metric_names #=> Array
6806
+ # resp.metric_names[0] #=> String
6807
+ # resp.next_token #=> String
6808
+ #
6809
+ # @overload list_custom_metrics(params = {})
6810
+ # @param [Hash] params ({})
6811
+ def list_custom_metrics(params = {}, options = {})
6812
+ req = build_request(:list_custom_metrics, params)
6813
+ req.send_request(options)
6814
+ end
6815
+
6816
+ # Lists mitigation actions executions for a Device Defender ML Detect
6817
+ # Security Profile.
6818
+ #
6819
+ # @option params [String] :task_id
6820
+ # The unique identifier of the task.
6821
+ #
6822
+ # @option params [String] :violation_id
6823
+ # The unique identifier of the violation.
6824
+ #
6825
+ # @option params [String] :thing_name
6826
+ # The name of the thing whose mitigation actions are listed.
6827
+ #
6828
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
6829
+ # A filter to limit results to those found after the specified time. You
6830
+ # must specify either the startTime and endTime or the taskId, but not
6831
+ # both.
6832
+ #
6833
+ # @option params [Time,DateTime,Date,Integer,String] :end_time
6834
+ # The end of the time period for which ML Detect mitigation actions
6835
+ # executions are returned.
6836
+ #
6837
+ # @option params [Integer] :max_results
6838
+ # The maximum number of results to return at one time. The default is
6839
+ # 25.
6840
+ #
6841
+ # @option params [String] :next_token
6842
+ # The token for the next set of results.
6843
+ #
6844
+ # @return [Types::ListDetectMitigationActionsExecutionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6845
+ #
6846
+ # * {Types::ListDetectMitigationActionsExecutionsResponse#actions_executions #actions_executions} => Array&lt;Types::DetectMitigationActionExecution&gt;
6847
+ # * {Types::ListDetectMitigationActionsExecutionsResponse#next_token #next_token} => String
6848
+ #
6849
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
6850
+ #
6851
+ # @example Request syntax with placeholder values
6852
+ #
6853
+ # resp = client.list_detect_mitigation_actions_executions({
6854
+ # task_id: "MitigationActionsTaskId",
6855
+ # violation_id: "ViolationId",
6856
+ # thing_name: "DeviceDefenderThingName",
6857
+ # start_time: Time.now,
6858
+ # end_time: Time.now,
6859
+ # max_results: 1,
6860
+ # next_token: "NextToken",
6861
+ # })
6862
+ #
6863
+ # @example Response structure
6864
+ #
6865
+ # resp.actions_executions #=> Array
6866
+ # resp.actions_executions[0].task_id #=> String
6867
+ # resp.actions_executions[0].violation_id #=> String
6868
+ # resp.actions_executions[0].action_name #=> String
6869
+ # resp.actions_executions[0].thing_name #=> String
6870
+ # resp.actions_executions[0].execution_start_date #=> Time
6871
+ # resp.actions_executions[0].execution_end_date #=> Time
6872
+ # resp.actions_executions[0].status #=> String, one of "IN_PROGRESS", "SUCCESSFUL", "FAILED", "SKIPPED"
6873
+ # resp.actions_executions[0].error_code #=> String
6874
+ # resp.actions_executions[0].message #=> String
6875
+ # resp.next_token #=> String
6876
+ #
6877
+ # @overload list_detect_mitigation_actions_executions(params = {})
6878
+ # @param [Hash] params ({})
6879
+ def list_detect_mitigation_actions_executions(params = {}, options = {})
6880
+ req = build_request(:list_detect_mitigation_actions_executions, params)
6881
+ req.send_request(options)
6882
+ end
6883
+
6884
+ # List of Device Defender ML Detect mitigation actions tasks.
6885
+ #
6886
+ # @option params [Integer] :max_results
6887
+ # The maximum number of results to return at one time. The default is
6888
+ # 25.
6889
+ #
6890
+ # @option params [String] :next_token
6891
+ # The token for the next set of results.
6892
+ #
6893
+ # @option params [required, Time,DateTime,Date,Integer,String] :start_time
6894
+ # A filter to limit results to those found after the specified time. You
6895
+ # must specify either the startTime and endTime or the taskId, but not
6896
+ # both.
6897
+ #
6898
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
6899
+ # The end of the time period for which ML Detect mitigation actions
6900
+ # tasks are returned.
6901
+ #
6902
+ # @return [Types::ListDetectMitigationActionsTasksResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6903
+ #
6904
+ # * {Types::ListDetectMitigationActionsTasksResponse#tasks #tasks} => Array&lt;Types::DetectMitigationActionsTaskSummary&gt;
6905
+ # * {Types::ListDetectMitigationActionsTasksResponse#next_token #next_token} => String
6906
+ #
6907
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
6908
+ #
6909
+ # @example Request syntax with placeholder values
6910
+ #
6911
+ # resp = client.list_detect_mitigation_actions_tasks({
6912
+ # max_results: 1,
6913
+ # next_token: "NextToken",
6914
+ # start_time: Time.now, # required
6915
+ # end_time: Time.now, # required
6916
+ # })
6917
+ #
6918
+ # @example Response structure
6919
+ #
6920
+ # resp.tasks #=> Array
6921
+ # resp.tasks[0].task_id #=> String
6922
+ # resp.tasks[0].task_status #=> String, one of "IN_PROGRESS", "SUCCESSFUL", "FAILED", "CANCELED"
6923
+ # resp.tasks[0].task_start_time #=> Time
6924
+ # resp.tasks[0].task_end_time #=> Time
6925
+ # resp.tasks[0].target.violation_ids #=> Array
6926
+ # resp.tasks[0].target.violation_ids[0] #=> String
6927
+ # resp.tasks[0].target.security_profile_name #=> String
6928
+ # resp.tasks[0].target.behavior_name #=> String
6929
+ # resp.tasks[0].violation_event_occurrence_range.start_time #=> Time
6930
+ # resp.tasks[0].violation_event_occurrence_range.end_time #=> Time
6931
+ # resp.tasks[0].only_active_violations_included #=> Boolean
6932
+ # resp.tasks[0].suppressed_alerts_included #=> Boolean
6933
+ # resp.tasks[0].actions_definition #=> Array
6934
+ # resp.tasks[0].actions_definition[0].name #=> String
6935
+ # resp.tasks[0].actions_definition[0].id #=> String
6936
+ # resp.tasks[0].actions_definition[0].role_arn #=> String
6937
+ # resp.tasks[0].actions_definition[0].action_params.update_device_certificate_params.action #=> String, one of "DEACTIVATE"
6938
+ # resp.tasks[0].actions_definition[0].action_params.update_ca_certificate_params.action #=> String, one of "DEACTIVATE"
6939
+ # resp.tasks[0].actions_definition[0].action_params.add_things_to_thing_group_params.thing_group_names #=> Array
6940
+ # resp.tasks[0].actions_definition[0].action_params.add_things_to_thing_group_params.thing_group_names[0] #=> String
6941
+ # resp.tasks[0].actions_definition[0].action_params.add_things_to_thing_group_params.override_dynamic_groups #=> Boolean
6942
+ # resp.tasks[0].actions_definition[0].action_params.replace_default_policy_version_params.template_name #=> String, one of "BLANK_POLICY"
6943
+ # resp.tasks[0].actions_definition[0].action_params.enable_io_t_logging_params.role_arn_for_logging #=> String
6944
+ # resp.tasks[0].actions_definition[0].action_params.enable_io_t_logging_params.log_level #=> String, one of "DEBUG", "INFO", "ERROR", "WARN", "DISABLED"
6945
+ # resp.tasks[0].actions_definition[0].action_params.publish_finding_to_sns_params.topic_arn #=> String
6946
+ # resp.tasks[0].task_statistics.actions_executed #=> Integer
6947
+ # resp.tasks[0].task_statistics.actions_skipped #=> Integer
6948
+ # resp.tasks[0].task_statistics.actions_failed #=> Integer
6949
+ # resp.next_token #=> String
6950
+ #
6951
+ # @overload list_detect_mitigation_actions_tasks(params = {})
6952
+ # @param [Hash] params ({})
6953
+ def list_detect_mitigation_actions_tasks(params = {}, options = {})
6954
+ req = build_request(:list_detect_mitigation_actions_tasks, params)
6955
+ req.send_request(options)
6956
+ end
6957
+
6440
6958
  # List the set of dimensions that are defined for your AWS account.
6441
6959
  #
6442
6960
  # @option params [String] :next_token
@@ -7255,9 +7773,12 @@ module Aws::IoT
7255
7773
  req.send_request(options)
7256
7774
  end
7257
7775
 
7258
- # Lists the Device Defender security profiles you have created. You can
7259
- # use filters to list only those security profiles associated with a
7260
- # thing group or only those associated with your account.
7776
+ # Lists the Device Defender security profiles you've created. You can
7777
+ # filter security profiles by dimension or custom metric.
7778
+ #
7779
+ # <note markdown="1"> `dimensionName` and `metricName` cannot be used in the same request.
7780
+ #
7781
+ # </note>
7261
7782
  #
7262
7783
  # @option params [String] :next_token
7263
7784
  # The token for the next set of results.
@@ -7267,7 +7788,10 @@ module Aws::IoT
7267
7788
  #
7268
7789
  # @option params [String] :dimension_name
7269
7790
  # A filter to limit results to the security profiles that use the
7270
- # defined dimension.
7791
+ # defined dimension. Cannot be used with `metricName`
7792
+ #
7793
+ # @option params [String] :metric_name
7794
+ # The name of the custom metric. Cannot be used with `dimensionName`.
7271
7795
  #
7272
7796
  # @return [Types::ListSecurityProfilesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7273
7797
  #
@@ -7282,6 +7806,7 @@ module Aws::IoT
7282
7806
  # next_token: "NextToken",
7283
7807
  # max_results: 1,
7284
7808
  # dimension_name: "DimensionName",
7809
+ # metric_name: "MetricName",
7285
7810
  # })
7286
7811
  #
7287
7812
  # @example Response structure
@@ -7807,6 +8332,14 @@ module Aws::IoT
7807
8332
  # @option params [String] :thing_type_name
7808
8333
  # The name of the thing type used to search for things.
7809
8334
  #
8335
+ # @option params [Boolean] :use_prefix_attribute_value
8336
+ # When `true`, the action returns the thing resources with attribute
8337
+ # values that start with the `attributeValue` provided.
8338
+ #
8339
+ # When `false`, or not present, the action returns only the thing
8340
+ # resources with attribute values that match the entire `attributeValue`
8341
+ # provided.
8342
+ #
7810
8343
  # @return [Types::ListThingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7811
8344
  #
7812
8345
  # * {Types::ListThingsResponse#things #things} => Array&lt;Types::ThingAttribute&gt;
@@ -7822,6 +8355,7 @@ module Aws::IoT
7822
8355
  # attribute_name: "AttributeName",
7823
8356
  # attribute_value: "AttributeValue",
7824
8357
  # thing_type_name: "ThingTypeName",
8358
+ # use_prefix_attribute_value: false,
7825
8359
  # })
7826
8360
  #
7827
8361
  # @example Response structure
@@ -7957,9 +8491,17 @@ module Aws::IoT
7957
8491
  #
7958
8492
  # resp.destination_summaries #=> Array
7959
8493
  # resp.destination_summaries[0].arn #=> String
7960
- # resp.destination_summaries[0].status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR"
8494
+ # resp.destination_summaries[0].status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR", "DELETING"
8495
+ # resp.destination_summaries[0].created_at #=> Time
8496
+ # resp.destination_summaries[0].last_updated_at #=> Time
7961
8497
  # resp.destination_summaries[0].status_reason #=> String
7962
8498
  # resp.destination_summaries[0].http_url_summary.confirmation_url #=> String
8499
+ # resp.destination_summaries[0].vpc_destination_summary.subnet_ids #=> Array
8500
+ # resp.destination_summaries[0].vpc_destination_summary.subnet_ids[0] #=> String
8501
+ # resp.destination_summaries[0].vpc_destination_summary.security_groups #=> Array
8502
+ # resp.destination_summaries[0].vpc_destination_summary.security_groups[0] #=> String
8503
+ # resp.destination_summaries[0].vpc_destination_summary.vpc_id #=> String
8504
+ # resp.destination_summaries[0].vpc_destination_summary.role_arn #=> String
7963
8505
  # resp.next_token #=> String
7964
8506
  #
7965
8507
  # @overload list_topic_rule_destinations(params = {})
@@ -8081,6 +8623,12 @@ module Aws::IoT
8081
8623
  # A filter to limit results to those alerts generated by the specified
8082
8624
  # security profile.
8083
8625
  #
8626
+ # @option params [String] :behavior_criteria_type
8627
+ # The criteria for a behavior.
8628
+ #
8629
+ # @option params [Boolean] :list_suppressed_alerts
8630
+ # A list of all suppressed alerts.
8631
+ #
8084
8632
  # @option params [String] :next_token
8085
8633
  # The token for the next set of results.
8086
8634
  #
@@ -8101,6 +8649,8 @@ module Aws::IoT
8101
8649
  # end_time: Time.now, # required
8102
8650
  # thing_name: "DeviceDefenderThingName",
8103
8651
  # security_profile_name: "SecurityProfileName",
8652
+ # behavior_criteria_type: "STATIC", # accepts STATIC, STATISTICAL, MACHINE_LEARNING
8653
+ # list_suppressed_alerts: false,
8104
8654
  # next_token: "NextToken",
8105
8655
  # max_results: 1,
8106
8656
  # })
@@ -8115,21 +8665,34 @@ module Aws::IoT
8115
8665
  # resp.violation_events[0].behavior.metric #=> String
8116
8666
  # resp.violation_events[0].behavior.metric_dimension.dimension_name #=> String
8117
8667
  # resp.violation_events[0].behavior.metric_dimension.operator #=> String, one of "IN", "NOT_IN"
8118
- # resp.violation_events[0].behavior.criteria.comparison_operator #=> String, one of "less-than", "less-than-equals", "greater-than", "greater-than-equals", "in-cidr-set", "not-in-cidr-set", "in-port-set", "not-in-port-set"
8668
+ # resp.violation_events[0].behavior.criteria.comparison_operator #=> String, one of "less-than", "less-than-equals", "greater-than", "greater-than-equals", "in-cidr-set", "not-in-cidr-set", "in-port-set", "not-in-port-set", "in-set", "not-in-set"
8119
8669
  # resp.violation_events[0].behavior.criteria.value.count #=> Integer
8120
8670
  # resp.violation_events[0].behavior.criteria.value.cidrs #=> Array
8121
8671
  # resp.violation_events[0].behavior.criteria.value.cidrs[0] #=> String
8122
8672
  # resp.violation_events[0].behavior.criteria.value.ports #=> Array
8123
8673
  # resp.violation_events[0].behavior.criteria.value.ports[0] #=> Integer
8674
+ # resp.violation_events[0].behavior.criteria.value.number #=> Float
8675
+ # resp.violation_events[0].behavior.criteria.value.numbers #=> Array
8676
+ # resp.violation_events[0].behavior.criteria.value.numbers[0] #=> Float
8677
+ # resp.violation_events[0].behavior.criteria.value.strings #=> Array
8678
+ # resp.violation_events[0].behavior.criteria.value.strings[0] #=> String
8124
8679
  # resp.violation_events[0].behavior.criteria.duration_seconds #=> Integer
8125
8680
  # resp.violation_events[0].behavior.criteria.consecutive_datapoints_to_alarm #=> Integer
8126
8681
  # resp.violation_events[0].behavior.criteria.consecutive_datapoints_to_clear #=> Integer
8127
8682
  # resp.violation_events[0].behavior.criteria.statistical_threshold.statistic #=> String
8683
+ # resp.violation_events[0].behavior.criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
8684
+ # resp.violation_events[0].behavior.suppress_alerts #=> Boolean
8128
8685
  # resp.violation_events[0].metric_value.count #=> Integer
8129
8686
  # resp.violation_events[0].metric_value.cidrs #=> Array
8130
8687
  # resp.violation_events[0].metric_value.cidrs[0] #=> String
8131
8688
  # resp.violation_events[0].metric_value.ports #=> Array
8132
8689
  # resp.violation_events[0].metric_value.ports[0] #=> Integer
8690
+ # resp.violation_events[0].metric_value.number #=> Float
8691
+ # resp.violation_events[0].metric_value.numbers #=> Array
8692
+ # resp.violation_events[0].metric_value.numbers[0] #=> Float
8693
+ # resp.violation_events[0].metric_value.strings #=> Array
8694
+ # resp.violation_events[0].metric_value.strings[0] #=> String
8695
+ # resp.violation_events[0].violation_event_additional_info.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
8133
8696
  # resp.violation_events[0].violation_event_type #=> String, one of "in-alarm", "alarm-cleared", "alarm-invalidated"
8134
8697
  # resp.violation_events[0].violation_event_time #=> Time
8135
8698
  # resp.next_token #=> String
@@ -8628,6 +9191,15 @@ module Aws::IoT
8628
9191
  # },
8629
9192
  # },
8630
9193
  # },
9194
+ # kafka: {
9195
+ # destination_arn: "AwsArn", # required
9196
+ # topic: "String", # required
9197
+ # key: "String",
9198
+ # partition: "String",
9199
+ # client_properties: { # required
9200
+ # "String" => "String",
9201
+ # },
9202
+ # },
8631
9203
  # },
8632
9204
  # ],
8633
9205
  # rule_disabled: false,
@@ -8790,6 +9362,15 @@ module Aws::IoT
8790
9362
  # },
8791
9363
  # },
8792
9364
  # },
9365
+ # kafka: {
9366
+ # destination_arn: "AwsArn", # required
9367
+ # topic: "String", # required
9368
+ # key: "String",
9369
+ # partition: "String",
9370
+ # client_properties: { # required
9371
+ # "String" => "String",
9372
+ # },
9373
+ # },
8793
9374
  # },
8794
9375
  # },
8795
9376
  # })
@@ -9012,7 +9593,7 @@ module Aws::IoT
9012
9593
  # @option params [required, Types::AuditMitigationActionsTaskTarget] :target
9013
9594
  # Specifies the audit findings to which the mitigation actions are
9014
9595
  # applied. You can apply them to a type of audit check, to all findings
9015
- # from an audit, or to a speecific set of findings.
9596
+ # from an audit, or to a specific set of findings.
9016
9597
  #
9017
9598
  # @option params [required, Hash<String,Array>] :audit_check_to_actions_mapping
9018
9599
  # For an audit check, specifies which mitigation actions to apply. Those
@@ -9034,7 +9615,7 @@ module Aws::IoT
9034
9615
  # @example Request syntax with placeholder values
9035
9616
  #
9036
9617
  # resp = client.start_audit_mitigation_actions_task({
9037
- # task_id: "AuditMitigationActionsTaskId", # required
9618
+ # task_id: "MitigationActionsTaskId", # required
9038
9619
  # target: { # required
9039
9620
  # audit_task_id: "AuditTaskId",
9040
9621
  # finding_ids: ["FindingId"],
@@ -9059,6 +9640,70 @@ module Aws::IoT
9059
9640
  req.send_request(options)
9060
9641
  end
9061
9642
 
9643
+ # Starts a Device Defender ML Detect mitigation actions task.
9644
+ #
9645
+ # @option params [required, String] :task_id
9646
+ # The unique identifier of the task.
9647
+ #
9648
+ # @option params [required, Types::DetectMitigationActionsTaskTarget] :target
9649
+ # Specifies the ML Detect findings to which the mitigation actions are
9650
+ # applied.
9651
+ #
9652
+ # @option params [required, Array<String>] :actions
9653
+ # The actions to be performed when a device has unexpected behavior.
9654
+ #
9655
+ # @option params [Types::ViolationEventOccurrenceRange] :violation_event_occurrence_range
9656
+ # Specifies the time period of which violation events occurred between.
9657
+ #
9658
+ # @option params [Boolean] :include_only_active_violations
9659
+ # Specifies to list only active violations.
9660
+ #
9661
+ # @option params [Boolean] :include_suppressed_alerts
9662
+ # Specifies to include suppressed alerts.
9663
+ #
9664
+ # @option params [required, String] :client_request_token
9665
+ # Each mitigation action task must have a unique client request token.
9666
+ # If you try to create a new task with the same token as a task that
9667
+ # already exists, an exception occurs. If you omit this value, AWS SDKs
9668
+ # will automatically generate a unique client request.
9669
+ #
9670
+ # **A suitable default value is auto-generated.** You should normally
9671
+ # not need to pass this option.**
9672
+ #
9673
+ # @return [Types::StartDetectMitigationActionsTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9674
+ #
9675
+ # * {Types::StartDetectMitigationActionsTaskResponse#task_id #task_id} => String
9676
+ #
9677
+ # @example Request syntax with placeholder values
9678
+ #
9679
+ # resp = client.start_detect_mitigation_actions_task({
9680
+ # task_id: "MitigationActionsTaskId", # required
9681
+ # target: { # required
9682
+ # violation_ids: ["ViolationId"],
9683
+ # security_profile_name: "SecurityProfileName",
9684
+ # behavior_name: "BehaviorName",
9685
+ # },
9686
+ # actions: ["MitigationActionName"], # required
9687
+ # violation_event_occurrence_range: {
9688
+ # start_time: Time.now, # required
9689
+ # end_time: Time.now, # required
9690
+ # },
9691
+ # include_only_active_violations: false,
9692
+ # include_suppressed_alerts: false,
9693
+ # client_request_token: "ClientRequestToken", # required
9694
+ # })
9695
+ #
9696
+ # @example Response structure
9697
+ #
9698
+ # resp.task_id #=> String
9699
+ #
9700
+ # @overload start_detect_mitigation_actions_task(params = {})
9701
+ # @param [Hash] params ({})
9702
+ def start_detect_mitigation_actions_task(params = {}, options = {})
9703
+ req = build_request(:start_detect_mitigation_actions_task, params)
9704
+ req.send_request(options)
9705
+ end
9706
+
9062
9707
  # Starts an on-demand Device Defender audit.
9063
9708
  #
9064
9709
  # @option params [required, Array<String>] :target_check_names
@@ -9399,9 +10044,9 @@ module Aws::IoT
9399
10044
  # audit checks are enabled or disabled.
9400
10045
  #
9401
10046
  # @option params [String] :role_arn
9402
- # The ARN of the role that grants permission to AWS IoT to access
9403
- # information about your devices, policies, certificates and other items
9404
- # as required when performing an audit.
10047
+ # The Amazon Resource Name (ARN) of the role that grants permission to
10048
+ # AWS IoT to access information about your devices, policies,
10049
+ # certificates, and other items as required when performing an audit.
9405
10050
  #
9406
10051
  # @option params [Hash<String,Types::AuditNotificationTarget>] :audit_notification_target_configurations
9407
10052
  # Information about the targets to which audit notifications are sent.
@@ -9415,7 +10060,7 @@ module Aws::IoT
9415
10060
  # enabled. When a check is disabled, any data collected so far in
9416
10061
  # relation to the check is deleted.
9417
10062
  #
9418
- # You cannot disable a check if it is used by any scheduled audit. You
10063
+ # You cannot disable a check if it's used by any scheduled audit. You
9419
10064
  # must first delete the check from the scheduled audit or delete the
9420
10065
  # scheduled audit itself.
9421
10066
  #
@@ -9671,8 +10316,50 @@ module Aws::IoT
9671
10316
  req.send_request(options)
9672
10317
  end
9673
10318
 
10319
+ # Updates a Device Defender detect custom metric.
10320
+ #
10321
+ # @option params [required, String] :metric_name
10322
+ # The name of the custom metric. Cannot be updated.
10323
+ #
10324
+ # @option params [required, String] :display_name
10325
+ # Field represents a friendly name in the console for the custom metric,
10326
+ # it doesn't have to be unique. Don't use this name as the metric
10327
+ # identifier in the device metric report. Can be updated.
10328
+ #
10329
+ # @return [Types::UpdateCustomMetricResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10330
+ #
10331
+ # * {Types::UpdateCustomMetricResponse#metric_name #metric_name} => String
10332
+ # * {Types::UpdateCustomMetricResponse#metric_arn #metric_arn} => String
10333
+ # * {Types::UpdateCustomMetricResponse#metric_type #metric_type} => String
10334
+ # * {Types::UpdateCustomMetricResponse#display_name #display_name} => String
10335
+ # * {Types::UpdateCustomMetricResponse#creation_date #creation_date} => Time
10336
+ # * {Types::UpdateCustomMetricResponse#last_modified_date #last_modified_date} => Time
10337
+ #
10338
+ # @example Request syntax with placeholder values
10339
+ #
10340
+ # resp = client.update_custom_metric({
10341
+ # metric_name: "MetricName", # required
10342
+ # display_name: "CustomMetricDisplayName", # required
10343
+ # })
10344
+ #
10345
+ # @example Response structure
10346
+ #
10347
+ # resp.metric_name #=> String
10348
+ # resp.metric_arn #=> String
10349
+ # resp.metric_type #=> String, one of "string-list", "ip-address-list", "number-list", "number"
10350
+ # resp.display_name #=> String
10351
+ # resp.creation_date #=> Time
10352
+ # resp.last_modified_date #=> Time
10353
+ #
10354
+ # @overload update_custom_metric(params = {})
10355
+ # @param [Hash] params ({})
10356
+ def update_custom_metric(params = {}, options = {})
10357
+ req = build_request(:update_custom_metric, params)
10358
+ req.send_request(options)
10359
+ end
10360
+
9674
10361
  # Updates the definition for a dimension. You cannot change the type of
9675
- # a dimension after it is created (you can delete it and re-create it).
10362
+ # a dimension after it is created (you can delete it and recreate it).
9676
10363
  #
9677
10364
  # @option params [required, String] :name
9678
10365
  # A unique identifier for the dimension. Choose something that describes
@@ -9990,9 +10677,9 @@ module Aws::IoT
9990
10677
  # Updates the definition for the specified mitigation action.
9991
10678
  #
9992
10679
  # @option params [required, String] :action_name
9993
- # The friendly name for the mitigation action. You can't change the
10680
+ # The friendly name for the mitigation action. You cannot change the
9994
10681
  # name by using `UpdateMitigationAction`. Instead, you must delete and
9995
- # re-create the mitigation action with the new name.
10682
+ # recreate the mitigation action with the new name.
9996
10683
  #
9997
10684
  # @option params [String] :role_arn
9998
10685
  # The ARN of the IAM role that is used to apply the mitigation action.
@@ -10134,22 +10821,22 @@ module Aws::IoT
10134
10821
  # how often the audit takes place.
10135
10822
  #
10136
10823
  # @option params [String] :frequency
10137
- # How often the scheduled audit takes place. Can be one of "DAILY",
10138
- # "WEEKLY", "BIWEEKLY", or "MONTHLY". The start time of each audit
10139
- # is determined by the system.
10824
+ # How often the scheduled audit takes place, either `DAILY`, `WEEKLY`,
10825
+ # `BIWEEKLY`, or `MONTHLY`. The start time of each audit is determined
10826
+ # by the system.
10140
10827
  #
10141
10828
  # @option params [String] :day_of_month
10142
- # The day of the month on which the scheduled audit takes place. Can be
10143
- # "1" through "31" or "LAST". This field is required if the
10144
- # "frequency" parameter is set to "MONTHLY". If days 29-31 are
10829
+ # The day of the month on which the scheduled audit takes place. This
10830
+ # can be `1` through `31` or `LAST`. This field is required if the
10831
+ # `frequency` parameter is set to `MONTHLY`. If days 29-31 are
10145
10832
  # specified, and the month does not have that many days, the audit takes
10146
10833
  # place on the "LAST" day of the month.
10147
10834
  #
10148
10835
  # @option params [String] :day_of_week
10149
- # The day of the week on which the scheduled audit takes place. Can be
10150
- # one of "SUN", "MON", "TUE", "WED", "THU", "FRI", or
10151
- # "SAT". This field is required if the "frequency" parameter is set
10152
- # to "WEEKLY" or "BIWEEKLY".
10836
+ # The day of the week on which the scheduled audit takes place. This can
10837
+ # be one of `SUN`, `MON`, `TUE`, `WED`, `THU`, `FRI`, or `SAT`. This
10838
+ # field is required if the "frequency" parameter is set to `WEEKLY` or
10839
+ # `BIWEEKLY`.
10153
10840
  #
10154
10841
  # @option params [Array<String>] :target_check_names
10155
10842
  # Which checks are performed during the scheduled audit. Checks must be
@@ -10206,12 +10893,14 @@ module Aws::IoT
10206
10893
  #
10207
10894
  # A list of metrics whose data is retained (stored). By default, data is
10208
10895
  # retained for any metric used in the profile's `behaviors`, but it is
10209
- # also retained for any metric specified here.
10896
+ # also retained for any metric specified here. Can be used with custom
10897
+ # metrics; cannot be used with dimensions.
10210
10898
  #
10211
10899
  # @option params [Array<Types::MetricToRetain>] :additional_metrics_to_retain_v2
10212
10900
  # A list of metrics whose data is retained (stored). By default, data is
10213
10901
  # retained for any metric used in the profile's behaviors, but it is
10214
- # also retained for any metric specified here.
10902
+ # also retained for any metric specified here. Can be used with custom
10903
+ # metrics; cannot be used with dimensions.
10215
10904
  #
10216
10905
  # @option params [Boolean] :delete_behaviors
10217
10906
  # If true, delete all `behaviors` defined for this security profile. If
@@ -10261,11 +10950,14 @@ module Aws::IoT
10261
10950
  # operator: "IN", # accepts IN, NOT_IN
10262
10951
  # },
10263
10952
  # criteria: {
10264
- # comparison_operator: "less-than", # accepts less-than, less-than-equals, greater-than, greater-than-equals, in-cidr-set, not-in-cidr-set, in-port-set, not-in-port-set
10953
+ # comparison_operator: "less-than", # accepts less-than, less-than-equals, greater-than, greater-than-equals, in-cidr-set, not-in-cidr-set, in-port-set, not-in-port-set, in-set, not-in-set
10265
10954
  # value: {
10266
10955
  # count: 1,
10267
10956
  # cidrs: ["Cidr"],
10268
10957
  # ports: [1],
10958
+ # number: 1.0,
10959
+ # numbers: [1.0],
10960
+ # strings: ["stringValue"],
10269
10961
  # },
10270
10962
  # duration_seconds: 1,
10271
10963
  # consecutive_datapoints_to_alarm: 1,
@@ -10273,7 +10965,11 @@ module Aws::IoT
10273
10965
  # statistical_threshold: {
10274
10966
  # statistic: "EvaluationStatistic",
10275
10967
  # },
10968
+ # ml_detection_config: {
10969
+ # confidence_level: "LOW", # required, accepts LOW, MEDIUM, HIGH
10970
+ # },
10276
10971
  # },
10972
+ # suppress_alerts: false,
10277
10973
  # },
10278
10974
  # ],
10279
10975
  # alert_targets: {
@@ -10308,16 +11004,23 @@ module Aws::IoT
10308
11004
  # resp.behaviors[0].metric #=> String
10309
11005
  # resp.behaviors[0].metric_dimension.dimension_name #=> String
10310
11006
  # resp.behaviors[0].metric_dimension.operator #=> String, one of "IN", "NOT_IN"
10311
- # resp.behaviors[0].criteria.comparison_operator #=> String, one of "less-than", "less-than-equals", "greater-than", "greater-than-equals", "in-cidr-set", "not-in-cidr-set", "in-port-set", "not-in-port-set"
11007
+ # resp.behaviors[0].criteria.comparison_operator #=> String, one of "less-than", "less-than-equals", "greater-than", "greater-than-equals", "in-cidr-set", "not-in-cidr-set", "in-port-set", "not-in-port-set", "in-set", "not-in-set"
10312
11008
  # resp.behaviors[0].criteria.value.count #=> Integer
10313
11009
  # resp.behaviors[0].criteria.value.cidrs #=> Array
10314
11010
  # resp.behaviors[0].criteria.value.cidrs[0] #=> String
10315
11011
  # resp.behaviors[0].criteria.value.ports #=> Array
10316
11012
  # resp.behaviors[0].criteria.value.ports[0] #=> Integer
11013
+ # resp.behaviors[0].criteria.value.number #=> Float
11014
+ # resp.behaviors[0].criteria.value.numbers #=> Array
11015
+ # resp.behaviors[0].criteria.value.numbers[0] #=> Float
11016
+ # resp.behaviors[0].criteria.value.strings #=> Array
11017
+ # resp.behaviors[0].criteria.value.strings[0] #=> String
10317
11018
  # resp.behaviors[0].criteria.duration_seconds #=> Integer
10318
11019
  # resp.behaviors[0].criteria.consecutive_datapoints_to_alarm #=> Integer
10319
11020
  # resp.behaviors[0].criteria.consecutive_datapoints_to_clear #=> Integer
10320
11021
  # resp.behaviors[0].criteria.statistical_threshold.statistic #=> String
11022
+ # resp.behaviors[0].criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
11023
+ # resp.behaviors[0].suppress_alerts #=> Boolean
10321
11024
  # resp.alert_targets #=> Hash
10322
11025
  # resp.alert_targets["AlertTargetType"].alert_target_arn #=> String
10323
11026
  # resp.alert_targets["AlertTargetType"].role_arn #=> String
@@ -10569,7 +11272,7 @@ module Aws::IoT
10569
11272
  #
10570
11273
  # resp = client.update_topic_rule_destination({
10571
11274
  # arn: "AwsArn", # required
10572
- # status: "ENABLED", # required, accepts ENABLED, IN_PROGRESS, DISABLED, ERROR
11275
+ # status: "ENABLED", # required, accepts ENABLED, IN_PROGRESS, DISABLED, ERROR, DELETING
10573
11276
  # })
10574
11277
  #
10575
11278
  # @overload update_topic_rule_destination(params = {})
@@ -10602,11 +11305,14 @@ module Aws::IoT
10602
11305
  # operator: "IN", # accepts IN, NOT_IN
10603
11306
  # },
10604
11307
  # criteria: {
10605
- # comparison_operator: "less-than", # accepts less-than, less-than-equals, greater-than, greater-than-equals, in-cidr-set, not-in-cidr-set, in-port-set, not-in-port-set
11308
+ # comparison_operator: "less-than", # accepts less-than, less-than-equals, greater-than, greater-than-equals, in-cidr-set, not-in-cidr-set, in-port-set, not-in-port-set, in-set, not-in-set
10606
11309
  # value: {
10607
11310
  # count: 1,
10608
11311
  # cidrs: ["Cidr"],
10609
11312
  # ports: [1],
11313
+ # number: 1.0,
11314
+ # numbers: [1.0],
11315
+ # strings: ["stringValue"],
10610
11316
  # },
10611
11317
  # duration_seconds: 1,
10612
11318
  # consecutive_datapoints_to_alarm: 1,
@@ -10614,7 +11320,11 @@ module Aws::IoT
10614
11320
  # statistical_threshold: {
10615
11321
  # statistic: "EvaluationStatistic",
10616
11322
  # },
11323
+ # ml_detection_config: {
11324
+ # confidence_level: "LOW", # required, accepts LOW, MEDIUM, HIGH
11325
+ # },
10617
11326
  # },
11327
+ # suppress_alerts: false,
10618
11328
  # },
10619
11329
  # ],
10620
11330
  # })
@@ -10645,7 +11355,7 @@ module Aws::IoT
10645
11355
  params: params,
10646
11356
  config: config)
10647
11357
  context[:gem_name] = 'aws-sdk-iot'
10648
- context[:gem_version] = '1.63.0'
11358
+ context[:gem_version] = '1.68.0'
10649
11359
  Seahorse::Client::Request.new(handlers, context)
10650
11360
  end
10651
11361