aws-sdk-iot 1.59.0 → 1.64.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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