aws-sdk-iot 1.59.0 → 1.64.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ab7824aa7d6f7254404e0bfcb0bdb6f9f4016af28948086b81e3021442bb7d68
4
- data.tar.gz: 2add98c241dda9ffb0eff5c68dd1c2a57ae604acae884c1dc3a1c0a99d50b914
3
+ metadata.gz: 6fe88ed3759bd03049b88667c451d720a645963b3afa3bd4ea5bd181834a04dc
4
+ data.tar.gz: 2f04674129daf0f79d48cce866007a1cd9d71d1d912a258fa0593e19bc8d3963
5
5
  SHA512:
6
- metadata.gz: 6c2c9c7f8901d548908431f29f76214e42a11edacd55e3d50ed16b296662ab7b9354e525da55ab19761bf6431ade9311e749a3fe0744c035ea630d8826e33376
7
- data.tar.gz: c8dc7e1f90d1e7b80ef74f9b92858d724e5b3817b70afa89a5b1004949a1535805eb235f562cd6ab230a595a381776d0b325f9fa96bb024e956eda7e8ef018be
6
+ metadata.gz: d109b45e7098cdafceef9b528b81538d89db7f98f308a51cb4ca75c54fca4f6bb4c83c22041503961d86fe717fd5b1ecddd682d93583e3c9ef691026d75ed034
7
+ data.tar.gz: fce628d2fbae33f10cc1b0121fdb88e2a99e32f2c8f73e2f74a4e28bb55580cd7e7dc19bfaf79266681c504d2d9a8218ce726c59994f1317e32cc3fcc0d19abc
@@ -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.59.0'
51
+ GEM_VERSION = '1.64.0'
52
52
 
53
53
  end
@@ -448,6 +448,19 @@ module Aws::IoT
448
448
  # An optional comment string describing why the job was associated with
449
449
  # the targets.
450
450
  #
451
+ # @option params [String] :namespace_id
452
+ # The namespace used to indicate that a job is a customer-managed job.
453
+ #
454
+ # When you specify a value for this parameter, AWS IoT Core sends jobs
455
+ # notifications to MQTT topics that contain the value in the following
456
+ # format.
457
+ #
458
+ # `$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/`
459
+ #
460
+ # <note markdown="1"> The `namespaceId` feature is in public preview.
461
+ #
462
+ # </note>
463
+ #
451
464
  # @return [Types::AssociateTargetsWithJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
452
465
  #
453
466
  # * {Types::AssociateTargetsWithJobResponse#job_arn #job_arn} => String
@@ -460,6 +473,7 @@ module Aws::IoT
460
473
  # targets: ["TargetArn"], # required
461
474
  # job_id: "JobId", # required
462
475
  # comment: "Comment",
476
+ # namespace_id: "NamespaceId",
463
477
  # })
464
478
  #
465
479
  # @example Response structure
@@ -596,7 +610,7 @@ module Aws::IoT
596
610
  # @example Request syntax with placeholder values
597
611
  #
598
612
  # resp = client.cancel_audit_mitigation_actions_task({
599
- # task_id: "AuditMitigationActionsTaskId", # required
613
+ # task_id: "MitigationActionsTaskId", # required
600
614
  # })
601
615
  #
602
616
  # @overload cancel_audit_mitigation_actions_task(params = {})
@@ -607,7 +621,7 @@ module Aws::IoT
607
621
  end
608
622
 
609
623
  # Cancels an audit that is in progress. The audit can be either
610
- # 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
611
625
  # "InvalidRequestException" occurs.
612
626
  #
613
627
  # @option params [required, String] :task_id
@@ -660,6 +674,26 @@ module Aws::IoT
660
674
  req.send_request(options)
661
675
  end
662
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
+
663
697
  # Cancels a job.
664
698
  #
665
699
  # @option params [required, String] :job_id
@@ -1057,6 +1091,67 @@ module Aws::IoT
1057
1091
  req.send_request(options)
1058
1092
  end
1059
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
+
1060
1155
  # Create a dimension that you can use to limit the scope of a metric
1061
1156
  # used in a security profile for AWS IoT Device Defender. For example,
1062
1157
  # using a `TOPIC_FILTER` dimension, you can narrow down the scope of the
@@ -1347,6 +1442,19 @@ module Aws::IoT
1347
1442
  # @option params [Array<Types::Tag>] :tags
1348
1443
  # Metadata which can be used to manage the job.
1349
1444
  #
1445
+ # @option params [String] :namespace_id
1446
+ # The namespace used to indicate that a job is a customer-managed job.
1447
+ #
1448
+ # When you specify a value for this parameter, AWS IoT Core sends jobs
1449
+ # notifications to MQTT topics that contain the value in the following
1450
+ # format.
1451
+ #
1452
+ # `$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/`
1453
+ #
1454
+ # <note markdown="1"> The `namespaceId` feature is in public preview.
1455
+ #
1456
+ # </note>
1457
+ #
1350
1458
  # @return [Types::CreateJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1351
1459
  #
1352
1460
  # * {Types::CreateJobResponse#job_arn #job_arn} => String
@@ -1396,6 +1504,7 @@ module Aws::IoT
1396
1504
  # value: "TagValue",
1397
1505
  # },
1398
1506
  # ],
1507
+ # namespace_id: "NamespaceId",
1399
1508
  # })
1400
1509
  #
1401
1510
  # @example Response structure
@@ -1629,6 +1738,7 @@ module Aws::IoT
1629
1738
  # files: [ # required
1630
1739
  # {
1631
1740
  # file_name: "FileName",
1741
+ # file_type: 1,
1632
1742
  # file_version: "OTAUpdateFileVersion",
1633
1743
  # file_location: {
1634
1744
  # stream: {
@@ -2023,22 +2133,22 @@ module Aws::IoT
2023
2133
  # Creates a scheduled audit that is run at a specified time interval.
2024
2134
  #
2025
2135
  # @option params [required, String] :frequency
2026
- # How often the scheduled audit takes place. Can be one of "DAILY",
2027
- # "WEEKLY", "BIWEEKLY" or "MONTHLY". The start time of each audit
2028
- # 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.
2029
2139
  #
2030
2140
  # @option params [String] :day_of_month
2031
- # The day of the month on which the scheduled audit takes place. Can be
2032
- # "1" through "31" or "LAST". This field is required if the
2033
- # "frequency" parameter is set to "MONTHLY". If days 29-31 are
2034
- # specified, and the month does not have that many days, the audit takes
2035
- # 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.
2036
2146
  #
2037
2147
  # @option params [String] :day_of_week
2038
- # The day of the week on which the scheduled audit takes place. Can be
2039
- # one of "SUN", "MON", "TUE", "WED", "THU", "FRI", or
2040
- # "SAT". This field is required if the "frequency" parameter is set
2041
- # 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`.
2042
2152
  #
2043
2153
  # @option params [required, Array<String>] :target_check_names
2044
2154
  # Which checks are performed during the scheduled audit. Checks must be
@@ -2106,12 +2216,14 @@ module Aws::IoT
2106
2216
  #
2107
2217
  # A list of metrics whose data is retained (stored). By default, data is
2108
2218
  # retained for any metric used in the profile's `behaviors`, but it is
2109
- # 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.
2110
2221
  #
2111
2222
  # @option params [Array<Types::MetricToRetain>] :additional_metrics_to_retain_v2
2112
2223
  # A list of metrics whose data is retained (stored). By default, data is
2113
2224
  # retained for any metric used in the profile's `behaviors`, but it is
2114
- # 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.
2115
2227
  #
2116
2228
  # @option params [Array<Types::Tag>] :tags
2117
2229
  # Metadata that can be used to manage the security profile.
@@ -2135,11 +2247,14 @@ module Aws::IoT
2135
2247
  # operator: "IN", # accepts IN, NOT_IN
2136
2248
  # },
2137
2249
  # criteria: {
2138
- # 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
2139
2251
  # value: {
2140
2252
  # count: 1,
2141
2253
  # cidrs: ["Cidr"],
2142
2254
  # ports: [1],
2255
+ # number: 1.0,
2256
+ # numbers: [1.0],
2257
+ # strings: ["stringValue"],
2143
2258
  # },
2144
2259
  # duration_seconds: 1,
2145
2260
  # consecutive_datapoints_to_alarm: 1,
@@ -2147,7 +2262,11 @@ module Aws::IoT
2147
2262
  # statistical_threshold: {
2148
2263
  # statistic: "EvaluationStatistic",
2149
2264
  # },
2265
+ # ml_detection_config: {
2266
+ # confidence_level: "LOW", # required, accepts LOW, MEDIUM, HIGH
2267
+ # },
2150
2268
  # },
2269
+ # suppress_alerts: false,
2151
2270
  # },
2152
2271
  # ],
2153
2272
  # alert_targets: {
@@ -2516,6 +2635,7 @@ module Aws::IoT
2516
2635
  # role_arn: "AwsArn", # required
2517
2636
  # delivery_stream_name: "DeliveryStreamName", # required
2518
2637
  # separator: "FirehoseSeparator",
2638
+ # batch_mode: false,
2519
2639
  # },
2520
2640
  # cloudwatch_metric: {
2521
2641
  # role_arn: "AwsArn", # required
@@ -2549,11 +2669,13 @@ module Aws::IoT
2549
2669
  # iot_analytics: {
2550
2670
  # channel_arn: "AwsArn",
2551
2671
  # channel_name: "ChannelName",
2672
+ # batch_mode: false,
2552
2673
  # role_arn: "AwsArn",
2553
2674
  # },
2554
2675
  # iot_events: {
2555
2676
  # input_name: "InputName", # required
2556
2677
  # message_id: "MessageId",
2678
+ # batch_mode: false,
2557
2679
  # role_arn: "AwsArn", # required
2558
2680
  # },
2559
2681
  # iot_site_wise: {
@@ -2619,6 +2741,15 @@ module Aws::IoT
2619
2741
  # },
2620
2742
  # },
2621
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
+ # },
2622
2753
  # },
2623
2754
  # ],
2624
2755
  # rule_disabled: false,
@@ -2675,6 +2806,7 @@ module Aws::IoT
2675
2806
  # role_arn: "AwsArn", # required
2676
2807
  # delivery_stream_name: "DeliveryStreamName", # required
2677
2808
  # separator: "FirehoseSeparator",
2809
+ # batch_mode: false,
2678
2810
  # },
2679
2811
  # cloudwatch_metric: {
2680
2812
  # role_arn: "AwsArn", # required
@@ -2708,11 +2840,13 @@ module Aws::IoT
2708
2840
  # iot_analytics: {
2709
2841
  # channel_arn: "AwsArn",
2710
2842
  # channel_name: "ChannelName",
2843
+ # batch_mode: false,
2711
2844
  # role_arn: "AwsArn",
2712
2845
  # },
2713
2846
  # iot_events: {
2714
2847
  # input_name: "InputName", # required
2715
2848
  # message_id: "MessageId",
2849
+ # batch_mode: false,
2716
2850
  # role_arn: "AwsArn", # required
2717
2851
  # },
2718
2852
  # iot_site_wise: {
@@ -2778,6 +2912,15 @@ module Aws::IoT
2778
2912
  # },
2779
2913
  # },
2780
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
+ # },
2781
2924
  # },
2782
2925
  # },
2783
2926
  # tags: "String",
@@ -2807,15 +2950,29 @@ module Aws::IoT
2807
2950
  # http_url_configuration: {
2808
2951
  # confirmation_url: "Url", # required
2809
2952
  # },
2953
+ # vpc_configuration: {
2954
+ # subnet_ids: ["SubnetId"], # required
2955
+ # security_groups: ["SecurityGroupId"],
2956
+ # vpc_id: "VpcId", # required
2957
+ # role_arn: "AwsArn", # required
2958
+ # },
2810
2959
  # },
2811
2960
  # })
2812
2961
  #
2813
2962
  # @example Response structure
2814
2963
  #
2815
2964
  # resp.topic_rule_destination.arn #=> String
2816
- # 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
2817
2968
  # resp.topic_rule_destination.status_reason #=> String
2818
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
2819
2976
  #
2820
2977
  # @overload create_topic_rule_destination(params = {})
2821
2978
  # @param [Hash] params ({})
@@ -2985,6 +3142,38 @@ module Aws::IoT
2985
3142
  req.send_request(options)
2986
3143
  end
2987
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
+
2988
3177
  # Removes the specified dimension from your AWS account.
2989
3178
  #
2990
3179
  # @option params [required, String] :name
@@ -3086,6 +3275,19 @@ module Aws::IoT
3086
3275
  #
3087
3276
  # </note>
3088
3277
  #
3278
+ # @option params [String] :namespace_id
3279
+ # The namespace used to indicate that a job is a customer-managed job.
3280
+ #
3281
+ # When you specify a value for this parameter, AWS IoT Core sends jobs
3282
+ # notifications to MQTT topics that contain the value in the following
3283
+ # format.
3284
+ #
3285
+ # `$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/`
3286
+ #
3287
+ # <note markdown="1"> The `namespaceId` feature is in public preview.
3288
+ #
3289
+ # </note>
3290
+ #
3089
3291
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3090
3292
  #
3091
3293
  # @example Request syntax with placeholder values
@@ -3093,6 +3295,7 @@ module Aws::IoT
3093
3295
  # resp = client.delete_job({
3094
3296
  # job_id: "JobId", # required
3095
3297
  # force: false,
3298
+ # namespace_id: "NamespaceId",
3096
3299
  # })
3097
3300
  #
3098
3301
  # @overload delete_job(params = {})
@@ -3132,6 +3335,19 @@ module Aws::IoT
3132
3335
  #
3133
3336
  # </note>
3134
3337
  #
3338
+ # @option params [String] :namespace_id
3339
+ # The namespace used to indicate that a job is a customer-managed job.
3340
+ #
3341
+ # When you specify a value for this parameter, AWS IoT Core sends jobs
3342
+ # notifications to MQTT topics that contain the value in the following
3343
+ # format.
3344
+ #
3345
+ # `$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/`
3346
+ #
3347
+ # <note markdown="1"> The `namespaceId` feature is in public preview.
3348
+ #
3349
+ # </note>
3350
+ #
3135
3351
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3136
3352
  #
3137
3353
  # @example Request syntax with placeholder values
@@ -3141,6 +3357,7 @@ module Aws::IoT
3141
3357
  # thing_name: "ThingName", # required
3142
3358
  # execution_number: 1, # required
3143
3359
  # force: false,
3360
+ # namespace_id: "NamespaceId",
3144
3361
  # })
3145
3362
  #
3146
3363
  # @overload delete_job_execution(params = {})
@@ -3598,8 +3815,8 @@ module Aws::IoT
3598
3815
  end
3599
3816
 
3600
3817
  # Gets information about a single audit finding. Properties include the
3601
- # reason for noncompliance, the severity of the issue, and when the
3602
- # audit that returned the finding was started.
3818
+ # reason for noncompliance, the severity of the issue, and the start
3819
+ # time when the audit that returned the finding.
3603
3820
  #
3604
3821
  # @option params [required, String] :finding_id
3605
3822
  # A unique identifier for a single audit finding. You can use this
@@ -3680,7 +3897,7 @@ module Aws::IoT
3680
3897
  # @example Request syntax with placeholder values
3681
3898
  #
3682
3899
  # resp = client.describe_audit_mitigation_actions_task({
3683
- # task_id: "AuditMitigationActionsTaskId", # required
3900
+ # task_id: "MitigationActionsTaskId", # required
3684
3901
  # })
3685
3902
  #
3686
3903
  # @example Response structure
@@ -3990,6 +4207,42 @@ module Aws::IoT
3990
4207
  req.send_request(options)
3991
4208
  end
3992
4209
 
4210
+ # Gets information about a Device Defender detect custom metric.
4211
+ #
4212
+ # @option params [required, String] :metric_name
4213
+ # The name of the custom metric.
4214
+ #
4215
+ # @return [Types::DescribeCustomMetricResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4216
+ #
4217
+ # * {Types::DescribeCustomMetricResponse#metric_name #metric_name} => String
4218
+ # * {Types::DescribeCustomMetricResponse#metric_arn #metric_arn} => String
4219
+ # * {Types::DescribeCustomMetricResponse#metric_type #metric_type} => String
4220
+ # * {Types::DescribeCustomMetricResponse#display_name #display_name} => String
4221
+ # * {Types::DescribeCustomMetricResponse#creation_date #creation_date} => Time
4222
+ # * {Types::DescribeCustomMetricResponse#last_modified_date #last_modified_date} => Time
4223
+ #
4224
+ # @example Request syntax with placeholder values
4225
+ #
4226
+ # resp = client.describe_custom_metric({
4227
+ # metric_name: "MetricName", # required
4228
+ # })
4229
+ #
4230
+ # @example Response structure
4231
+ #
4232
+ # resp.metric_name #=> String
4233
+ # resp.metric_arn #=> String
4234
+ # resp.metric_type #=> String, one of "string-list", "ip-address-list", "number-list", "number"
4235
+ # resp.display_name #=> String
4236
+ # resp.creation_date #=> Time
4237
+ # resp.last_modified_date #=> Time
4238
+ #
4239
+ # @overload describe_custom_metric(params = {})
4240
+ # @param [Hash] params ({})
4241
+ def describe_custom_metric(params = {}, options = {})
4242
+ req = build_request(:describe_custom_metric, params)
4243
+ req.send_request(options)
4244
+ end
4245
+
3993
4246
  # Describes the default authorizer.
3994
4247
  #
3995
4248
  # @return [Types::DescribeDefaultAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -4016,6 +4269,59 @@ module Aws::IoT
4016
4269
  req.send_request(options)
4017
4270
  end
4018
4271
 
4272
+ # Gets information about a Device Defender ML Detect mitigation action.
4273
+ #
4274
+ # @option params [required, String] :task_id
4275
+ # The unique identifier of the task.
4276
+ #
4277
+ # @return [Types::DescribeDetectMitigationActionsTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4278
+ #
4279
+ # * {Types::DescribeDetectMitigationActionsTaskResponse#task_summary #task_summary} => Types::DetectMitigationActionsTaskSummary
4280
+ #
4281
+ # @example Request syntax with placeholder values
4282
+ #
4283
+ # resp = client.describe_detect_mitigation_actions_task({
4284
+ # task_id: "MitigationActionsTaskId", # required
4285
+ # })
4286
+ #
4287
+ # @example Response structure
4288
+ #
4289
+ # resp.task_summary.task_id #=> String
4290
+ # resp.task_summary.task_status #=> String, one of "IN_PROGRESS", "SUCCESSFUL", "FAILED", "CANCELED"
4291
+ # resp.task_summary.task_start_time #=> Time
4292
+ # resp.task_summary.task_end_time #=> Time
4293
+ # resp.task_summary.target.violation_ids #=> Array
4294
+ # resp.task_summary.target.violation_ids[0] #=> String
4295
+ # resp.task_summary.target.security_profile_name #=> String
4296
+ # resp.task_summary.target.behavior_name #=> String
4297
+ # resp.task_summary.violation_event_occurrence_range.start_time #=> Time
4298
+ # resp.task_summary.violation_event_occurrence_range.end_time #=> Time
4299
+ # resp.task_summary.only_active_violations_included #=> Boolean
4300
+ # resp.task_summary.suppressed_alerts_included #=> Boolean
4301
+ # resp.task_summary.actions_definition #=> Array
4302
+ # resp.task_summary.actions_definition[0].name #=> String
4303
+ # resp.task_summary.actions_definition[0].id #=> String
4304
+ # resp.task_summary.actions_definition[0].role_arn #=> String
4305
+ # resp.task_summary.actions_definition[0].action_params.update_device_certificate_params.action #=> String, one of "DEACTIVATE"
4306
+ # resp.task_summary.actions_definition[0].action_params.update_ca_certificate_params.action #=> String, one of "DEACTIVATE"
4307
+ # resp.task_summary.actions_definition[0].action_params.add_things_to_thing_group_params.thing_group_names #=> Array
4308
+ # resp.task_summary.actions_definition[0].action_params.add_things_to_thing_group_params.thing_group_names[0] #=> String
4309
+ # resp.task_summary.actions_definition[0].action_params.add_things_to_thing_group_params.override_dynamic_groups #=> Boolean
4310
+ # resp.task_summary.actions_definition[0].action_params.replace_default_policy_version_params.template_name #=> String, one of "BLANK_POLICY"
4311
+ # resp.task_summary.actions_definition[0].action_params.enable_io_t_logging_params.role_arn_for_logging #=> String
4312
+ # resp.task_summary.actions_definition[0].action_params.enable_io_t_logging_params.log_level #=> String, one of "DEBUG", "INFO", "ERROR", "WARN", "DISABLED"
4313
+ # resp.task_summary.actions_definition[0].action_params.publish_finding_to_sns_params.topic_arn #=> String
4314
+ # resp.task_summary.task_statistics.actions_executed #=> Integer
4315
+ # resp.task_summary.task_statistics.actions_skipped #=> Integer
4316
+ # resp.task_summary.task_statistics.actions_failed #=> Integer
4317
+ #
4318
+ # @overload describe_detect_mitigation_actions_task(params = {})
4319
+ # @param [Hash] params ({})
4320
+ def describe_detect_mitigation_actions_task(params = {}, options = {})
4321
+ req = build_request(:describe_detect_mitigation_actions_task, params)
4322
+ req.send_request(options)
4323
+ end
4324
+
4019
4325
  # Provides details about a dimension that is defined in your AWS
4020
4326
  # account.
4021
4327
  #
@@ -4262,6 +4568,7 @@ module Aws::IoT
4262
4568
  # resp.job.job_process_details.number_of_removed_things #=> Integer
4263
4569
  # resp.job.job_process_details.number_of_timed_out_things #=> Integer
4264
4570
  # resp.job.timeout_config.in_progress_timeout_in_minutes #=> Integer
4571
+ # resp.job.namespace_id #=> String
4265
4572
  #
4266
4573
  # @overload describe_job(params = {})
4267
4574
  # @param [Hash] params ({})
@@ -4548,16 +4855,23 @@ module Aws::IoT
4548
4855
  # resp.behaviors[0].metric #=> String
4549
4856
  # resp.behaviors[0].metric_dimension.dimension_name #=> String
4550
4857
  # resp.behaviors[0].metric_dimension.operator #=> String, one of "IN", "NOT_IN"
4551
- # 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"
4858
+ # 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"
4552
4859
  # resp.behaviors[0].criteria.value.count #=> Integer
4553
4860
  # resp.behaviors[0].criteria.value.cidrs #=> Array
4554
4861
  # resp.behaviors[0].criteria.value.cidrs[0] #=> String
4555
4862
  # resp.behaviors[0].criteria.value.ports #=> Array
4556
4863
  # resp.behaviors[0].criteria.value.ports[0] #=> Integer
4864
+ # resp.behaviors[0].criteria.value.number #=> Float
4865
+ # resp.behaviors[0].criteria.value.numbers #=> Array
4866
+ # resp.behaviors[0].criteria.value.numbers[0] #=> Float
4867
+ # resp.behaviors[0].criteria.value.strings #=> Array
4868
+ # resp.behaviors[0].criteria.value.strings[0] #=> String
4557
4869
  # resp.behaviors[0].criteria.duration_seconds #=> Integer
4558
4870
  # resp.behaviors[0].criteria.consecutive_datapoints_to_alarm #=> Integer
4559
4871
  # resp.behaviors[0].criteria.consecutive_datapoints_to_clear #=> Integer
4560
4872
  # resp.behaviors[0].criteria.statistical_threshold.statistic #=> String
4873
+ # resp.behaviors[0].criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
4874
+ # resp.behaviors[0].suppress_alerts #=> Boolean
4561
4875
  # resp.alert_targets #=> Hash
4562
4876
  # resp.alert_targets["AlertTargetType"].alert_target_arn #=> String
4563
4877
  # resp.alert_targets["AlertTargetType"].role_arn #=> String
@@ -4948,6 +5262,52 @@ module Aws::IoT
4948
5262
  req.send_request(options)
4949
5263
  end
4950
5264
 
5265
+ # Returns a Device Defender's ML Detect Security Profile training
5266
+ # model's status.
5267
+ #
5268
+ # @option params [String] :security_profile_name
5269
+ # The name of the security profile.
5270
+ #
5271
+ # @option params [Integer] :max_results
5272
+ # The maximum number of results to return at one time. The default is
5273
+ # 25.
5274
+ #
5275
+ # @option params [String] :next_token
5276
+ # The token for the next set of results.
5277
+ #
5278
+ # @return [Types::GetBehaviorModelTrainingSummariesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5279
+ #
5280
+ # * {Types::GetBehaviorModelTrainingSummariesResponse#summaries #summaries} => Array&lt;Types::BehaviorModelTrainingSummary&gt;
5281
+ # * {Types::GetBehaviorModelTrainingSummariesResponse#next_token #next_token} => String
5282
+ #
5283
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5284
+ #
5285
+ # @example Request syntax with placeholder values
5286
+ #
5287
+ # resp = client.get_behavior_model_training_summaries({
5288
+ # security_profile_name: "SecurityProfileName",
5289
+ # max_results: 1,
5290
+ # next_token: "NextToken",
5291
+ # })
5292
+ #
5293
+ # @example Response structure
5294
+ #
5295
+ # resp.summaries #=> Array
5296
+ # resp.summaries[0].security_profile_name #=> String
5297
+ # resp.summaries[0].behavior_name #=> String
5298
+ # resp.summaries[0].training_data_collection_start_date #=> Time
5299
+ # resp.summaries[0].model_status #=> String, one of "PENDING_BUILD", "ACTIVE", "EXPIRED"
5300
+ # resp.summaries[0].datapoints_collection_percentage #=> Float
5301
+ # resp.summaries[0].last_model_refresh_date #=> Time
5302
+ # resp.next_token #=> String
5303
+ #
5304
+ # @overload get_behavior_model_training_summaries(params = {})
5305
+ # @param [Hash] params ({})
5306
+ def get_behavior_model_training_summaries(params = {}, options = {})
5307
+ req = build_request(:get_behavior_model_training_summaries, params)
5308
+ req.send_request(options)
5309
+ end
5310
+
4951
5311
  # Returns the approximate count of unique values that match the query.
4952
5312
  #
4953
5313
  # @option params [String] :index_name
@@ -5144,6 +5504,7 @@ module Aws::IoT
5144
5504
  # resp.ota_update_info.target_selection #=> String, one of "CONTINUOUS", "SNAPSHOT"
5145
5505
  # resp.ota_update_info.ota_update_files #=> Array
5146
5506
  # resp.ota_update_info.ota_update_files[0].file_name #=> String
5507
+ # resp.ota_update_info.ota_update_files[0].file_type #=> Integer
5147
5508
  # resp.ota_update_info.ota_update_files[0].file_version #=> String
5148
5509
  # resp.ota_update_info.ota_update_files[0].file_location.stream.stream_id #=> String
5149
5510
  # resp.ota_update_info.ota_update_files[0].file_location.stream.file_id #=> Integer
@@ -5439,6 +5800,7 @@ module Aws::IoT
5439
5800
  # resp.rule.actions[0].firehose.role_arn #=> String
5440
5801
  # resp.rule.actions[0].firehose.delivery_stream_name #=> String
5441
5802
  # resp.rule.actions[0].firehose.separator #=> String
5803
+ # resp.rule.actions[0].firehose.batch_mode #=> Boolean
5442
5804
  # resp.rule.actions[0].cloudwatch_metric.role_arn #=> String
5443
5805
  # resp.rule.actions[0].cloudwatch_metric.metric_namespace #=> String
5444
5806
  # resp.rule.actions[0].cloudwatch_metric.metric_name #=> String
@@ -5460,9 +5822,11 @@ module Aws::IoT
5460
5822
  # resp.rule.actions[0].salesforce.url #=> String
5461
5823
  # resp.rule.actions[0].iot_analytics.channel_arn #=> String
5462
5824
  # resp.rule.actions[0].iot_analytics.channel_name #=> String
5825
+ # resp.rule.actions[0].iot_analytics.batch_mode #=> Boolean
5463
5826
  # resp.rule.actions[0].iot_analytics.role_arn #=> String
5464
5827
  # resp.rule.actions[0].iot_events.input_name #=> String
5465
5828
  # resp.rule.actions[0].iot_events.message_id #=> String
5829
+ # resp.rule.actions[0].iot_events.batch_mode #=> Boolean
5466
5830
  # resp.rule.actions[0].iot_events.role_arn #=> String
5467
5831
  # resp.rule.actions[0].iot_site_wise.put_asset_property_value_entries #=> Array
5468
5832
  # resp.rule.actions[0].iot_site_wise.put_asset_property_value_entries[0].entry_id #=> String
@@ -5497,6 +5861,12 @@ module Aws::IoT
5497
5861
  # resp.rule.actions[0].http.auth.sigv4.signing_region #=> String
5498
5862
  # resp.rule.actions[0].http.auth.sigv4.service_name #=> String
5499
5863
  # resp.rule.actions[0].http.auth.sigv4.role_arn #=> String
5864
+ # resp.rule.actions[0].kafka.destination_arn #=> String
5865
+ # resp.rule.actions[0].kafka.topic #=> String
5866
+ # resp.rule.actions[0].kafka.key #=> String
5867
+ # resp.rule.actions[0].kafka.partition #=> String
5868
+ # resp.rule.actions[0].kafka.client_properties #=> Hash
5869
+ # resp.rule.actions[0].kafka.client_properties["String"] #=> String
5500
5870
  # resp.rule.rule_disabled #=> Boolean
5501
5871
  # resp.rule.aws_iot_sql_version #=> String
5502
5872
  # resp.rule.error_action.dynamo_db.table_name #=> String
@@ -5531,6 +5901,7 @@ module Aws::IoT
5531
5901
  # resp.rule.error_action.firehose.role_arn #=> String
5532
5902
  # resp.rule.error_action.firehose.delivery_stream_name #=> String
5533
5903
  # resp.rule.error_action.firehose.separator #=> String
5904
+ # resp.rule.error_action.firehose.batch_mode #=> Boolean
5534
5905
  # resp.rule.error_action.cloudwatch_metric.role_arn #=> String
5535
5906
  # resp.rule.error_action.cloudwatch_metric.metric_namespace #=> String
5536
5907
  # resp.rule.error_action.cloudwatch_metric.metric_name #=> String
@@ -5552,9 +5923,11 @@ module Aws::IoT
5552
5923
  # resp.rule.error_action.salesforce.url #=> String
5553
5924
  # resp.rule.error_action.iot_analytics.channel_arn #=> String
5554
5925
  # resp.rule.error_action.iot_analytics.channel_name #=> String
5926
+ # resp.rule.error_action.iot_analytics.batch_mode #=> Boolean
5555
5927
  # resp.rule.error_action.iot_analytics.role_arn #=> String
5556
5928
  # resp.rule.error_action.iot_events.input_name #=> String
5557
5929
  # resp.rule.error_action.iot_events.message_id #=> String
5930
+ # resp.rule.error_action.iot_events.batch_mode #=> Boolean
5558
5931
  # resp.rule.error_action.iot_events.role_arn #=> String
5559
5932
  # resp.rule.error_action.iot_site_wise.put_asset_property_value_entries #=> Array
5560
5933
  # resp.rule.error_action.iot_site_wise.put_asset_property_value_entries[0].entry_id #=> String
@@ -5589,6 +5962,12 @@ module Aws::IoT
5589
5962
  # resp.rule.error_action.http.auth.sigv4.signing_region #=> String
5590
5963
  # resp.rule.error_action.http.auth.sigv4.service_name #=> String
5591
5964
  # resp.rule.error_action.http.auth.sigv4.role_arn #=> String
5965
+ # resp.rule.error_action.kafka.destination_arn #=> String
5966
+ # resp.rule.error_action.kafka.topic #=> String
5967
+ # resp.rule.error_action.kafka.key #=> String
5968
+ # resp.rule.error_action.kafka.partition #=> String
5969
+ # resp.rule.error_action.kafka.client_properties #=> Hash
5970
+ # resp.rule.error_action.kafka.client_properties["String"] #=> String
5592
5971
  #
5593
5972
  # @overload get_topic_rule(params = {})
5594
5973
  # @param [Hash] params ({})
@@ -5615,9 +5994,17 @@ module Aws::IoT
5615
5994
  # @example Response structure
5616
5995
  #
5617
5996
  # resp.topic_rule_destination.arn #=> String
5618
- # resp.topic_rule_destination.status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR"
5997
+ # resp.topic_rule_destination.status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR", "DELETING"
5998
+ # resp.topic_rule_destination.created_at #=> Time
5999
+ # resp.topic_rule_destination.last_updated_at #=> Time
5619
6000
  # resp.topic_rule_destination.status_reason #=> String
5620
6001
  # resp.topic_rule_destination.http_url_properties.confirmation_url #=> String
6002
+ # resp.topic_rule_destination.vpc_properties.subnet_ids #=> Array
6003
+ # resp.topic_rule_destination.vpc_properties.subnet_ids[0] #=> String
6004
+ # resp.topic_rule_destination.vpc_properties.security_groups #=> Array
6005
+ # resp.topic_rule_destination.vpc_properties.security_groups[0] #=> String
6006
+ # resp.topic_rule_destination.vpc_properties.vpc_id #=> String
6007
+ # resp.topic_rule_destination.vpc_properties.role_arn #=> String
5621
6008
  #
5622
6009
  # @overload get_topic_rule_destination(params = {})
5623
6010
  # @param [Hash] params ({})
@@ -5657,6 +6044,12 @@ module Aws::IoT
5657
6044
  # The name of the Device Defender security profile for which violations
5658
6045
  # are listed.
5659
6046
  #
6047
+ # @option params [String] :behavior_criteria_type
6048
+ # The criteria for a behavior.
6049
+ #
6050
+ # @option params [Boolean] :list_suppressed_alerts
6051
+ # A list of all suppressed alerts.
6052
+ #
5660
6053
  # @option params [String] :next_token
5661
6054
  # The token for the next set of results.
5662
6055
  #
@@ -5675,6 +6068,8 @@ module Aws::IoT
5675
6068
  # resp = client.list_active_violations({
5676
6069
  # thing_name: "DeviceDefenderThingName",
5677
6070
  # security_profile_name: "SecurityProfileName",
6071
+ # behavior_criteria_type: "STATIC", # accepts STATIC, STATISTICAL, MACHINE_LEARNING
6072
+ # list_suppressed_alerts: false,
5678
6073
  # next_token: "NextToken",
5679
6074
  # max_results: 1,
5680
6075
  # })
@@ -5689,21 +6084,34 @@ module Aws::IoT
5689
6084
  # resp.active_violations[0].behavior.metric #=> String
5690
6085
  # resp.active_violations[0].behavior.metric_dimension.dimension_name #=> String
5691
6086
  # resp.active_violations[0].behavior.metric_dimension.operator #=> String, one of "IN", "NOT_IN"
5692
- # 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"
6087
+ # 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"
5693
6088
  # resp.active_violations[0].behavior.criteria.value.count #=> Integer
5694
6089
  # resp.active_violations[0].behavior.criteria.value.cidrs #=> Array
5695
6090
  # resp.active_violations[0].behavior.criteria.value.cidrs[0] #=> String
5696
6091
  # resp.active_violations[0].behavior.criteria.value.ports #=> Array
5697
6092
  # resp.active_violations[0].behavior.criteria.value.ports[0] #=> Integer
6093
+ # resp.active_violations[0].behavior.criteria.value.number #=> Float
6094
+ # resp.active_violations[0].behavior.criteria.value.numbers #=> Array
6095
+ # resp.active_violations[0].behavior.criteria.value.numbers[0] #=> Float
6096
+ # resp.active_violations[0].behavior.criteria.value.strings #=> Array
6097
+ # resp.active_violations[0].behavior.criteria.value.strings[0] #=> String
5698
6098
  # resp.active_violations[0].behavior.criteria.duration_seconds #=> Integer
5699
6099
  # resp.active_violations[0].behavior.criteria.consecutive_datapoints_to_alarm #=> Integer
5700
6100
  # resp.active_violations[0].behavior.criteria.consecutive_datapoints_to_clear #=> Integer
5701
6101
  # resp.active_violations[0].behavior.criteria.statistical_threshold.statistic #=> String
6102
+ # resp.active_violations[0].behavior.criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
6103
+ # resp.active_violations[0].behavior.suppress_alerts #=> Boolean
5702
6104
  # resp.active_violations[0].last_violation_value.count #=> Integer
5703
6105
  # resp.active_violations[0].last_violation_value.cidrs #=> Array
5704
6106
  # resp.active_violations[0].last_violation_value.cidrs[0] #=> String
5705
6107
  # resp.active_violations[0].last_violation_value.ports #=> Array
5706
6108
  # resp.active_violations[0].last_violation_value.ports[0] #=> Integer
6109
+ # resp.active_violations[0].last_violation_value.number #=> Float
6110
+ # resp.active_violations[0].last_violation_value.numbers #=> Array
6111
+ # resp.active_violations[0].last_violation_value.numbers[0] #=> Float
6112
+ # resp.active_violations[0].last_violation_value.strings #=> Array
6113
+ # resp.active_violations[0].last_violation_value.strings[0] #=> String
6114
+ # resp.active_violations[0].violation_event_additional_info.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
5707
6115
  # resp.active_violations[0].last_violation_time #=> Time
5708
6116
  # resp.active_violations[0].violation_start_time #=> Time
5709
6117
  # resp.next_token #=> String
@@ -5910,7 +6318,7 @@ module Aws::IoT
5910
6318
  # @example Request syntax with placeholder values
5911
6319
  #
5912
6320
  # resp = client.list_audit_mitigation_actions_executions({
5913
- # task_id: "AuditMitigationActionsTaskId", # required
6321
+ # task_id: "MitigationActionsTaskId", # required
5914
6322
  # action_status: "IN_PROGRESS", # accepts IN_PROGRESS, COMPLETED, FAILED, CANCELED, SKIPPED, PENDING
5915
6323
  # finding_id: "FindingId", # required
5916
6324
  # max_results: 1,
@@ -6186,7 +6594,9 @@ module Aws::IoT
6186
6594
  # Lists the billing groups you have created.
6187
6595
  #
6188
6596
  # @option params [String] :next_token
6189
- # The token to retrieve the next set of results.
6597
+ # To retrieve the next set of results, the `nextToken` value from a
6598
+ # previous response; otherwise **null** to receive the first set of
6599
+ # results.
6190
6600
  #
6191
6601
  # @option params [Integer] :max_results
6192
6602
  # The maximum number of results to return per request.
@@ -6364,6 +6774,184 @@ module Aws::IoT
6364
6774
  req.send_request(options)
6365
6775
  end
6366
6776
 
6777
+ # Lists your Device Defender detect custom metrics.
6778
+ #
6779
+ # @option params [String] :next_token
6780
+ # The token for the next set of results.
6781
+ #
6782
+ # @option params [Integer] :max_results
6783
+ # The maximum number of results to return at one time. The default is
6784
+ # 25.
6785
+ #
6786
+ # @return [Types::ListCustomMetricsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6787
+ #
6788
+ # * {Types::ListCustomMetricsResponse#metric_names #metric_names} => Array&lt;String&gt;
6789
+ # * {Types::ListCustomMetricsResponse#next_token #next_token} => String
6790
+ #
6791
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
6792
+ #
6793
+ # @example Request syntax with placeholder values
6794
+ #
6795
+ # resp = client.list_custom_metrics({
6796
+ # next_token: "NextToken",
6797
+ # max_results: 1,
6798
+ # })
6799
+ #
6800
+ # @example Response structure
6801
+ #
6802
+ # resp.metric_names #=> Array
6803
+ # resp.metric_names[0] #=> String
6804
+ # resp.next_token #=> String
6805
+ #
6806
+ # @overload list_custom_metrics(params = {})
6807
+ # @param [Hash] params ({})
6808
+ def list_custom_metrics(params = {}, options = {})
6809
+ req = build_request(:list_custom_metrics, params)
6810
+ req.send_request(options)
6811
+ end
6812
+
6813
+ # Lists mitigation actions executions for a Device Defender ML Detect
6814
+ # Security Profile.
6815
+ #
6816
+ # @option params [String] :task_id
6817
+ # The unique identifier of the task.
6818
+ #
6819
+ # @option params [String] :violation_id
6820
+ # The unique identifier of the violation.
6821
+ #
6822
+ # @option params [String] :thing_name
6823
+ # The name of the thing whose mitigation actions are listed.
6824
+ #
6825
+ # @option params [Time,DateTime,Date,Integer,String] :start_time
6826
+ # A filter to limit results to those found after the specified time. You
6827
+ # must specify either the startTime and endTime or the taskId, but not
6828
+ # both.
6829
+ #
6830
+ # @option params [Time,DateTime,Date,Integer,String] :end_time
6831
+ # The end of the time period for which ML Detect mitigation actions
6832
+ # executions are returned.
6833
+ #
6834
+ # @option params [Integer] :max_results
6835
+ # The maximum number of results to return at one time. The default is
6836
+ # 25.
6837
+ #
6838
+ # @option params [String] :next_token
6839
+ # The token for the next set of results.
6840
+ #
6841
+ # @return [Types::ListDetectMitigationActionsExecutionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6842
+ #
6843
+ # * {Types::ListDetectMitigationActionsExecutionsResponse#actions_executions #actions_executions} => Array&lt;Types::DetectMitigationActionExecution&gt;
6844
+ # * {Types::ListDetectMitigationActionsExecutionsResponse#next_token #next_token} => String
6845
+ #
6846
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
6847
+ #
6848
+ # @example Request syntax with placeholder values
6849
+ #
6850
+ # resp = client.list_detect_mitigation_actions_executions({
6851
+ # task_id: "MitigationActionsTaskId",
6852
+ # violation_id: "ViolationId",
6853
+ # thing_name: "DeviceDefenderThingName",
6854
+ # start_time: Time.now,
6855
+ # end_time: Time.now,
6856
+ # max_results: 1,
6857
+ # next_token: "NextToken",
6858
+ # })
6859
+ #
6860
+ # @example Response structure
6861
+ #
6862
+ # resp.actions_executions #=> Array
6863
+ # resp.actions_executions[0].task_id #=> String
6864
+ # resp.actions_executions[0].violation_id #=> String
6865
+ # resp.actions_executions[0].action_name #=> String
6866
+ # resp.actions_executions[0].thing_name #=> String
6867
+ # resp.actions_executions[0].execution_start_date #=> Time
6868
+ # resp.actions_executions[0].execution_end_date #=> Time
6869
+ # resp.actions_executions[0].status #=> String, one of "IN_PROGRESS", "SUCCESSFUL", "FAILED", "SKIPPED"
6870
+ # resp.actions_executions[0].error_code #=> String
6871
+ # resp.actions_executions[0].message #=> String
6872
+ # resp.next_token #=> String
6873
+ #
6874
+ # @overload list_detect_mitigation_actions_executions(params = {})
6875
+ # @param [Hash] params ({})
6876
+ def list_detect_mitigation_actions_executions(params = {}, options = {})
6877
+ req = build_request(:list_detect_mitigation_actions_executions, params)
6878
+ req.send_request(options)
6879
+ end
6880
+
6881
+ # List of Device Defender ML Detect mitigation actions tasks.
6882
+ #
6883
+ # @option params [Integer] :max_results
6884
+ # The maximum number of results to return at one time. The default is
6885
+ # 25.
6886
+ #
6887
+ # @option params [String] :next_token
6888
+ # The token for the next set of results.
6889
+ #
6890
+ # @option params [required, Time,DateTime,Date,Integer,String] :start_time
6891
+ # A filter to limit results to those found after the specified time. You
6892
+ # must specify either the startTime and endTime or the taskId, but not
6893
+ # both.
6894
+ #
6895
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
6896
+ # The end of the time period for which ML Detect mitigation actions
6897
+ # tasks are returned.
6898
+ #
6899
+ # @return [Types::ListDetectMitigationActionsTasksResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6900
+ #
6901
+ # * {Types::ListDetectMitigationActionsTasksResponse#tasks #tasks} => Array&lt;Types::DetectMitigationActionsTaskSummary&gt;
6902
+ # * {Types::ListDetectMitigationActionsTasksResponse#next_token #next_token} => String
6903
+ #
6904
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
6905
+ #
6906
+ # @example Request syntax with placeholder values
6907
+ #
6908
+ # resp = client.list_detect_mitigation_actions_tasks({
6909
+ # max_results: 1,
6910
+ # next_token: "NextToken",
6911
+ # start_time: Time.now, # required
6912
+ # end_time: Time.now, # required
6913
+ # })
6914
+ #
6915
+ # @example Response structure
6916
+ #
6917
+ # resp.tasks #=> Array
6918
+ # resp.tasks[0].task_id #=> String
6919
+ # resp.tasks[0].task_status #=> String, one of "IN_PROGRESS", "SUCCESSFUL", "FAILED", "CANCELED"
6920
+ # resp.tasks[0].task_start_time #=> Time
6921
+ # resp.tasks[0].task_end_time #=> Time
6922
+ # resp.tasks[0].target.violation_ids #=> Array
6923
+ # resp.tasks[0].target.violation_ids[0] #=> String
6924
+ # resp.tasks[0].target.security_profile_name #=> String
6925
+ # resp.tasks[0].target.behavior_name #=> String
6926
+ # resp.tasks[0].violation_event_occurrence_range.start_time #=> Time
6927
+ # resp.tasks[0].violation_event_occurrence_range.end_time #=> Time
6928
+ # resp.tasks[0].only_active_violations_included #=> Boolean
6929
+ # resp.tasks[0].suppressed_alerts_included #=> Boolean
6930
+ # resp.tasks[0].actions_definition #=> Array
6931
+ # resp.tasks[0].actions_definition[0].name #=> String
6932
+ # resp.tasks[0].actions_definition[0].id #=> String
6933
+ # resp.tasks[0].actions_definition[0].role_arn #=> String
6934
+ # resp.tasks[0].actions_definition[0].action_params.update_device_certificate_params.action #=> String, one of "DEACTIVATE"
6935
+ # resp.tasks[0].actions_definition[0].action_params.update_ca_certificate_params.action #=> String, one of "DEACTIVATE"
6936
+ # resp.tasks[0].actions_definition[0].action_params.add_things_to_thing_group_params.thing_group_names #=> Array
6937
+ # resp.tasks[0].actions_definition[0].action_params.add_things_to_thing_group_params.thing_group_names[0] #=> String
6938
+ # resp.tasks[0].actions_definition[0].action_params.add_things_to_thing_group_params.override_dynamic_groups #=> Boolean
6939
+ # resp.tasks[0].actions_definition[0].action_params.replace_default_policy_version_params.template_name #=> String, one of "BLANK_POLICY"
6940
+ # resp.tasks[0].actions_definition[0].action_params.enable_io_t_logging_params.role_arn_for_logging #=> String
6941
+ # resp.tasks[0].actions_definition[0].action_params.enable_io_t_logging_params.log_level #=> String, one of "DEBUG", "INFO", "ERROR", "WARN", "DISABLED"
6942
+ # resp.tasks[0].actions_definition[0].action_params.publish_finding_to_sns_params.topic_arn #=> String
6943
+ # resp.tasks[0].task_statistics.actions_executed #=> Integer
6944
+ # resp.tasks[0].task_statistics.actions_skipped #=> Integer
6945
+ # resp.tasks[0].task_statistics.actions_failed #=> Integer
6946
+ # resp.next_token #=> String
6947
+ #
6948
+ # @overload list_detect_mitigation_actions_tasks(params = {})
6949
+ # @param [Hash] params ({})
6950
+ def list_detect_mitigation_actions_tasks(params = {}, options = {})
6951
+ req = build_request(:list_detect_mitigation_actions_tasks, params)
6952
+ req.send_request(options)
6953
+ end
6954
+
6367
6955
  # List the set of dimensions that are defined for your AWS account.
6368
6956
  #
6369
6957
  # @option params [String] :next_token
@@ -6539,6 +7127,19 @@ module Aws::IoT
6539
7127
  # An optional filter that lets you search for jobs that have the
6540
7128
  # specified status.
6541
7129
  #
7130
+ # @option params [String] :namespace_id
7131
+ # The namespace used to indicate that a job is a customer-managed job.
7132
+ #
7133
+ # When you specify a value for this parameter, AWS IoT Core sends jobs
7134
+ # notifications to MQTT topics that contain the value in the following
7135
+ # format.
7136
+ #
7137
+ # `$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/`
7138
+ #
7139
+ # <note markdown="1"> The `namespaceId` feature is in public preview.
7140
+ #
7141
+ # </note>
7142
+ #
6542
7143
  # @option params [Integer] :max_results
6543
7144
  # The maximum number of results to be returned per request.
6544
7145
  #
@@ -6557,6 +7158,7 @@ module Aws::IoT
6557
7158
  # resp = client.list_job_executions_for_thing({
6558
7159
  # thing_name: "ThingName", # required
6559
7160
  # status: "QUEUED", # accepts QUEUED, IN_PROGRESS, SUCCEEDED, FAILED, TIMED_OUT, REJECTED, REMOVED, CANCELED
7161
+ # namespace_id: "NamespaceId",
6560
7162
  # max_results: 1,
6561
7163
  # next_token: "NextToken",
6562
7164
  # })
@@ -6607,6 +7209,19 @@ module Aws::IoT
6607
7209
  # A filter that limits the returned jobs to those for the specified
6608
7210
  # group.
6609
7211
  #
7212
+ # @option params [String] :namespace_id
7213
+ # The namespace used to indicate that a job is a customer-managed job.
7214
+ #
7215
+ # When you specify a value for this parameter, AWS IoT Core sends jobs
7216
+ # notifications to MQTT topics that contain the value in the following
7217
+ # format.
7218
+ #
7219
+ # `$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/`
7220
+ #
7221
+ # <note markdown="1"> The `namespaceId` feature is in public preview.
7222
+ #
7223
+ # </note>
7224
+ #
6610
7225
  # @return [Types::ListJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6611
7226
  #
6612
7227
  # * {Types::ListJobsResponse#jobs #jobs} => Array&lt;Types::JobSummary&gt;
@@ -6623,6 +7238,7 @@ module Aws::IoT
6623
7238
  # next_token: "NextToken",
6624
7239
  # thing_group_name: "ThingGroupName",
6625
7240
  # thing_group_id: "ThingGroupId",
7241
+ # namespace_id: "NamespaceId",
6626
7242
  # })
6627
7243
  #
6628
7244
  # @example Response structure
@@ -6956,7 +7572,9 @@ module Aws::IoT
6956
7572
  # Cognito identities or federated identities.
6957
7573
  #
6958
7574
  # @option params [String] :next_token
6959
- # The token to retrieve the next set of results.
7575
+ # To retrieve the next set of results, the `nextToken` value from a
7576
+ # previous response; otherwise **null** to receive the first set of
7577
+ # results.
6960
7578
  #
6961
7579
  # @option params [Integer] :max_results
6962
7580
  # The maximum number of results to return in this operation.
@@ -7152,9 +7770,12 @@ module Aws::IoT
7152
7770
  req.send_request(options)
7153
7771
  end
7154
7772
 
7155
- # Lists the Device Defender security profiles you have created. You can
7156
- # use filters to list only those security profiles associated with a
7157
- # thing group or only those associated with your account.
7773
+ # Lists the Device Defender security profiles you've created. You can
7774
+ # filter security profiles by dimension or custom metric.
7775
+ #
7776
+ # <note markdown="1"> `dimensionName` and `metricName` cannot be used in the same request.
7777
+ #
7778
+ # </note>
7158
7779
  #
7159
7780
  # @option params [String] :next_token
7160
7781
  # The token for the next set of results.
@@ -7164,7 +7785,10 @@ module Aws::IoT
7164
7785
  #
7165
7786
  # @option params [String] :dimension_name
7166
7787
  # A filter to limit results to the security profiles that use the
7167
- # defined dimension.
7788
+ # defined dimension. Cannot be used with `metricName`
7789
+ #
7790
+ # @option params [String] :metric_name
7791
+ # The name of the custom metric. Cannot be used with `dimensionName`.
7168
7792
  #
7169
7793
  # @return [Types::ListSecurityProfilesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7170
7794
  #
@@ -7179,6 +7803,7 @@ module Aws::IoT
7179
7803
  # next_token: "NextToken",
7180
7804
  # max_results: 1,
7181
7805
  # dimension_name: "DimensionName",
7806
+ # metric_name: "MetricName",
7182
7807
  # })
7183
7808
  #
7184
7809
  # @example Response structure
@@ -7290,7 +7915,9 @@ module Aws::IoT
7290
7915
  # The ARN of the resource.
7291
7916
  #
7292
7917
  # @option params [String] :next_token
7293
- # The token to retrieve the next set of results.
7918
+ # To retrieve the next set of results, the `nextToken` value from a
7919
+ # previous response; otherwise **null** to receive the first set of
7920
+ # results.
7294
7921
  #
7295
7922
  # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7296
7923
  #
@@ -7402,7 +8029,9 @@ module Aws::IoT
7402
8029
  # List the thing groups in your account.
7403
8030
  #
7404
8031
  # @option params [String] :next_token
7405
- # The token to retrieve the next set of results.
8032
+ # To retrieve the next set of results, the `nextToken` value from a
8033
+ # previous response; otherwise **null** to receive the first set of
8034
+ # results.
7406
8035
  #
7407
8036
  # @option params [Integer] :max_results
7408
8037
  # The maximum number of results to return at one time.
@@ -7455,7 +8084,9 @@ module Aws::IoT
7455
8084
  # The thing name.
7456
8085
  #
7457
8086
  # @option params [String] :next_token
7458
- # The token to retrieve the next set of results.
8087
+ # To retrieve the next set of results, the `nextToken` value from a
8088
+ # previous response; otherwise **null** to receive the first set of
8089
+ # results.
7459
8090
  #
7460
8091
  # @option params [Integer] :max_results
7461
8092
  # The maximum number of results to return at one time.
@@ -7493,16 +8124,29 @@ module Aws::IoT
7493
8124
  # can be X.509 certificates, IAM users, groups, and roles, Amazon
7494
8125
  # Cognito identities or federated identities.
7495
8126
  #
8127
+ # @option params [String] :next_token
8128
+ # To retrieve the next set of results, the `nextToken` value from a
8129
+ # previous response; otherwise **null** to receive the first set of
8130
+ # results.
8131
+ #
8132
+ # @option params [Integer] :max_results
8133
+ # The maximum number of results to return in this operation.
8134
+ #
7496
8135
  # @option params [required, String] :thing_name
7497
8136
  # The name of the thing.
7498
8137
  #
7499
8138
  # @return [Types::ListThingPrincipalsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7500
8139
  #
7501
8140
  # * {Types::ListThingPrincipalsResponse#principals #principals} => Array&lt;String&gt;
8141
+ # * {Types::ListThingPrincipalsResponse#next_token #next_token} => String
8142
+ #
8143
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7502
8144
  #
7503
8145
  # @example Request syntax with placeholder values
7504
8146
  #
7505
8147
  # resp = client.list_thing_principals({
8148
+ # next_token: "NextToken",
8149
+ # max_results: 1,
7506
8150
  # thing_name: "ThingName", # required
7507
8151
  # })
7508
8152
  #
@@ -7510,6 +8154,7 @@ module Aws::IoT
7510
8154
  #
7511
8155
  # resp.principals #=> Array
7512
8156
  # resp.principals[0] #=> String
8157
+ # resp.next_token #=> String
7513
8158
  #
7514
8159
  # @overload list_thing_principals(params = {})
7515
8160
  # @param [Hash] params ({})
@@ -7527,7 +8172,9 @@ module Aws::IoT
7527
8172
  # The type of task report.
7528
8173
  #
7529
8174
  # @option params [String] :next_token
7530
- # The token to retrieve the next set of results.
8175
+ # To retrieve the next set of results, the `nextToken` value from a
8176
+ # previous response; otherwise **null** to receive the first set of
8177
+ # results.
7531
8178
  #
7532
8179
  # @option params [Integer] :max_results
7533
8180
  # The maximum number of results to return per request.
@@ -7566,7 +8213,9 @@ module Aws::IoT
7566
8213
  # List bulk thing provisioning tasks.
7567
8214
  #
7568
8215
  # @option params [String] :next_token
7569
- # The token to retrieve the next set of results.
8216
+ # To retrieve the next set of results, the `nextToken` value from a
8217
+ # previous response; otherwise **null** to receive the first set of
8218
+ # results.
7570
8219
  #
7571
8220
  # @option params [Integer] :max_results
7572
8221
  # The maximum number of results to return at one time.
@@ -7605,7 +8254,9 @@ module Aws::IoT
7605
8254
  # Lists the existing thing types.
7606
8255
  #
7607
8256
  # @option params [String] :next_token
7608
- # The token to retrieve the next set of results.
8257
+ # To retrieve the next set of results, the `nextToken` value from a
8258
+ # previous response; otherwise **null** to receive the first set of
8259
+ # results.
7609
8260
  #
7610
8261
  # @option params [Integer] :max_results
7611
8262
  # The maximum number of results to return in this operation.
@@ -7662,7 +8313,9 @@ module Aws::IoT
7662
8313
  # </note>
7663
8314
  #
7664
8315
  # @option params [String] :next_token
7665
- # The token to retrieve the next set of results.
8316
+ # To retrieve the next set of results, the `nextToken` value from a
8317
+ # previous response; otherwise **null** to receive the first set of
8318
+ # results.
7666
8319
  #
7667
8320
  # @option params [Integer] :max_results
7668
8321
  # The maximum number of results to return in this operation.
@@ -7717,7 +8370,9 @@ module Aws::IoT
7717
8370
  # The name of the billing group.
7718
8371
  #
7719
8372
  # @option params [String] :next_token
7720
- # The token to retrieve the next set of results.
8373
+ # To retrieve the next set of results, the `nextToken` value from a
8374
+ # previous response; otherwise **null** to receive the first set of
8375
+ # results.
7721
8376
  #
7722
8377
  # @option params [Integer] :max_results
7723
8378
  # The maximum number of results to return per request.
@@ -7760,7 +8415,9 @@ module Aws::IoT
7760
8415
  # well.
7761
8416
  #
7762
8417
  # @option params [String] :next_token
7763
- # The token to retrieve the next set of results.
8418
+ # To retrieve the next set of results, the `nextToken` value from a
8419
+ # previous response; otherwise **null** to receive the first set of
8420
+ # results.
7764
8421
  #
7765
8422
  # @option params [Integer] :max_results
7766
8423
  # The maximum number of results to return at one time.
@@ -7800,7 +8457,9 @@ module Aws::IoT
7800
8457
  # The maximum number of results to return at one time.
7801
8458
  #
7802
8459
  # @option params [String] :next_token
7803
- # The token to retrieve the next set of results.
8460
+ # To retrieve the next set of results, the `nextToken` value from a
8461
+ # previous response; otherwise **null** to receive the first set of
8462
+ # results.
7804
8463
  #
7805
8464
  # @return [Types::ListTopicRuleDestinationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7806
8465
  #
@@ -7820,9 +8479,17 @@ module Aws::IoT
7820
8479
  #
7821
8480
  # resp.destination_summaries #=> Array
7822
8481
  # resp.destination_summaries[0].arn #=> String
7823
- # resp.destination_summaries[0].status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR"
8482
+ # resp.destination_summaries[0].status #=> String, one of "ENABLED", "IN_PROGRESS", "DISABLED", "ERROR", "DELETING"
8483
+ # resp.destination_summaries[0].created_at #=> Time
8484
+ # resp.destination_summaries[0].last_updated_at #=> Time
7824
8485
  # resp.destination_summaries[0].status_reason #=> String
7825
8486
  # resp.destination_summaries[0].http_url_summary.confirmation_url #=> String
8487
+ # resp.destination_summaries[0].vpc_destination_summary.subnet_ids #=> Array
8488
+ # resp.destination_summaries[0].vpc_destination_summary.subnet_ids[0] #=> String
8489
+ # resp.destination_summaries[0].vpc_destination_summary.security_groups #=> Array
8490
+ # resp.destination_summaries[0].vpc_destination_summary.security_groups[0] #=> String
8491
+ # resp.destination_summaries[0].vpc_destination_summary.vpc_id #=> String
8492
+ # resp.destination_summaries[0].vpc_destination_summary.role_arn #=> String
7826
8493
  # resp.next_token #=> String
7827
8494
  #
7828
8495
  # @overload list_topic_rule_destinations(params = {})
@@ -7841,7 +8508,9 @@ module Aws::IoT
7841
8508
  # The maximum number of results to return.
7842
8509
  #
7843
8510
  # @option params [String] :next_token
7844
- # A token used to retrieve the next value.
8511
+ # To retrieve the next set of results, the `nextToken` value from a
8512
+ # previous response; otherwise **null** to receive the first set of
8513
+ # results.
7845
8514
  #
7846
8515
  # @option params [Boolean] :rule_disabled
7847
8516
  # Specifies whether the rule is disabled.
@@ -7886,8 +8555,9 @@ module Aws::IoT
7886
8555
  # `THING_Group`.
7887
8556
  #
7888
8557
  # @option params [String] :next_token
7889
- # The token used to get the next set of results, or **null** if there
7890
- # are no additional results.
8558
+ # To retrieve the next set of results, the `nextToken` value from a
8559
+ # previous response; otherwise **null** to receive the first set of
8560
+ # results.
7891
8561
  #
7892
8562
  # @option params [Integer] :max_results
7893
8563
  # The maximum number of results to return at one time.
@@ -7941,6 +8611,12 @@ module Aws::IoT
7941
8611
  # A filter to limit results to those alerts generated by the specified
7942
8612
  # security profile.
7943
8613
  #
8614
+ # @option params [String] :behavior_criteria_type
8615
+ # The criteria for a behavior.
8616
+ #
8617
+ # @option params [Boolean] :list_suppressed_alerts
8618
+ # A list of all suppressed alerts.
8619
+ #
7944
8620
  # @option params [String] :next_token
7945
8621
  # The token for the next set of results.
7946
8622
  #
@@ -7961,6 +8637,8 @@ module Aws::IoT
7961
8637
  # end_time: Time.now, # required
7962
8638
  # thing_name: "DeviceDefenderThingName",
7963
8639
  # security_profile_name: "SecurityProfileName",
8640
+ # behavior_criteria_type: "STATIC", # accepts STATIC, STATISTICAL, MACHINE_LEARNING
8641
+ # list_suppressed_alerts: false,
7964
8642
  # next_token: "NextToken",
7965
8643
  # max_results: 1,
7966
8644
  # })
@@ -7975,21 +8653,34 @@ module Aws::IoT
7975
8653
  # resp.violation_events[0].behavior.metric #=> String
7976
8654
  # resp.violation_events[0].behavior.metric_dimension.dimension_name #=> String
7977
8655
  # resp.violation_events[0].behavior.metric_dimension.operator #=> String, one of "IN", "NOT_IN"
7978
- # 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"
8656
+ # 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"
7979
8657
  # resp.violation_events[0].behavior.criteria.value.count #=> Integer
7980
8658
  # resp.violation_events[0].behavior.criteria.value.cidrs #=> Array
7981
8659
  # resp.violation_events[0].behavior.criteria.value.cidrs[0] #=> String
7982
8660
  # resp.violation_events[0].behavior.criteria.value.ports #=> Array
7983
8661
  # resp.violation_events[0].behavior.criteria.value.ports[0] #=> Integer
8662
+ # resp.violation_events[0].behavior.criteria.value.number #=> Float
8663
+ # resp.violation_events[0].behavior.criteria.value.numbers #=> Array
8664
+ # resp.violation_events[0].behavior.criteria.value.numbers[0] #=> Float
8665
+ # resp.violation_events[0].behavior.criteria.value.strings #=> Array
8666
+ # resp.violation_events[0].behavior.criteria.value.strings[0] #=> String
7984
8667
  # resp.violation_events[0].behavior.criteria.duration_seconds #=> Integer
7985
8668
  # resp.violation_events[0].behavior.criteria.consecutive_datapoints_to_alarm #=> Integer
7986
8669
  # resp.violation_events[0].behavior.criteria.consecutive_datapoints_to_clear #=> Integer
7987
8670
  # resp.violation_events[0].behavior.criteria.statistical_threshold.statistic #=> String
8671
+ # resp.violation_events[0].behavior.criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
8672
+ # resp.violation_events[0].behavior.suppress_alerts #=> Boolean
7988
8673
  # resp.violation_events[0].metric_value.count #=> Integer
7989
8674
  # resp.violation_events[0].metric_value.cidrs #=> Array
7990
8675
  # resp.violation_events[0].metric_value.cidrs[0] #=> String
7991
8676
  # resp.violation_events[0].metric_value.ports #=> Array
7992
8677
  # resp.violation_events[0].metric_value.ports[0] #=> Integer
8678
+ # resp.violation_events[0].metric_value.number #=> Float
8679
+ # resp.violation_events[0].metric_value.numbers #=> Array
8680
+ # resp.violation_events[0].metric_value.numbers[0] #=> Float
8681
+ # resp.violation_events[0].metric_value.strings #=> Array
8682
+ # resp.violation_events[0].metric_value.strings[0] #=> String
8683
+ # resp.violation_events[0].violation_event_additional_info.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
7993
8684
  # resp.violation_events[0].violation_event_type #=> String, one of "in-alarm", "alarm-cleared", "alarm-invalidated"
7994
8685
  # resp.violation_events[0].violation_event_time #=> Time
7995
8686
  # resp.next_token #=> String
@@ -8382,6 +9073,7 @@ module Aws::IoT
8382
9073
  # role_arn: "AwsArn", # required
8383
9074
  # delivery_stream_name: "DeliveryStreamName", # required
8384
9075
  # separator: "FirehoseSeparator",
9076
+ # batch_mode: false,
8385
9077
  # },
8386
9078
  # cloudwatch_metric: {
8387
9079
  # role_arn: "AwsArn", # required
@@ -8415,11 +9107,13 @@ module Aws::IoT
8415
9107
  # iot_analytics: {
8416
9108
  # channel_arn: "AwsArn",
8417
9109
  # channel_name: "ChannelName",
9110
+ # batch_mode: false,
8418
9111
  # role_arn: "AwsArn",
8419
9112
  # },
8420
9113
  # iot_events: {
8421
9114
  # input_name: "InputName", # required
8422
9115
  # message_id: "MessageId",
9116
+ # batch_mode: false,
8423
9117
  # role_arn: "AwsArn", # required
8424
9118
  # },
8425
9119
  # iot_site_wise: {
@@ -8485,6 +9179,15 @@ module Aws::IoT
8485
9179
  # },
8486
9180
  # },
8487
9181
  # },
9182
+ # kafka: {
9183
+ # destination_arn: "AwsArn", # required
9184
+ # topic: "String", # required
9185
+ # key: "String",
9186
+ # partition: "String",
9187
+ # client_properties: { # required
9188
+ # "String" => "String",
9189
+ # },
9190
+ # },
8488
9191
  # },
8489
9192
  # ],
8490
9193
  # rule_disabled: false,
@@ -8541,6 +9244,7 @@ module Aws::IoT
8541
9244
  # role_arn: "AwsArn", # required
8542
9245
  # delivery_stream_name: "DeliveryStreamName", # required
8543
9246
  # separator: "FirehoseSeparator",
9247
+ # batch_mode: false,
8544
9248
  # },
8545
9249
  # cloudwatch_metric: {
8546
9250
  # role_arn: "AwsArn", # required
@@ -8574,11 +9278,13 @@ module Aws::IoT
8574
9278
  # iot_analytics: {
8575
9279
  # channel_arn: "AwsArn",
8576
9280
  # channel_name: "ChannelName",
9281
+ # batch_mode: false,
8577
9282
  # role_arn: "AwsArn",
8578
9283
  # },
8579
9284
  # iot_events: {
8580
9285
  # input_name: "InputName", # required
8581
9286
  # message_id: "MessageId",
9287
+ # batch_mode: false,
8582
9288
  # role_arn: "AwsArn", # required
8583
9289
  # },
8584
9290
  # iot_site_wise: {
@@ -8644,6 +9350,15 @@ module Aws::IoT
8644
9350
  # },
8645
9351
  # },
8646
9352
  # },
9353
+ # kafka: {
9354
+ # destination_arn: "AwsArn", # required
9355
+ # topic: "String", # required
9356
+ # key: "String",
9357
+ # partition: "String",
9358
+ # client_properties: { # required
9359
+ # "String" => "String",
9360
+ # },
9361
+ # },
8647
9362
  # },
8648
9363
  # },
8649
9364
  # })
@@ -8866,7 +9581,7 @@ module Aws::IoT
8866
9581
  # @option params [required, Types::AuditMitigationActionsTaskTarget] :target
8867
9582
  # Specifies the audit findings to which the mitigation actions are
8868
9583
  # applied. You can apply them to a type of audit check, to all findings
8869
- # from an audit, or to a speecific set of findings.
9584
+ # from an audit, or to a specific set of findings.
8870
9585
  #
8871
9586
  # @option params [required, Hash<String,Array>] :audit_check_to_actions_mapping
8872
9587
  # For an audit check, specifies which mitigation actions to apply. Those
@@ -8888,7 +9603,7 @@ module Aws::IoT
8888
9603
  # @example Request syntax with placeholder values
8889
9604
  #
8890
9605
  # resp = client.start_audit_mitigation_actions_task({
8891
- # task_id: "AuditMitigationActionsTaskId", # required
9606
+ # task_id: "MitigationActionsTaskId", # required
8892
9607
  # target: { # required
8893
9608
  # audit_task_id: "AuditTaskId",
8894
9609
  # finding_ids: ["FindingId"],
@@ -8913,6 +9628,70 @@ module Aws::IoT
8913
9628
  req.send_request(options)
8914
9629
  end
8915
9630
 
9631
+ # Starts a Device Defender ML Detect mitigation actions task.
9632
+ #
9633
+ # @option params [required, String] :task_id
9634
+ # The unique identifier of the task.
9635
+ #
9636
+ # @option params [required, Types::DetectMitigationActionsTaskTarget] :target
9637
+ # Specifies the ML Detect findings to which the mitigation actions are
9638
+ # applied.
9639
+ #
9640
+ # @option params [required, Array<String>] :actions
9641
+ # The actions to be performed when a device has unexpected behavior.
9642
+ #
9643
+ # @option params [Types::ViolationEventOccurrenceRange] :violation_event_occurrence_range
9644
+ # Specifies the time period of which violation events occurred between.
9645
+ #
9646
+ # @option params [Boolean] :include_only_active_violations
9647
+ # Specifies to list only active violations.
9648
+ #
9649
+ # @option params [Boolean] :include_suppressed_alerts
9650
+ # Specifies to include suppressed alerts.
9651
+ #
9652
+ # @option params [required, String] :client_request_token
9653
+ # Each mitigation action task must have a unique client request token.
9654
+ # If you try to create a new task with the same token as a task that
9655
+ # already exists, an exception occurs. If you omit this value, AWS SDKs
9656
+ # will automatically generate a unique client request.
9657
+ #
9658
+ # **A suitable default value is auto-generated.** You should normally
9659
+ # not need to pass this option.**
9660
+ #
9661
+ # @return [Types::StartDetectMitigationActionsTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9662
+ #
9663
+ # * {Types::StartDetectMitigationActionsTaskResponse#task_id #task_id} => String
9664
+ #
9665
+ # @example Request syntax with placeholder values
9666
+ #
9667
+ # resp = client.start_detect_mitigation_actions_task({
9668
+ # task_id: "MitigationActionsTaskId", # required
9669
+ # target: { # required
9670
+ # violation_ids: ["ViolationId"],
9671
+ # security_profile_name: "SecurityProfileName",
9672
+ # behavior_name: "BehaviorName",
9673
+ # },
9674
+ # actions: ["MitigationActionName"], # required
9675
+ # violation_event_occurrence_range: {
9676
+ # start_time: Time.now, # required
9677
+ # end_time: Time.now, # required
9678
+ # },
9679
+ # include_only_active_violations: false,
9680
+ # include_suppressed_alerts: false,
9681
+ # client_request_token: "ClientRequestToken", # required
9682
+ # })
9683
+ #
9684
+ # @example Response structure
9685
+ #
9686
+ # resp.task_id #=> String
9687
+ #
9688
+ # @overload start_detect_mitigation_actions_task(params = {})
9689
+ # @param [Hash] params ({})
9690
+ def start_detect_mitigation_actions_task(params = {}, options = {})
9691
+ req = build_request(:start_detect_mitigation_actions_task, params)
9692
+ req.send_request(options)
9693
+ end
9694
+
8916
9695
  # Starts an on-demand Device Defender audit.
8917
9696
  #
8918
9697
  # @option params [required, Array<String>] :target_check_names
@@ -9253,9 +10032,9 @@ module Aws::IoT
9253
10032
  # audit checks are enabled or disabled.
9254
10033
  #
9255
10034
  # @option params [String] :role_arn
9256
- # The ARN of the role that grants permission to AWS IoT to access
9257
- # information about your devices, policies, certificates and other items
9258
- # as required when performing an audit.
10035
+ # The Amazon Resource Name (ARN) of the role that grants permission to
10036
+ # AWS IoT to access information about your devices, policies,
10037
+ # certificates, and other items as required when performing an audit.
9259
10038
  #
9260
10039
  # @option params [Hash<String,Types::AuditNotificationTarget>] :audit_notification_target_configurations
9261
10040
  # Information about the targets to which audit notifications are sent.
@@ -9269,7 +10048,7 @@ module Aws::IoT
9269
10048
  # enabled. When a check is disabled, any data collected so far in
9270
10049
  # relation to the check is deleted.
9271
10050
  #
9272
- # You cannot disable a check if it is used by any scheduled audit. You
10051
+ # You cannot disable a check if it's used by any scheduled audit. You
9273
10052
  # must first delete the check from the scheduled audit or delete the
9274
10053
  # scheduled audit itself.
9275
10054
  #
@@ -9525,8 +10304,50 @@ module Aws::IoT
9525
10304
  req.send_request(options)
9526
10305
  end
9527
10306
 
10307
+ # Updates a Device Defender detect custom metric.
10308
+ #
10309
+ # @option params [required, String] :metric_name
10310
+ # The name of the custom metric. Cannot be updated.
10311
+ #
10312
+ # @option params [required, String] :display_name
10313
+ # Field represents a friendly name in the console for the custom metric,
10314
+ # it doesn't have to be unique. Don't use this name as the metric
10315
+ # identifier in the device metric report. Can be updated.
10316
+ #
10317
+ # @return [Types::UpdateCustomMetricResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10318
+ #
10319
+ # * {Types::UpdateCustomMetricResponse#metric_name #metric_name} => String
10320
+ # * {Types::UpdateCustomMetricResponse#metric_arn #metric_arn} => String
10321
+ # * {Types::UpdateCustomMetricResponse#metric_type #metric_type} => String
10322
+ # * {Types::UpdateCustomMetricResponse#display_name #display_name} => String
10323
+ # * {Types::UpdateCustomMetricResponse#creation_date #creation_date} => Time
10324
+ # * {Types::UpdateCustomMetricResponse#last_modified_date #last_modified_date} => Time
10325
+ #
10326
+ # @example Request syntax with placeholder values
10327
+ #
10328
+ # resp = client.update_custom_metric({
10329
+ # metric_name: "MetricName", # required
10330
+ # display_name: "CustomMetricDisplayName", # required
10331
+ # })
10332
+ #
10333
+ # @example Response structure
10334
+ #
10335
+ # resp.metric_name #=> String
10336
+ # resp.metric_arn #=> String
10337
+ # resp.metric_type #=> String, one of "string-list", "ip-address-list", "number-list", "number"
10338
+ # resp.display_name #=> String
10339
+ # resp.creation_date #=> Time
10340
+ # resp.last_modified_date #=> Time
10341
+ #
10342
+ # @overload update_custom_metric(params = {})
10343
+ # @param [Hash] params ({})
10344
+ def update_custom_metric(params = {}, options = {})
10345
+ req = build_request(:update_custom_metric, params)
10346
+ req.send_request(options)
10347
+ end
10348
+
9528
10349
  # Updates the definition for a dimension. You cannot change the type of
9529
- # a dimension after it is created (you can delete it and re-create it).
10350
+ # a dimension after it is created (you can delete it and recreate it).
9530
10351
  #
9531
10352
  # @option params [required, String] :name
9532
10353
  # A unique identifier for the dimension. Choose something that describes
@@ -9783,6 +10604,19 @@ module Aws::IoT
9783
10604
  # terminal state before the time expires, it will be automatically set
9784
10605
  # to `TIMED_OUT`.
9785
10606
  #
10607
+ # @option params [String] :namespace_id
10608
+ # The namespace used to indicate that a job is a customer-managed job.
10609
+ #
10610
+ # When you specify a value for this parameter, AWS IoT Core sends jobs
10611
+ # notifications to MQTT topics that contain the value in the following
10612
+ # format.
10613
+ #
10614
+ # `$aws/things/THING_NAME/jobs/JOB_ID/notify-namespace-NAMESPACE_ID/`
10615
+ #
10616
+ # <note markdown="1"> The `namespaceId` feature is in public preview.
10617
+ #
10618
+ # </note>
10619
+ #
9786
10620
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
9787
10621
  #
9788
10622
  # @example Request syntax with placeholder values
@@ -9818,6 +10652,7 @@ module Aws::IoT
9818
10652
  # timeout_config: {
9819
10653
  # in_progress_timeout_in_minutes: 1,
9820
10654
  # },
10655
+ # namespace_id: "NamespaceId",
9821
10656
  # })
9822
10657
  #
9823
10658
  # @overload update_job(params = {})
@@ -9830,9 +10665,9 @@ module Aws::IoT
9830
10665
  # Updates the definition for the specified mitigation action.
9831
10666
  #
9832
10667
  # @option params [required, String] :action_name
9833
- # The friendly name for the mitigation action. You can't change the
10668
+ # The friendly name for the mitigation action. You cannot change the
9834
10669
  # name by using `UpdateMitigationAction`. Instead, you must delete and
9835
- # re-create the mitigation action with the new name.
10670
+ # recreate the mitigation action with the new name.
9836
10671
  #
9837
10672
  # @option params [String] :role_arn
9838
10673
  # The ARN of the IAM role that is used to apply the mitigation action.
@@ -9974,22 +10809,22 @@ module Aws::IoT
9974
10809
  # how often the audit takes place.
9975
10810
  #
9976
10811
  # @option params [String] :frequency
9977
- # How often the scheduled audit takes place. Can be one of "DAILY",
9978
- # "WEEKLY", "BIWEEKLY", or "MONTHLY". The start time of each audit
9979
- # is determined by the system.
10812
+ # How often the scheduled audit takes place, either `DAILY`, `WEEKLY`,
10813
+ # `BIWEEKLY`, or `MONTHLY`. The start time of each audit is determined
10814
+ # by the system.
9980
10815
  #
9981
10816
  # @option params [String] :day_of_month
9982
- # The day of the month on which the scheduled audit takes place. Can be
9983
- # "1" through "31" or "LAST". This field is required if the
9984
- # "frequency" parameter is set to "MONTHLY". If days 29-31 are
10817
+ # The day of the month on which the scheduled audit takes place. This
10818
+ # can be `1` through `31` or `LAST`. This field is required if the
10819
+ # `frequency` parameter is set to `MONTHLY`. If days 29-31 are
9985
10820
  # specified, and the month does not have that many days, the audit takes
9986
10821
  # place on the "LAST" day of the month.
9987
10822
  #
9988
10823
  # @option params [String] :day_of_week
9989
- # The day of the week on which the scheduled audit takes place. Can be
9990
- # one of "SUN", "MON", "TUE", "WED", "THU", "FRI", or
9991
- # "SAT". This field is required if the "frequency" parameter is set
9992
- # to "WEEKLY" or "BIWEEKLY".
10824
+ # The day of the week on which the scheduled audit takes place. This can
10825
+ # be one of `SUN`, `MON`, `TUE`, `WED`, `THU`, `FRI`, or `SAT`. This
10826
+ # field is required if the "frequency" parameter is set to `WEEKLY` or
10827
+ # `BIWEEKLY`.
9993
10828
  #
9994
10829
  # @option params [Array<String>] :target_check_names
9995
10830
  # Which checks are performed during the scheduled audit. Checks must be
@@ -10046,12 +10881,14 @@ module Aws::IoT
10046
10881
  #
10047
10882
  # A list of metrics whose data is retained (stored). By default, data is
10048
10883
  # retained for any metric used in the profile's `behaviors`, but it is
10049
- # also retained for any metric specified here.
10884
+ # also retained for any metric specified here. Can be used with custom
10885
+ # metrics; cannot be used with dimensions.
10050
10886
  #
10051
10887
  # @option params [Array<Types::MetricToRetain>] :additional_metrics_to_retain_v2
10052
10888
  # A list of metrics whose data is retained (stored). By default, data is
10053
10889
  # retained for any metric used in the profile's behaviors, but it is
10054
- # also retained for any metric specified here.
10890
+ # also retained for any metric specified here. Can be used with custom
10891
+ # metrics; cannot be used with dimensions.
10055
10892
  #
10056
10893
  # @option params [Boolean] :delete_behaviors
10057
10894
  # If true, delete all `behaviors` defined for this security profile. If
@@ -10101,11 +10938,14 @@ module Aws::IoT
10101
10938
  # operator: "IN", # accepts IN, NOT_IN
10102
10939
  # },
10103
10940
  # criteria: {
10104
- # 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
10941
+ # 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
10105
10942
  # value: {
10106
10943
  # count: 1,
10107
10944
  # cidrs: ["Cidr"],
10108
10945
  # ports: [1],
10946
+ # number: 1.0,
10947
+ # numbers: [1.0],
10948
+ # strings: ["stringValue"],
10109
10949
  # },
10110
10950
  # duration_seconds: 1,
10111
10951
  # consecutive_datapoints_to_alarm: 1,
@@ -10113,7 +10953,11 @@ module Aws::IoT
10113
10953
  # statistical_threshold: {
10114
10954
  # statistic: "EvaluationStatistic",
10115
10955
  # },
10956
+ # ml_detection_config: {
10957
+ # confidence_level: "LOW", # required, accepts LOW, MEDIUM, HIGH
10958
+ # },
10116
10959
  # },
10960
+ # suppress_alerts: false,
10117
10961
  # },
10118
10962
  # ],
10119
10963
  # alert_targets: {
@@ -10148,16 +10992,23 @@ module Aws::IoT
10148
10992
  # resp.behaviors[0].metric #=> String
10149
10993
  # resp.behaviors[0].metric_dimension.dimension_name #=> String
10150
10994
  # resp.behaviors[0].metric_dimension.operator #=> String, one of "IN", "NOT_IN"
10151
- # 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"
10995
+ # 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"
10152
10996
  # resp.behaviors[0].criteria.value.count #=> Integer
10153
10997
  # resp.behaviors[0].criteria.value.cidrs #=> Array
10154
10998
  # resp.behaviors[0].criteria.value.cidrs[0] #=> String
10155
10999
  # resp.behaviors[0].criteria.value.ports #=> Array
10156
11000
  # resp.behaviors[0].criteria.value.ports[0] #=> Integer
11001
+ # resp.behaviors[0].criteria.value.number #=> Float
11002
+ # resp.behaviors[0].criteria.value.numbers #=> Array
11003
+ # resp.behaviors[0].criteria.value.numbers[0] #=> Float
11004
+ # resp.behaviors[0].criteria.value.strings #=> Array
11005
+ # resp.behaviors[0].criteria.value.strings[0] #=> String
10157
11006
  # resp.behaviors[0].criteria.duration_seconds #=> Integer
10158
11007
  # resp.behaviors[0].criteria.consecutive_datapoints_to_alarm #=> Integer
10159
11008
  # resp.behaviors[0].criteria.consecutive_datapoints_to_clear #=> Integer
10160
11009
  # resp.behaviors[0].criteria.statistical_threshold.statistic #=> String
11010
+ # resp.behaviors[0].criteria.ml_detection_config.confidence_level #=> String, one of "LOW", "MEDIUM", "HIGH"
11011
+ # resp.behaviors[0].suppress_alerts #=> Boolean
10161
11012
  # resp.alert_targets #=> Hash
10162
11013
  # resp.alert_targets["AlertTargetType"].alert_target_arn #=> String
10163
11014
  # resp.alert_targets["AlertTargetType"].role_arn #=> String
@@ -10409,7 +11260,7 @@ module Aws::IoT
10409
11260
  #
10410
11261
  # resp = client.update_topic_rule_destination({
10411
11262
  # arn: "AwsArn", # required
10412
- # status: "ENABLED", # required, accepts ENABLED, IN_PROGRESS, DISABLED, ERROR
11263
+ # status: "ENABLED", # required, accepts ENABLED, IN_PROGRESS, DISABLED, ERROR, DELETING
10413
11264
  # })
10414
11265
  #
10415
11266
  # @overload update_topic_rule_destination(params = {})
@@ -10442,11 +11293,14 @@ module Aws::IoT
10442
11293
  # operator: "IN", # accepts IN, NOT_IN
10443
11294
  # },
10444
11295
  # criteria: {
10445
- # 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
11296
+ # 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
10446
11297
  # value: {
10447
11298
  # count: 1,
10448
11299
  # cidrs: ["Cidr"],
10449
11300
  # ports: [1],
11301
+ # number: 1.0,
11302
+ # numbers: [1.0],
11303
+ # strings: ["stringValue"],
10450
11304
  # },
10451
11305
  # duration_seconds: 1,
10452
11306
  # consecutive_datapoints_to_alarm: 1,
@@ -10454,7 +11308,11 @@ module Aws::IoT
10454
11308
  # statistical_threshold: {
10455
11309
  # statistic: "EvaluationStatistic",
10456
11310
  # },
11311
+ # ml_detection_config: {
11312
+ # confidence_level: "LOW", # required, accepts LOW, MEDIUM, HIGH
11313
+ # },
10457
11314
  # },
11315
+ # suppress_alerts: false,
10458
11316
  # },
10459
11317
  # ],
10460
11318
  # })
@@ -10485,7 +11343,7 @@ module Aws::IoT
10485
11343
  params: params,
10486
11344
  config: config)
10487
11345
  context[:gem_name] = 'aws-sdk-iot'
10488
- context[:gem_version] = '1.59.0'
11346
+ context[:gem_version] = '1.64.0'
10489
11347
  Seahorse::Client::Request.new(handlers, context)
10490
11348
  end
10491
11349