aws-sdk-iot 1.45.0 → 1.50.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.
@@ -6,13 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::IoT
9
- # This class provides a resource oriented interface for IoT.
10
- # To create a resource object:
11
- # resource = Aws::IoT::Resource.new(region: 'us-west-2')
12
- # You can supply a client object with custom configuration that will be used for all resource operations.
13
- # If you do not pass +:client+, a default client will be constructed.
14
- # client = Aws::IoT::Client.new(region: 'us-west-2')
15
- # resource = Aws::IoT::Resource.new(client: client)
9
+
16
10
  class Resource
17
11
 
18
12
  # @param options ({})
@@ -293,7 +293,7 @@ module Aws::IoT
293
293
  # @return [Types::CloudwatchAlarmAction]
294
294
  #
295
295
  # @!attribute [rw] cloudwatch_logs
296
- # Send data to CloudWatch logs.
296
+ # Send data to CloudWatch Logs.
297
297
  # @return [Types::CloudwatchLogsAction]
298
298
  #
299
299
  # @!attribute [rw] elasticsearch
@@ -1134,7 +1134,7 @@ module Aws::IoT
1134
1134
  #
1135
1135
  # {
1136
1136
  # action_type: "PUBLISH", # accepts PUBLISH, SUBSCRIBE, RECEIVE, CONNECT
1137
- # resources: ["Resource"],
1137
+ # resources: ["Resource"], # required
1138
1138
  # }
1139
1139
  #
1140
1140
  # @!attribute [rw] action_type
@@ -1327,6 +1327,10 @@ module Aws::IoT
1327
1327
  # {
1328
1328
  # name: "BehaviorName", # required
1329
1329
  # metric: "BehaviorMetric",
1330
+ # metric_dimension: {
1331
+ # dimension_name: "DimensionName", # required
1332
+ # operator: "IN", # accepts IN, NOT_IN
1333
+ # },
1330
1334
  # criteria: {
1331
1335
  # 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
1332
1336
  # value: {
@@ -1351,6 +1355,13 @@ module Aws::IoT
1351
1355
  # What is measured by the behavior.
1352
1356
  # @return [String]
1353
1357
  #
1358
+ # @!attribute [rw] metric_dimension
1359
+ # The dimension for a metric in your behavior. For example, using a
1360
+ # `TOPIC_FILTER` dimension, you can narrow down the scope of the
1361
+ # metric only to MQTT topics whose name match the pattern specified in
1362
+ # the dimension.
1363
+ # @return [Types::MetricDimension]
1364
+ #
1354
1365
  # @!attribute [rw] criteria
1355
1366
  # The criteria that determine if a device is behaving normally in
1356
1367
  # regard to the `metric`.
@@ -1359,6 +1370,7 @@ module Aws::IoT
1359
1370
  class Behavior < Struct.new(
1360
1371
  :name,
1361
1372
  :metric,
1373
+ :metric_dimension,
1362
1374
  :criteria)
1363
1375
  include Aws::Structure
1364
1376
  end
@@ -1746,6 +1758,10 @@ module Aws::IoT
1746
1758
  # used.
1747
1759
  # @return [String]
1748
1760
  #
1761
+ # @!attribute [rw] certificate_mode
1762
+ # The mode of the certificate.
1763
+ # @return [String]
1764
+ #
1749
1765
  # @!attribute [rw] creation_date
1750
1766
  # The date and time the certificate was created.
1751
1767
  # @return [Time]
@@ -1754,6 +1770,7 @@ module Aws::IoT
1754
1770
  :certificate_arn,
1755
1771
  :certificate_id,
1756
1772
  :status,
1773
+ :certificate_mode,
1757
1774
  :creation_date)
1758
1775
  include Aws::Structure
1759
1776
  end
@@ -1827,6 +1844,10 @@ module Aws::IoT
1827
1844
  # When the certificate is valid.
1828
1845
  # @return [Types::CertificateValidity]
1829
1846
  #
1847
+ # @!attribute [rw] certificate_mode
1848
+ # The mode of the certificate.
1849
+ # @return [String]
1850
+ #
1830
1851
  class CertificateDescription < Struct.new(
1831
1852
  :certificate_arn,
1832
1853
  :certificate_id,
@@ -1840,7 +1861,8 @@ module Aws::IoT
1840
1861
  :customer_version,
1841
1862
  :transfer_data,
1842
1863
  :generation_id,
1843
- :validity)
1864
+ :validity,
1865
+ :certificate_mode)
1844
1866
  include Aws::Structure
1845
1867
  end
1846
1868
 
@@ -1925,7 +1947,7 @@ module Aws::IoT
1925
1947
  include Aws::Structure
1926
1948
  end
1927
1949
 
1928
- # Describes an action that sends data to CloudWatch logs.
1950
+ # Describes an action that sends data to CloudWatch Logs.
1929
1951
  #
1930
1952
  # @note When making an API call, you may pass CloudwatchLogsAction
1931
1953
  # data as a hash:
@@ -2162,6 +2184,12 @@ module Aws::IoT
2162
2184
  # "KeyName" => "KeyValue",
2163
2185
  # },
2164
2186
  # status: "ACTIVE", # accepts ACTIVE, INACTIVE
2187
+ # tags: [
2188
+ # {
2189
+ # key: "TagKey", # required
2190
+ # value: "TagValue",
2191
+ # },
2192
+ # ],
2165
2193
  # signing_disabled: false,
2166
2194
  # }
2167
2195
  #
@@ -2187,6 +2215,21 @@ module Aws::IoT
2187
2215
  # The status of the create authorizer request.
2188
2216
  # @return [String]
2189
2217
  #
2218
+ # @!attribute [rw] tags
2219
+ # Metadata which can be used to manage the custom authorizer.
2220
+ #
2221
+ # <note markdown="1"> For URI Request parameters use format:
2222
+ # ...key1=value1&amp;key2=value2...
2223
+ #
2224
+ # For the CLI command-line parameter use format: &amp;&amp;tags
2225
+ # "key1=value1&amp;key2=value2..."
2226
+ #
2227
+ # For the cli-input-json file use format: "tags":
2228
+ # "key1=value1&amp;key2=value2..."
2229
+ #
2230
+ # </note>
2231
+ # @return [Array<Types::Tag>]
2232
+ #
2190
2233
  # @!attribute [rw] signing_disabled
2191
2234
  # Specifies whether AWS IoT validates the token signature in an
2192
2235
  # authorization request.
@@ -2198,6 +2241,7 @@ module Aws::IoT
2198
2241
  :token_key_name,
2199
2242
  :token_signing_public_keys,
2200
2243
  :status,
2244
+ :tags,
2201
2245
  :signing_disabled)
2202
2246
  include Aws::Structure
2203
2247
  end
@@ -2226,7 +2270,7 @@ module Aws::IoT
2226
2270
  # },
2227
2271
  # tags: [
2228
2272
  # {
2229
- # key: "TagKey",
2273
+ # key: "TagKey", # required
2230
2274
  # value: "TagValue",
2231
2275
  # },
2232
2276
  # ],
@@ -2317,6 +2361,75 @@ module Aws::IoT
2317
2361
  include Aws::Structure
2318
2362
  end
2319
2363
 
2364
+ # @note When making an API call, you may pass CreateDimensionRequest
2365
+ # data as a hash:
2366
+ #
2367
+ # {
2368
+ # name: "DimensionName", # required
2369
+ # type: "TOPIC_FILTER", # required, accepts TOPIC_FILTER
2370
+ # string_values: ["DimensionStringValue"], # required
2371
+ # tags: [
2372
+ # {
2373
+ # key: "TagKey", # required
2374
+ # value: "TagValue",
2375
+ # },
2376
+ # ],
2377
+ # client_request_token: "ClientRequestToken", # required
2378
+ # }
2379
+ #
2380
+ # @!attribute [rw] name
2381
+ # A unique identifier for the dimension. Choose something that
2382
+ # describes the type and value to make it easy to remember what it
2383
+ # does.
2384
+ # @return [String]
2385
+ #
2386
+ # @!attribute [rw] type
2387
+ # Specifies the type of dimension. Supported types: `TOPIC_FILTER.`
2388
+ # @return [String]
2389
+ #
2390
+ # @!attribute [rw] string_values
2391
+ # Specifies the value or list of values for the dimension. For
2392
+ # `TOPIC_FILTER` dimensions, this is a pattern used to match the MQTT
2393
+ # topic (for example, "admin/#").
2394
+ # @return [Array<String>]
2395
+ #
2396
+ # @!attribute [rw] tags
2397
+ # Metadata that can be used to manage the dimension.
2398
+ # @return [Array<Types::Tag>]
2399
+ #
2400
+ # @!attribute [rw] client_request_token
2401
+ # Each dimension must have a unique client request token. If you try
2402
+ # to create a new dimension with the same token as a dimension that
2403
+ # already exists, an exception occurs. If you omit this value, AWS
2404
+ # SDKs will automatically generate a unique client request.
2405
+ #
2406
+ # **A suitable default value is auto-generated.** You should normally
2407
+ # not need to pass this option.
2408
+ # @return [String]
2409
+ #
2410
+ class CreateDimensionRequest < Struct.new(
2411
+ :name,
2412
+ :type,
2413
+ :string_values,
2414
+ :tags,
2415
+ :client_request_token)
2416
+ include Aws::Structure
2417
+ end
2418
+
2419
+ # @!attribute [rw] name
2420
+ # A unique identifier for the dimension.
2421
+ # @return [String]
2422
+ #
2423
+ # @!attribute [rw] arn
2424
+ # The ARN (Amazon resource name) of the created dimension.
2425
+ # @return [String]
2426
+ #
2427
+ class CreateDimensionResponse < Struct.new(
2428
+ :name,
2429
+ :arn)
2430
+ include Aws::Structure
2431
+ end
2432
+
2320
2433
  # @note When making an API call, you may pass CreateDomainConfigurationRequest
2321
2434
  # data as a hash:
2322
2435
  #
@@ -2330,6 +2443,12 @@ module Aws::IoT
2330
2443
  # allow_authorizer_override: false,
2331
2444
  # },
2332
2445
  # service_type: "DATA", # accepts DATA, CREDENTIAL_PROVIDER, JOBS
2446
+ # tags: [
2447
+ # {
2448
+ # key: "TagKey", # required
2449
+ # value: "TagValue",
2450
+ # },
2451
+ # ],
2333
2452
  # }
2334
2453
  #
2335
2454
  # @!attribute [rw] domain_configuration_name
@@ -2360,15 +2479,35 @@ module Aws::IoT
2360
2479
  #
2361
2480
  # @!attribute [rw] service_type
2362
2481
  # The type of service delivered by the endpoint.
2482
+ #
2483
+ # <note markdown="1"> AWS IoT Core currently supports only the `DATA` service type.
2484
+ #
2485
+ # </note>
2363
2486
  # @return [String]
2364
2487
  #
2488
+ # @!attribute [rw] tags
2489
+ # Metadata which can be used to manage the domain configuration.
2490
+ #
2491
+ # <note markdown="1"> For URI Request parameters use format:
2492
+ # ...key1=value1&amp;key2=value2...
2493
+ #
2494
+ # For the CLI command-line parameter use format: &amp;&amp;tags
2495
+ # "key1=value1&amp;key2=value2..."
2496
+ #
2497
+ # For the cli-input-json file use format: "tags":
2498
+ # "key1=value1&amp;key2=value2..."
2499
+ #
2500
+ # </note>
2501
+ # @return [Array<Types::Tag>]
2502
+ #
2365
2503
  class CreateDomainConfigurationRequest < Struct.new(
2366
2504
  :domain_configuration_name,
2367
2505
  :domain_name,
2368
2506
  :server_certificate_arns,
2369
2507
  :validation_certificate_arn,
2370
2508
  :authorizer_config,
2371
- :service_type)
2509
+ :service_type,
2510
+ :tags)
2372
2511
  include Aws::Structure
2373
2512
  end
2374
2513
 
@@ -2405,7 +2544,7 @@ module Aws::IoT
2405
2544
  # query_version: "QueryVersion",
2406
2545
  # tags: [
2407
2546
  # {
2408
- # key: "TagKey",
2547
+ # key: "TagKey", # required
2409
2548
  # value: "TagValue",
2410
2549
  # },
2411
2550
  # ],
@@ -2534,7 +2673,7 @@ module Aws::IoT
2534
2673
  # },
2535
2674
  # tags: [
2536
2675
  # {
2537
- # key: "TagKey",
2676
+ # key: "TagKey", # required
2538
2677
  # value: "TagValue",
2539
2678
  # },
2540
2679
  # ],
@@ -2716,7 +2855,7 @@ module Aws::IoT
2716
2855
  # },
2717
2856
  # tags: [
2718
2857
  # {
2719
- # key: "TagKey",
2858
+ # key: "TagKey", # required
2720
2859
  # value: "TagValue",
2721
2860
  # },
2722
2861
  # ],
@@ -2831,7 +2970,7 @@ module Aws::IoT
2831
2970
  # },
2832
2971
  # tags: [
2833
2972
  # {
2834
- # key: "TagKey",
2973
+ # key: "TagKey", # required
2835
2974
  # value: "TagValue",
2836
2975
  # },
2837
2976
  # ],
@@ -2942,6 +3081,12 @@ module Aws::IoT
2942
3081
  # {
2943
3082
  # policy_name: "PolicyName", # required
2944
3083
  # policy_document: "PolicyDocument", # required
3084
+ # tags: [
3085
+ # {
3086
+ # key: "TagKey", # required
3087
+ # value: "TagValue",
3088
+ # },
3089
+ # ],
2945
3090
  # }
2946
3091
  #
2947
3092
  # @!attribute [rw] policy_name
@@ -2954,9 +3099,25 @@ module Aws::IoT
2954
3099
  # whitespace.
2955
3100
  # @return [String]
2956
3101
  #
3102
+ # @!attribute [rw] tags
3103
+ # Metadata which can be used to manage the policy.
3104
+ #
3105
+ # <note markdown="1"> For URI Request parameters use format:
3106
+ # ...key1=value1&amp;key2=value2...
3107
+ #
3108
+ # For the CLI command-line parameter use format: &amp;&amp;tags
3109
+ # "key1=value1&amp;key2=value2..."
3110
+ #
3111
+ # For the cli-input-json file use format: "tags":
3112
+ # "key1=value1&amp;key2=value2..."
3113
+ #
3114
+ # </note>
3115
+ # @return [Array<Types::Tag>]
3116
+ #
2957
3117
  class CreatePolicyRequest < Struct.new(
2958
3118
  :policy_name,
2959
- :policy_document)
3119
+ :policy_document,
3120
+ :tags)
2960
3121
  include Aws::Structure
2961
3122
  end
2962
3123
 
@@ -3095,9 +3256,13 @@ module Aws::IoT
3095
3256
  # template_body: "TemplateBody", # required
3096
3257
  # enabled: false,
3097
3258
  # provisioning_role_arn: "RoleArn", # required
3259
+ # pre_provisioning_hook: {
3260
+ # payload_version: "PayloadVersion",
3261
+ # target_arn: "TargetArn", # required
3262
+ # },
3098
3263
  # tags: [
3099
3264
  # {
3100
- # key: "TagKey",
3265
+ # key: "TagKey", # required
3101
3266
  # value: "TagValue",
3102
3267
  # },
3103
3268
  # ],
@@ -3124,6 +3289,10 @@ module Aws::IoT
3124
3289
  # template. This IoT role grants permission to provision a device.
3125
3290
  # @return [String]
3126
3291
  #
3292
+ # @!attribute [rw] pre_provisioning_hook
3293
+ # Creates a pre-provisioning hook template.
3294
+ # @return [Types::ProvisioningHook]
3295
+ #
3127
3296
  # @!attribute [rw] tags
3128
3297
  # Metadata which can be used to manage the fleet provisioning
3129
3298
  # template.
@@ -3146,6 +3315,7 @@ module Aws::IoT
3146
3315
  :template_body,
3147
3316
  :enabled,
3148
3317
  :provisioning_role_arn,
3318
+ :pre_provisioning_hook,
3149
3319
  :tags)
3150
3320
  include Aws::Structure
3151
3321
  end
@@ -3229,6 +3399,12 @@ module Aws::IoT
3229
3399
  # role_alias: "RoleAlias", # required
3230
3400
  # role_arn: "RoleArn", # required
3231
3401
  # credential_duration_seconds: 1,
3402
+ # tags: [
3403
+ # {
3404
+ # key: "TagKey", # required
3405
+ # value: "TagValue",
3406
+ # },
3407
+ # ],
3232
3408
  # }
3233
3409
  #
3234
3410
  # @!attribute [rw] role_alias
@@ -3244,10 +3420,26 @@ module Aws::IoT
3244
3420
  # How long (in seconds) the credentials will be valid.
3245
3421
  # @return [Integer]
3246
3422
  #
3423
+ # @!attribute [rw] tags
3424
+ # Metadata which can be used to manage the role alias.
3425
+ #
3426
+ # <note markdown="1"> For URI Request parameters use format:
3427
+ # ...key1=value1&amp;key2=value2...
3428
+ #
3429
+ # For the CLI command-line parameter use format: &amp;&amp;tags
3430
+ # "key1=value1&amp;key2=value2..."
3431
+ #
3432
+ # For the cli-input-json file use format: "tags":
3433
+ # "key1=value1&amp;key2=value2..."
3434
+ #
3435
+ # </note>
3436
+ # @return [Array<Types::Tag>]
3437
+ #
3247
3438
  class CreateRoleAliasRequest < Struct.new(
3248
3439
  :role_alias,
3249
3440
  :role_arn,
3250
- :credential_duration_seconds)
3441
+ :credential_duration_seconds,
3442
+ :tags)
3251
3443
  include Aws::Structure
3252
3444
  end
3253
3445
 
@@ -3276,7 +3468,7 @@ module Aws::IoT
3276
3468
  # scheduled_audit_name: "ScheduledAuditName", # required
3277
3469
  # tags: [
3278
3470
  # {
3279
- # key: "TagKey",
3471
+ # key: "TagKey", # required
3280
3472
  # value: "TagValue",
3281
3473
  # },
3282
3474
  # ],
@@ -3349,6 +3541,10 @@ module Aws::IoT
3349
3541
  # {
3350
3542
  # name: "BehaviorName", # required
3351
3543
  # metric: "BehaviorMetric",
3544
+ # metric_dimension: {
3545
+ # dimension_name: "DimensionName", # required
3546
+ # operator: "IN", # accepts IN, NOT_IN
3547
+ # },
3352
3548
  # criteria: {
3353
3549
  # 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
3354
3550
  # value: {
@@ -3372,9 +3568,18 @@ module Aws::IoT
3372
3568
  # },
3373
3569
  # },
3374
3570
  # additional_metrics_to_retain: ["BehaviorMetric"],
3571
+ # additional_metrics_to_retain_v2: [
3572
+ # {
3573
+ # metric: "BehaviorMetric", # required
3574
+ # metric_dimension: {
3575
+ # dimension_name: "DimensionName", # required
3576
+ # operator: "IN", # accepts IN, NOT_IN
3577
+ # },
3578
+ # },
3579
+ # ],
3375
3580
  # tags: [
3376
3581
  # {
3377
- # key: "TagKey",
3582
+ # key: "TagKey", # required
3378
3583
  # value: "TagValue",
3379
3584
  # },
3380
3585
  # ],
@@ -3403,8 +3608,17 @@ module Aws::IoT
3403
3608
  # A list of metrics whose data is retained (stored). By default, data
3404
3609
  # is retained for any metric used in the profile's `behaviors`, but
3405
3610
  # it is also retained for any metric specified here.
3611
+ #
3612
+ # **Note:** This API field is deprecated. Please use
3613
+ # CreateSecurityProfileRequest$additionalMetricsToRetainV2 instead.
3406
3614
  # @return [Array<String>]
3407
3615
  #
3616
+ # @!attribute [rw] additional_metrics_to_retain_v2
3617
+ # A list of metrics whose data is retained (stored). By default, data
3618
+ # is retained for any metric used in the profile's `behaviors`, but
3619
+ # it is also retained for any metric specified here.
3620
+ # @return [Array<Types::MetricToRetain>]
3621
+ #
3408
3622
  # @!attribute [rw] tags
3409
3623
  # Metadata that can be used to manage the security profile.
3410
3624
  # @return [Array<Types::Tag>]
@@ -3415,6 +3629,7 @@ module Aws::IoT
3415
3629
  :behaviors,
3416
3630
  :alert_targets,
3417
3631
  :additional_metrics_to_retain,
3632
+ :additional_metrics_to_retain_v2,
3418
3633
  :tags)
3419
3634
  include Aws::Structure
3420
3635
  end
@@ -3452,7 +3667,7 @@ module Aws::IoT
3452
3667
  # role_arn: "RoleArn", # required
3453
3668
  # tags: [
3454
3669
  # {
3455
- # key: "TagKey",
3670
+ # key: "TagKey", # required
3456
3671
  # value: "TagValue",
3457
3672
  # },
3458
3673
  # ],
@@ -3529,7 +3744,7 @@ module Aws::IoT
3529
3744
  # },
3530
3745
  # tags: [
3531
3746
  # {
3532
- # key: "TagKey",
3747
+ # key: "TagKey", # required
3533
3748
  # value: "TagValue",
3534
3749
  # },
3535
3750
  # ],
@@ -3597,6 +3812,10 @@ module Aws::IoT
3597
3812
  #
3598
3813
  # @!attribute [rw] thing_name
3599
3814
  # The name of the thing to create.
3815
+ #
3816
+ # You can't change a thing's name after you create it. To change a
3817
+ # thing's name, you must create a new thing, give it the new name,
3818
+ # and then delete the old thing.
3600
3819
  # @return [String]
3601
3820
  #
3602
3821
  # @!attribute [rw] thing_type_name
@@ -3656,7 +3875,7 @@ module Aws::IoT
3656
3875
  # },
3657
3876
  # tags: [
3658
3877
  # {
3659
- # key: "TagKey",
3878
+ # key: "TagKey", # required
3660
3879
  # value: "TagValue",
3661
3880
  # },
3662
3881
  # ],
@@ -4228,6 +4447,24 @@ module Aws::IoT
4228
4447
  include Aws::Structure
4229
4448
  end
4230
4449
 
4450
+ # @note When making an API call, you may pass DeleteDimensionRequest
4451
+ # data as a hash:
4452
+ #
4453
+ # {
4454
+ # name: "DimensionName", # required
4455
+ # }
4456
+ #
4457
+ # @!attribute [rw] name
4458
+ # The unique identifier for the dimension that you want to delete.
4459
+ # @return [String]
4460
+ #
4461
+ class DeleteDimensionRequest < Struct.new(
4462
+ :name)
4463
+ include Aws::Structure
4464
+ end
4465
+
4466
+ class DeleteDimensionResponse < Aws::EmptyStructure; end
4467
+
4231
4468
  # @note When making an API call, you may pass DeleteDomainConfigurationRequest
4232
4469
  # data as a hash:
4233
4470
  #
@@ -5086,6 +5323,58 @@ module Aws::IoT
5086
5323
  include Aws::Structure
5087
5324
  end
5088
5325
 
5326
+ # @note When making an API call, you may pass DescribeDimensionRequest
5327
+ # data as a hash:
5328
+ #
5329
+ # {
5330
+ # name: "DimensionName", # required
5331
+ # }
5332
+ #
5333
+ # @!attribute [rw] name
5334
+ # The unique identifier for the dimension.
5335
+ # @return [String]
5336
+ #
5337
+ class DescribeDimensionRequest < Struct.new(
5338
+ :name)
5339
+ include Aws::Structure
5340
+ end
5341
+
5342
+ # @!attribute [rw] name
5343
+ # The unique identifier for the dimension.
5344
+ # @return [String]
5345
+ #
5346
+ # @!attribute [rw] arn
5347
+ # The ARN (Amazon resource name) for the dimension.
5348
+ # @return [String]
5349
+ #
5350
+ # @!attribute [rw] type
5351
+ # The type of the dimension.
5352
+ # @return [String]
5353
+ #
5354
+ # @!attribute [rw] string_values
5355
+ # The value or list of values used to scope the dimension. For
5356
+ # example, for topic filters, this is the pattern used to match the
5357
+ # MQTT topic name.
5358
+ # @return [Array<String>]
5359
+ #
5360
+ # @!attribute [rw] creation_date
5361
+ # The date the dimension was created.
5362
+ # @return [Time]
5363
+ #
5364
+ # @!attribute [rw] last_modified_date
5365
+ # The date the dimension was last modified.
5366
+ # @return [Time]
5367
+ #
5368
+ class DescribeDimensionResponse < Struct.new(
5369
+ :name,
5370
+ :arn,
5371
+ :type,
5372
+ :string_values,
5373
+ :creation_date,
5374
+ :last_modified_date)
5375
+ include Aws::Structure
5376
+ end
5377
+
5089
5378
  # @note When making an API call, you may pass DescribeDomainConfigurationRequest
5090
5379
  # data as a hash:
5091
5380
  #
@@ -5457,6 +5746,10 @@ module Aws::IoT
5457
5746
  # IoT role grants permission to provision a device.
5458
5747
  # @return [String]
5459
5748
  #
5749
+ # @!attribute [rw] pre_provisioning_hook
5750
+ # Gets information about a pre-provisioned hook.
5751
+ # @return [Types::ProvisioningHook]
5752
+ #
5460
5753
  class DescribeProvisioningTemplateResponse < Struct.new(
5461
5754
  :template_arn,
5462
5755
  :template_name,
@@ -5466,7 +5759,8 @@ module Aws::IoT
5466
5759
  :default_version_id,
5467
5760
  :template_body,
5468
5761
  :enabled,
5469
- :provisioning_role_arn)
5762
+ :provisioning_role_arn,
5763
+ :pre_provisioning_hook)
5470
5764
  include Aws::Structure
5471
5765
  end
5472
5766
 
@@ -5646,8 +5940,17 @@ module Aws::IoT
5646
5940
  # A list of metrics whose data is retained (stored). By default, data
5647
5941
  # is retained for any metric used in the profile's `behaviors`, but
5648
5942
  # it is also retained for any metric specified here.
5943
+ #
5944
+ # **Note:** This API field is deprecated. Please use
5945
+ # DescribeSecurityProfileResponse$additionalMetricsToRetainV2 instead.
5649
5946
  # @return [Array<String>]
5650
5947
  #
5948
+ # @!attribute [rw] additional_metrics_to_retain_v2
5949
+ # A list of metrics whose data is retained (stored). By default, data
5950
+ # is retained for any metric used in the profile's behaviors, but it
5951
+ # is also retained for any metric specified here.
5952
+ # @return [Array<Types::MetricToRetain>]
5953
+ #
5651
5954
  # @!attribute [rw] version
5652
5955
  # The version of the security profile. A new version is generated
5653
5956
  # whenever the security profile is updated.
@@ -5668,6 +5971,7 @@ module Aws::IoT
5668
5971
  :behaviors,
5669
5972
  :alert_targets,
5670
5973
  :additional_metrics_to_retain,
5974
+ :additional_metrics_to_retain_v2,
5671
5975
  :version,
5672
5976
  :creation_date,
5673
5977
  :last_modified_date)
@@ -5871,7 +6175,16 @@ module Aws::IoT
5871
6175
  # The output from the DescribeThing operation.
5872
6176
  #
5873
6177
  # @!attribute [rw] default_client_id
5874
- # The default client ID.
6178
+ # The default MQTT client ID. For a typical device, the thing name is
6179
+ # also used as the default MQTT client ID. Although we don’t require a
6180
+ # mapping between a thing's registry name and its use of MQTT client
6181
+ # IDs, certificates, or shadow state, we recommend that you choose a
6182
+ # thing name and use it as the MQTT client ID for the registry and the
6183
+ # Device Shadow service.
6184
+ #
6185
+ # This lets you better organize your AWS IoT fleet without removing
6186
+ # the flexibility of the underlying device certificate model or
6187
+ # shadows.
5875
6188
  # @return [String]
5876
6189
  #
5877
6190
  # @!attribute [rw] thing_name
@@ -7086,7 +7399,7 @@ module Aws::IoT
7086
7399
  # not specify a confirmation URL AWS IoT uses the endpoint URL as the
7087
7400
  # confirmation URL. If you use substitution templates in the
7088
7401
  # confirmationUrl, you must create and enable topic rule destinations
7089
- # that match each possible value of the substituion template before
7402
+ # that match each possible value of the substitution template before
7090
7403
  # traffic is allowed to your endpoint URL.
7091
7404
  # @return [String]
7092
7405
  #
@@ -8553,6 +8866,44 @@ module Aws::IoT
8553
8866
  include Aws::Structure
8554
8867
  end
8555
8868
 
8869
+ # @note When making an API call, you may pass ListDimensionsRequest
8870
+ # data as a hash:
8871
+ #
8872
+ # {
8873
+ # next_token: "NextToken",
8874
+ # max_results: 1,
8875
+ # }
8876
+ #
8877
+ # @!attribute [rw] next_token
8878
+ # The token for the next set of results.
8879
+ # @return [String]
8880
+ #
8881
+ # @!attribute [rw] max_results
8882
+ # The maximum number of results to retrieve at one time.
8883
+ # @return [Integer]
8884
+ #
8885
+ class ListDimensionsRequest < Struct.new(
8886
+ :next_token,
8887
+ :max_results)
8888
+ include Aws::Structure
8889
+ end
8890
+
8891
+ # @!attribute [rw] dimension_names
8892
+ # A list of the names of the defined dimensions. Use
8893
+ # `DescribeDimension` to get details for a dimension.
8894
+ # @return [Array<String>]
8895
+ #
8896
+ # @!attribute [rw] next_token
8897
+ # A token that can be used to retrieve the next set of results, or
8898
+ # `null` if there are no additional results.
8899
+ # @return [String]
8900
+ #
8901
+ class ListDimensionsResponse < Struct.new(
8902
+ :dimension_names,
8903
+ :next_token)
8904
+ include Aws::Structure
8905
+ end
8906
+
8556
8907
  # @note When making an API call, you may pass ListDomainConfigurationsRequest
8557
8908
  # data as a hash:
8558
8909
  #
@@ -9381,6 +9732,7 @@ module Aws::IoT
9381
9732
  # {
9382
9733
  # next_token: "NextToken",
9383
9734
  # max_results: 1,
9735
+ # dimension_name: "DimensionName",
9384
9736
  # }
9385
9737
  #
9386
9738
  # @!attribute [rw] next_token
@@ -9391,9 +9743,15 @@ module Aws::IoT
9391
9743
  # The maximum number of results to return at one time.
9392
9744
  # @return [Integer]
9393
9745
  #
9746
+ # @!attribute [rw] dimension_name
9747
+ # A filter to limit results to the security profiles that use the
9748
+ # defined dimension.
9749
+ # @return [String]
9750
+ #
9394
9751
  class ListSecurityProfilesRequest < Struct.new(
9395
9752
  :next_token,
9396
- :max_results)
9753
+ :max_results,
9754
+ :dimension_name)
9397
9755
  include Aws::Structure
9398
9756
  end
9399
9757
 
@@ -10274,6 +10632,63 @@ module Aws::IoT
10274
10632
  include Aws::Structure
10275
10633
  end
10276
10634
 
10635
+ # The dimension of a metric.
10636
+ #
10637
+ # @note When making an API call, you may pass MetricDimension
10638
+ # data as a hash:
10639
+ #
10640
+ # {
10641
+ # dimension_name: "DimensionName", # required
10642
+ # operator: "IN", # accepts IN, NOT_IN
10643
+ # }
10644
+ #
10645
+ # @!attribute [rw] dimension_name
10646
+ # A unique identifier for the dimension.
10647
+ # @return [String]
10648
+ #
10649
+ # @!attribute [rw] operator
10650
+ # Defines how the `dimensionValues` of a dimension are interpreted.
10651
+ # For example, for dimension type TOPIC\_FILTER, the `IN` operator, a
10652
+ # message will be counted only if its topic matches one of the topic
10653
+ # filters. With `NOT_IN` operator, a message will be counted only if
10654
+ # it doesn't match any of the topic filters. The operator is
10655
+ # optional: if it's not provided (is `null`), it will be interpreted
10656
+ # as `IN`.
10657
+ # @return [String]
10658
+ #
10659
+ class MetricDimension < Struct.new(
10660
+ :dimension_name,
10661
+ :operator)
10662
+ include Aws::Structure
10663
+ end
10664
+
10665
+ # The metric you want to retain. Dimensions are optional.
10666
+ #
10667
+ # @note When making an API call, you may pass MetricToRetain
10668
+ # data as a hash:
10669
+ #
10670
+ # {
10671
+ # metric: "BehaviorMetric", # required
10672
+ # metric_dimension: {
10673
+ # dimension_name: "DimensionName", # required
10674
+ # operator: "IN", # accepts IN, NOT_IN
10675
+ # },
10676
+ # }
10677
+ #
10678
+ # @!attribute [rw] metric
10679
+ # What is measured by the behavior.
10680
+ # @return [String]
10681
+ #
10682
+ # @!attribute [rw] metric_dimension
10683
+ # The dimension of a metric.
10684
+ # @return [Types::MetricDimension]
10685
+ #
10686
+ class MetricToRetain < Struct.new(
10687
+ :metric,
10688
+ :metric_dimension)
10689
+ include Aws::Structure
10690
+ end
10691
+
10277
10692
  # The value to be compared with the `metric`.
10278
10693
  #
10279
10694
  # @note When making an API call, you may pass MetricValue
@@ -10831,6 +11246,34 @@ module Aws::IoT
10831
11246
  include Aws::Structure
10832
11247
  end
10833
11248
 
11249
+ # Structure that contains `payloadVersion` and `targetArn`.
11250
+ #
11251
+ # @note When making an API call, you may pass ProvisioningHook
11252
+ # data as a hash:
11253
+ #
11254
+ # {
11255
+ # payload_version: "PayloadVersion",
11256
+ # target_arn: "TargetArn", # required
11257
+ # }
11258
+ #
11259
+ # @!attribute [rw] payload_version
11260
+ # The payload that was sent to the target function.
11261
+ #
11262
+ # *Note:* Only Lambda functions are currently supported.
11263
+ # @return [String]
11264
+ #
11265
+ # @!attribute [rw] target_arn
11266
+ # The ARN of the target function.
11267
+ #
11268
+ # *Note:* Only Lambda functions are currently supported.
11269
+ # @return [String]
11270
+ #
11271
+ class ProvisioningHook < Struct.new(
11272
+ :payload_version,
11273
+ :target_arn)
11274
+ include Aws::Structure
11275
+ end
11276
+
10834
11277
  # A summary of information about a fleet provisioning template.
10835
11278
  #
10836
11279
  # @!attribute [rw] template_arn
@@ -11035,6 +11478,12 @@ module Aws::IoT
11035
11478
  # template_body: "TemplateBody",
11036
11479
  # role_arn: "RoleArn",
11037
11480
  # },
11481
+ # tags: [
11482
+ # {
11483
+ # key: "TagKey", # required
11484
+ # value: "TagValue",
11485
+ # },
11486
+ # ],
11038
11487
  # }
11039
11488
  #
11040
11489
  # @!attribute [rw] ca_certificate
@@ -11059,12 +11508,28 @@ module Aws::IoT
11059
11508
  # Information about the registration configuration.
11060
11509
  # @return [Types::RegistrationConfig]
11061
11510
  #
11511
+ # @!attribute [rw] tags
11512
+ # Metadata which can be used to manage the CA certificate.
11513
+ #
11514
+ # <note markdown="1"> For URI Request parameters use format:
11515
+ # ...key1=value1&amp;key2=value2...
11516
+ #
11517
+ # For the CLI command-line parameter use format: &amp;&amp;tags
11518
+ # "key1=value1&amp;key2=value2..."
11519
+ #
11520
+ # For the cli-input-json file use format: "tags":
11521
+ # "key1=value1&amp;key2=value2..."
11522
+ #
11523
+ # </note>
11524
+ # @return [Array<Types::Tag>]
11525
+ #
11062
11526
  class RegisterCACertificateRequest < Struct.new(
11063
11527
  :ca_certificate,
11064
11528
  :verification_certificate,
11065
11529
  :set_as_active,
11066
11530
  :allow_auto_registration,
11067
- :registration_config)
11531
+ :registration_config,
11532
+ :tags)
11068
11533
  include Aws::Structure
11069
11534
  end
11070
11535
 
@@ -11137,6 +11602,43 @@ module Aws::IoT
11137
11602
  include Aws::Structure
11138
11603
  end
11139
11604
 
11605
+ # @note When making an API call, you may pass RegisterCertificateWithoutCARequest
11606
+ # data as a hash:
11607
+ #
11608
+ # {
11609
+ # certificate_pem: "CertificatePem", # required
11610
+ # status: "ACTIVE", # accepts ACTIVE, INACTIVE, REVOKED, PENDING_TRANSFER, REGISTER_INACTIVE, PENDING_ACTIVATION
11611
+ # }
11612
+ #
11613
+ # @!attribute [rw] certificate_pem
11614
+ # The certificate data, in PEM format.
11615
+ # @return [String]
11616
+ #
11617
+ # @!attribute [rw] status
11618
+ # The status of the register certificate request.
11619
+ # @return [String]
11620
+ #
11621
+ class RegisterCertificateWithoutCARequest < Struct.new(
11622
+ :certificate_pem,
11623
+ :status)
11624
+ include Aws::Structure
11625
+ end
11626
+
11627
+ # @!attribute [rw] certificate_arn
11628
+ # The Amazon Resource Name (ARN) of the registered certificate.
11629
+ # @return [String]
11630
+ #
11631
+ # @!attribute [rw] certificate_id
11632
+ # The ID of the registered certificate. (The last part of the
11633
+ # certificate ARN contains the certificate ID.
11634
+ # @return [String]
11635
+ #
11636
+ class RegisterCertificateWithoutCAResponse < Struct.new(
11637
+ :certificate_arn,
11638
+ :certificate_id)
11639
+ include Aws::Structure
11640
+ end
11641
+
11140
11642
  # @note When making an API call, you may pass RegisterThingRequest
11141
11643
  # data as a hash:
11142
11644
  #
@@ -11157,12 +11659,12 @@ module Aws::IoT
11157
11659
  # @return [String]
11158
11660
  #
11159
11661
  # @!attribute [rw] parameters
11160
- # The parameters for provisioning a thing. See [Programmatic
11161
- # Provisioning][1] for more information.
11662
+ # The parameters for provisioning a thing. See [Provisioning
11663
+ # Templates][1] for more information.
11162
11664
  #
11163
11665
  #
11164
11666
  #
11165
- # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/programmatic-provisioning.html
11667
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/provision-template.html
11166
11668
  # @return [Hash<String,String>]
11167
11669
  #
11168
11670
  class RegisterThingRequest < Struct.new(
@@ -11172,7 +11674,7 @@ module Aws::IoT
11172
11674
  end
11173
11675
 
11174
11676
  # @!attribute [rw] certificate_pem
11175
- # .
11677
+ # The certificate data, in PEM format.
11176
11678
  # @return [String]
11177
11679
  #
11178
11680
  # @!attribute [rw] resource_arns
@@ -12851,7 +13353,7 @@ module Aws::IoT
12851
13353
  # data as a hash:
12852
13354
  #
12853
13355
  # {
12854
- # key: "TagKey",
13356
+ # key: "TagKey", # required
12855
13357
  # value: "TagValue",
12856
13358
  # }
12857
13359
  #
@@ -12876,7 +13378,7 @@ module Aws::IoT
12876
13378
  # resource_arn: "ResourceArn", # required
12877
13379
  # tags: [ # required
12878
13380
  # {
12879
- # key: "TagKey",
13381
+ # key: "TagKey", # required
12880
13382
  # value: "TagValue",
12881
13383
  # },
12882
13384
  # ],
@@ -12997,7 +13499,7 @@ module Aws::IoT
12997
13499
  # auth_infos: [ # required
12998
13500
  # {
12999
13501
  # action_type: "PUBLISH", # accepts PUBLISH, SUBSCRIBE, RECEIVE, CONNECT
13000
- # resources: ["Resource"],
13502
+ # resources: ["Resource"], # required
13001
13503
  # },
13002
13504
  # ],
13003
13505
  # client_id: "ClientId",
@@ -13085,7 +13587,7 @@ module Aws::IoT
13085
13587
  #
13086
13588
  # @!attribute [rw] token_signature
13087
13589
  # The signature made with the token and your custom authentication
13088
- # service's private key.
13590
+ # service's private key. This value must be Base-64-encoded.
13089
13591
  # @return [String]
13090
13592
  #
13091
13593
  # @!attribute [rw] http_context
@@ -14513,6 +15015,70 @@ module Aws::IoT
14513
15015
  include Aws::Structure
14514
15016
  end
14515
15017
 
15018
+ # @note When making an API call, you may pass UpdateDimensionRequest
15019
+ # data as a hash:
15020
+ #
15021
+ # {
15022
+ # name: "DimensionName", # required
15023
+ # string_values: ["DimensionStringValue"], # required
15024
+ # }
15025
+ #
15026
+ # @!attribute [rw] name
15027
+ # A unique identifier for the dimension. Choose something that
15028
+ # describes the type and value to make it easy to remember what it
15029
+ # does.
15030
+ # @return [String]
15031
+ #
15032
+ # @!attribute [rw] string_values
15033
+ # Specifies the value or list of values for the dimension. For
15034
+ # `TOPIC_FILTER` dimensions, this is a pattern used to match the MQTT
15035
+ # topic (for example, "admin/#").
15036
+ # @return [Array<String>]
15037
+ #
15038
+ class UpdateDimensionRequest < Struct.new(
15039
+ :name,
15040
+ :string_values)
15041
+ include Aws::Structure
15042
+ end
15043
+
15044
+ # @!attribute [rw] name
15045
+ # A unique identifier for the dimension.
15046
+ # @return [String]
15047
+ #
15048
+ # @!attribute [rw] arn
15049
+ # The ARN (Amazon resource name) of the created dimension.
15050
+ # @return [String]
15051
+ #
15052
+ # @!attribute [rw] type
15053
+ # The type of the dimension.
15054
+ # @return [String]
15055
+ #
15056
+ # @!attribute [rw] string_values
15057
+ # The value or list of values used to scope the dimension. For
15058
+ # example, for topic filters, this is the pattern used to match the
15059
+ # MQTT topic name.
15060
+ # @return [Array<String>]
15061
+ #
15062
+ # @!attribute [rw] creation_date
15063
+ # The date and time, in milliseconds since epoch, when the dimension
15064
+ # was initially created.
15065
+ # @return [Time]
15066
+ #
15067
+ # @!attribute [rw] last_modified_date
15068
+ # The date and time, in milliseconds since epoch, when the dimension
15069
+ # was most recently updated.
15070
+ # @return [Time]
15071
+ #
15072
+ class UpdateDimensionResponse < Struct.new(
15073
+ :name,
15074
+ :arn,
15075
+ :type,
15076
+ :string_values,
15077
+ :creation_date,
15078
+ :last_modified_date)
15079
+ include Aws::Structure
15080
+ end
15081
+
14516
15082
  # @note When making an API call, you may pass UpdateDomainConfigurationRequest
14517
15083
  # data as a hash:
14518
15084
  #
@@ -14859,6 +15425,11 @@ module Aws::IoT
14859
15425
  # enabled: false,
14860
15426
  # default_version_id: 1,
14861
15427
  # provisioning_role_arn: "RoleArn",
15428
+ # pre_provisioning_hook: {
15429
+ # payload_version: "PayloadVersion",
15430
+ # target_arn: "TargetArn", # required
15431
+ # },
15432
+ # remove_pre_provisioning_hook: false,
14862
15433
  # }
14863
15434
  #
14864
15435
  # @!attribute [rw] template_name
@@ -14882,12 +15453,22 @@ module Aws::IoT
14882
15453
  # IoT role grants permission to provision a device.
14883
15454
  # @return [String]
14884
15455
  #
15456
+ # @!attribute [rw] pre_provisioning_hook
15457
+ # Updates the pre-provisioning hook template.
15458
+ # @return [Types::ProvisioningHook]
15459
+ #
15460
+ # @!attribute [rw] remove_pre_provisioning_hook
15461
+ # Removes pre-provisioning hook template.
15462
+ # @return [Boolean]
15463
+ #
14885
15464
  class UpdateProvisioningTemplateRequest < Struct.new(
14886
15465
  :template_name,
14887
15466
  :description,
14888
15467
  :enabled,
14889
15468
  :default_version_id,
14890
- :provisioning_role_arn)
15469
+ :provisioning_role_arn,
15470
+ :pre_provisioning_hook,
15471
+ :remove_pre_provisioning_hook)
14891
15472
  include Aws::Structure
14892
15473
  end
14893
15474
 
@@ -15008,6 +15589,10 @@ module Aws::IoT
15008
15589
  # {
15009
15590
  # name: "BehaviorName", # required
15010
15591
  # metric: "BehaviorMetric",
15592
+ # metric_dimension: {
15593
+ # dimension_name: "DimensionName", # required
15594
+ # operator: "IN", # accepts IN, NOT_IN
15595
+ # },
15011
15596
  # criteria: {
15012
15597
  # 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
15013
15598
  # value: {
@@ -15031,6 +15616,15 @@ module Aws::IoT
15031
15616
  # },
15032
15617
  # },
15033
15618
  # additional_metrics_to_retain: ["BehaviorMetric"],
15619
+ # additional_metrics_to_retain_v2: [
15620
+ # {
15621
+ # metric: "BehaviorMetric", # required
15622
+ # metric_dimension: {
15623
+ # dimension_name: "DimensionName", # required
15624
+ # operator: "IN", # accepts IN, NOT_IN
15625
+ # },
15626
+ # },
15627
+ # ],
15034
15628
  # delete_behaviors: false,
15035
15629
  # delete_alert_targets: false,
15036
15630
  # delete_additional_metrics_to_retain: false,
@@ -15058,8 +15652,17 @@ module Aws::IoT
15058
15652
  # A list of metrics whose data is retained (stored). By default, data
15059
15653
  # is retained for any metric used in the profile's `behaviors`, but
15060
15654
  # it is also retained for any metric specified here.
15655
+ #
15656
+ # **Note:** This API field is deprecated. Please use
15657
+ # UpdateSecurityProfileRequest$additionalMetricsToRetainV2 instead.
15061
15658
  # @return [Array<String>]
15062
15659
  #
15660
+ # @!attribute [rw] additional_metrics_to_retain_v2
15661
+ # A list of metrics whose data is retained (stored). By default, data
15662
+ # is retained for any metric used in the profile's behaviors, but it
15663
+ # is also retained for any metric specified here.
15664
+ # @return [Array<Types::MetricToRetain>]
15665
+ #
15063
15666
  # @!attribute [rw] delete_behaviors
15064
15667
  # If true, delete all `behaviors` defined for this security profile.
15065
15668
  # If any `behaviors` are defined in the current invocation, an
@@ -15091,6 +15694,7 @@ module Aws::IoT
15091
15694
  :behaviors,
15092
15695
  :alert_targets,
15093
15696
  :additional_metrics_to_retain,
15697
+ :additional_metrics_to_retain_v2,
15094
15698
  :delete_behaviors,
15095
15699
  :delete_alert_targets,
15096
15700
  :delete_additional_metrics_to_retain,
@@ -15123,8 +15727,17 @@ module Aws::IoT
15123
15727
  # A list of metrics whose data is retained (stored). By default, data
15124
15728
  # is retained for any metric used in the security profile's
15125
15729
  # `behaviors`, but it is also retained for any metric specified here.
15730
+ #
15731
+ # **Note:** This API field is deprecated. Please use
15732
+ # UpdateSecurityProfileResponse$additionalMetricsToRetainV2 instead.
15126
15733
  # @return [Array<String>]
15127
15734
  #
15735
+ # @!attribute [rw] additional_metrics_to_retain_v2
15736
+ # A list of metrics whose data is retained (stored). By default, data
15737
+ # is retained for any metric used in the profile's behaviors, but it
15738
+ # is also retained for any metric specified here.
15739
+ # @return [Array<Types::MetricToRetain>]
15740
+ #
15128
15741
  # @!attribute [rw] version
15129
15742
  # The updated version of the security profile.
15130
15743
  # @return [Integer]
@@ -15144,6 +15757,7 @@ module Aws::IoT
15144
15757
  :behaviors,
15145
15758
  :alert_targets,
15146
15759
  :additional_metrics_to_retain,
15760
+ :additional_metrics_to_retain_v2,
15147
15761
  :version,
15148
15762
  :creation_date,
15149
15763
  :last_modified_date)
@@ -15323,6 +15937,10 @@ module Aws::IoT
15323
15937
  #
15324
15938
  # @!attribute [rw] thing_name
15325
15939
  # The name of the thing to update.
15940
+ #
15941
+ # You can't change a thing's name. To change a thing's name, you
15942
+ # must create a new thing, give it the new name, and then delete the
15943
+ # old thing.
15326
15944
  # @return [String]
15327
15945
  #
15328
15946
  # @!attribute [rw] thing_type_name
@@ -15425,6 +16043,10 @@ module Aws::IoT
15425
16043
  # {
15426
16044
  # name: "BehaviorName", # required
15427
16045
  # metric: "BehaviorMetric",
16046
+ # metric_dimension: {
16047
+ # dimension_name: "DimensionName", # required
16048
+ # operator: "IN", # accepts IN, NOT_IN
16049
+ # },
15428
16050
  # criteria: {
15429
16051
  # 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
15430
16052
  # value: {