aws-sdk-iot 1.40.0 → 1.41.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.
@@ -192,6 +192,32 @@ module Aws::IoT
192
192
  # message_id: "MessageId",
193
193
  # role_arn: "AwsArn", # required
194
194
  # },
195
+ # iot_site_wise: {
196
+ # put_asset_property_value_entries: [ # required
197
+ # {
198
+ # entry_id: "AssetPropertyEntryId",
199
+ # asset_id: "AssetId",
200
+ # property_id: "AssetPropertyId",
201
+ # property_alias: "AssetPropertyAlias",
202
+ # property_values: [ # required
203
+ # {
204
+ # value: { # required
205
+ # string_value: "AssetPropertyStringValue",
206
+ # integer_value: "AssetPropertyIntegerValue",
207
+ # double_value: "AssetPropertyDoubleValue",
208
+ # boolean_value: "AssetPropertyBooleanValue",
209
+ # },
210
+ # timestamp: { # required
211
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
212
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
213
+ # },
214
+ # quality: "AssetPropertyQuality",
215
+ # },
216
+ # ],
217
+ # },
218
+ # ],
219
+ # role_arn: "AwsArn", # required
220
+ # },
195
221
  # step_functions: {
196
222
  # execution_name_prefix: "ExecutionNamePrefix",
197
223
  # state_machine_name: "StateMachineName", # required
@@ -278,6 +304,11 @@ module Aws::IoT
278
304
  # Sends an input to an AWS IoT Events detector.
279
305
  # @return [Types::IotEventsAction]
280
306
  #
307
+ # @!attribute [rw] iot_site_wise
308
+ # Sends data from the MQTT message that triggered the rule to AWS IoT
309
+ # SiteWise asset properties.
310
+ # @return [Types::IotSiteWiseAction]
311
+ #
281
312
  # @!attribute [rw] step_functions
282
313
  # Starts execution of a Step Functions state machine.
283
314
  # @return [Types::StepFunctionsAction]
@@ -302,6 +333,7 @@ module Aws::IoT
302
333
  :salesforce,
303
334
  :iot_analytics,
304
335
  :iot_events,
336
+ :iot_site_wise,
305
337
  :step_functions,
306
338
  :http)
307
339
  include Aws::Structure
@@ -497,6 +529,112 @@ module Aws::IoT
497
529
  include Aws::Structure
498
530
  end
499
531
 
532
+ # An asset property timestamp entry containing the following
533
+ # information.
534
+ #
535
+ # @note When making an API call, you may pass AssetPropertyTimestamp
536
+ # data as a hash:
537
+ #
538
+ # {
539
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
540
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
541
+ # }
542
+ #
543
+ # @!attribute [rw] time_in_seconds
544
+ # A string that contains the time in seconds since epoch. Accepts
545
+ # substitution templates.
546
+ # @return [String]
547
+ #
548
+ # @!attribute [rw] offset_in_nanos
549
+ # Optional. A string that contains the nanosecond time offset. Accepts
550
+ # substitution templates.
551
+ # @return [String]
552
+ #
553
+ class AssetPropertyTimestamp < Struct.new(
554
+ :time_in_seconds,
555
+ :offset_in_nanos)
556
+ include Aws::Structure
557
+ end
558
+
559
+ # An asset property value entry containing the following information.
560
+ #
561
+ # @note When making an API call, you may pass AssetPropertyValue
562
+ # data as a hash:
563
+ #
564
+ # {
565
+ # value: { # required
566
+ # string_value: "AssetPropertyStringValue",
567
+ # integer_value: "AssetPropertyIntegerValue",
568
+ # double_value: "AssetPropertyDoubleValue",
569
+ # boolean_value: "AssetPropertyBooleanValue",
570
+ # },
571
+ # timestamp: { # required
572
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
573
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
574
+ # },
575
+ # quality: "AssetPropertyQuality",
576
+ # }
577
+ #
578
+ # @!attribute [rw] value
579
+ # The value of the asset property.
580
+ # @return [Types::AssetPropertyVariant]
581
+ #
582
+ # @!attribute [rw] timestamp
583
+ # The asset property value timestamp.
584
+ # @return [Types::AssetPropertyTimestamp]
585
+ #
586
+ # @!attribute [rw] quality
587
+ # Optional. A string that describes the quality of the value. Accepts
588
+ # substitution templates. Must be `GOOD`, `BAD`, or `UNCERTAIN`.
589
+ # @return [String]
590
+ #
591
+ class AssetPropertyValue < Struct.new(
592
+ :value,
593
+ :timestamp,
594
+ :quality)
595
+ include Aws::Structure
596
+ end
597
+
598
+ # Contains an asset property value (of a single type).
599
+ #
600
+ # @note When making an API call, you may pass AssetPropertyVariant
601
+ # data as a hash:
602
+ #
603
+ # {
604
+ # string_value: "AssetPropertyStringValue",
605
+ # integer_value: "AssetPropertyIntegerValue",
606
+ # double_value: "AssetPropertyDoubleValue",
607
+ # boolean_value: "AssetPropertyBooleanValue",
608
+ # }
609
+ #
610
+ # @!attribute [rw] string_value
611
+ # Optional. The string value of the value entry. Accepts substitution
612
+ # templates.
613
+ # @return [String]
614
+ #
615
+ # @!attribute [rw] integer_value
616
+ # Optional. A string that contains the integer value of the value
617
+ # entry. Accepts substitution templates.
618
+ # @return [String]
619
+ #
620
+ # @!attribute [rw] double_value
621
+ # Optional. A string that contains the double value of the value
622
+ # entry. Accepts substitution templates.
623
+ # @return [String]
624
+ #
625
+ # @!attribute [rw] boolean_value
626
+ # Optional. A string that contains the boolean value (`true` or
627
+ # `false`) of the value entry. Accepts substitution templates.
628
+ # @return [String]
629
+ #
630
+ class AssetPropertyVariant < Struct.new(
631
+ :string_value,
632
+ :integer_value,
633
+ :double_value,
634
+ :boolean_value)
635
+ include Aws::Structure
636
+ end
637
+
500
638
  # @note When making an API call, you may pass AssociateTargetsWithJobRequest
501
639
  # data as a hash:
502
640
  #
@@ -1039,6 +1177,31 @@ module Aws::IoT
1039
1177
  include Aws::Structure
1040
1178
  end
1041
1179
 
1180
+ # An object that specifies the authorization service for a domain.
1181
+ #
1182
+ # @note When making an API call, you may pass AuthorizerConfig
1183
+ # data as a hash:
1184
+ #
1185
+ # {
1186
+ # default_authorizer_name: "AuthorizerName",
1187
+ # allow_authorizer_override: false,
1188
+ # }
1189
+ #
1190
+ # @!attribute [rw] default_authorizer_name
1191
+ # The name of the authorization service for a domain configuration.
1192
+ # @return [String]
1193
+ #
1194
+ # @!attribute [rw] allow_authorizer_override
1195
+ # A Boolean that specifies whether the domain configuration's
1196
+ # authorization service can be overridden.
1197
+ # @return [Boolean]
1198
+ #
1199
+ class AuthorizerConfig < Struct.new(
1200
+ :default_authorizer_name,
1201
+ :allow_authorizer_override)
1202
+ include Aws::Structure
1203
+ end
1204
+
1042
1205
  # The authorizer description.
1043
1206
  #
1044
1207
  # @!attribute [rw] authorizer_name
@@ -1074,6 +1237,11 @@ module Aws::IoT
1074
1237
  # The UNIX timestamp of when the authorizer was last updated.
1075
1238
  # @return [Time]
1076
1239
  #
1240
+ # @!attribute [rw] signing_disabled
1241
+ # Specifies whether AWS IoT validates the token signature in an
1242
+ # authorization request.
1243
+ # @return [Boolean]
1244
+ #
1077
1245
  class AuthorizerDescription < Struct.new(
1078
1246
  :authorizer_name,
1079
1247
  :authorizer_arn,
@@ -1082,7 +1250,8 @@ module Aws::IoT
1082
1250
  :token_signing_public_keys,
1083
1251
  :status,
1084
1252
  :creation_date,
1085
- :last_modified_date)
1253
+ :last_modified_date,
1254
+ :signing_disabled)
1086
1255
  include Aws::Structure
1087
1256
  end
1088
1257
 
@@ -1934,11 +2103,12 @@ module Aws::IoT
1934
2103
  # {
1935
2104
  # authorizer_name: "AuthorizerName", # required
1936
2105
  # authorizer_function_arn: "AuthorizerFunctionArn", # required
1937
- # token_key_name: "TokenKeyName", # required
1938
- # token_signing_public_keys: { # required
2106
+ # token_key_name: "TokenKeyName",
2107
+ # token_signing_public_keys: {
1939
2108
  # "KeyName" => "KeyValue",
1940
2109
  # },
1941
2110
  # status: "ACTIVE", # accepts ACTIVE, INACTIVE
2111
+ # signing_disabled: false,
1942
2112
  # }
1943
2113
  #
1944
2114
  # @!attribute [rw] authorizer_name
@@ -1963,12 +2133,18 @@ module Aws::IoT
1963
2133
  # The status of the create authorizer request.
1964
2134
  # @return [String]
1965
2135
  #
2136
+ # @!attribute [rw] signing_disabled
2137
+ # Specifies whether AWS IoT validates the token signature in an
2138
+ # authorization request.
2139
+ # @return [Boolean]
2140
+ #
1966
2141
  class CreateAuthorizerRequest < Struct.new(
1967
2142
  :authorizer_name,
1968
2143
  :authorizer_function_arn,
1969
2144
  :token_key_name,
1970
2145
  :token_signing_public_keys,
1971
- :status)
2146
+ :status,
2147
+ :signing_disabled)
1972
2148
  include Aws::Structure
1973
2149
  end
1974
2150
 
@@ -2087,6 +2263,75 @@ module Aws::IoT
2087
2263
  include Aws::Structure
2088
2264
  end
2089
2265
 
2266
+ # @note When making an API call, you may pass CreateDomainConfigurationRequest
2267
+ # data as a hash:
2268
+ #
2269
+ # {
2270
+ # domain_configuration_name: "DomainConfigurationName", # required
2271
+ # domain_name: "DomainName",
2272
+ # server_certificate_arns: ["AcmCertificateArn"],
2273
+ # validation_certificate_arn: "AcmCertificateArn",
2274
+ # authorizer_config: {
2275
+ # default_authorizer_name: "AuthorizerName",
2276
+ # allow_authorizer_override: false,
2277
+ # },
2278
+ # service_type: "DATA", # accepts DATA, CREDENTIAL_PROVIDER, JOBS
2279
+ # }
2280
+ #
2281
+ # @!attribute [rw] domain_configuration_name
2282
+ # The name of the domain configuration. This value must be unique to a
2283
+ # region.
2284
+ # @return [String]
2285
+ #
2286
+ # @!attribute [rw] domain_name
2287
+ # The name of the domain.
2288
+ # @return [String]
2289
+ #
2290
+ # @!attribute [rw] server_certificate_arns
2291
+ # The ARNs of the certificates that AWS IoT passes to the device
2292
+ # during the TLS handshake. Currently you can specify only one
2293
+ # certificate ARN. This value is not required for AWS-managed domains.
2294
+ # @return [Array<String>]
2295
+ #
2296
+ # @!attribute [rw] validation_certificate_arn
2297
+ # The certificate used to validate the server certificate and prove
2298
+ # domain name ownership. This certificate must be signed by a public
2299
+ # certificate authority. This value is not required for AWS-managed
2300
+ # domains.
2301
+ # @return [String]
2302
+ #
2303
+ # @!attribute [rw] authorizer_config
2304
+ # An object that specifies the authorization service for a domain.
2305
+ # @return [Types::AuthorizerConfig]
2306
+ #
2307
+ # @!attribute [rw] service_type
2308
+ # The type of service delivered by the endpoint.
2309
+ # @return [String]
2310
+ #
2311
+ class CreateDomainConfigurationRequest < Struct.new(
2312
+ :domain_configuration_name,
2313
+ :domain_name,
2314
+ :server_certificate_arns,
2315
+ :validation_certificate_arn,
2316
+ :authorizer_config,
2317
+ :service_type)
2318
+ include Aws::Structure
2319
+ end
2320
+
2321
+ # @!attribute [rw] domain_configuration_name
2322
+ # The name of the domain configuration.
2323
+ # @return [String]
2324
+ #
2325
+ # @!attribute [rw] domain_configuration_arn
2326
+ # The ARN of the domain configuration.
2327
+ # @return [String]
2328
+ #
2329
+ class CreateDomainConfigurationResponse < Struct.new(
2330
+ :domain_configuration_name,
2331
+ :domain_configuration_arn)
2332
+ include Aws::Structure
2333
+ end
2334
+
2090
2335
  # @note When making an API call, you may pass CreateDynamicThingGroupRequest
2091
2336
  # data as a hash:
2092
2337
  #
@@ -2731,6 +2976,182 @@ module Aws::IoT
2731
2976
  include Aws::Structure
2732
2977
  end
2733
2978
 
2979
+ # @note When making an API call, you may pass CreateProvisioningClaimRequest
2980
+ # data as a hash:
2981
+ #
2982
+ # {
2983
+ # template_name: "TemplateName", # required
2984
+ # }
2985
+ #
2986
+ # @!attribute [rw] template_name
2987
+ # The name of the provisioning template to use.
2988
+ # @return [String]
2989
+ #
2990
+ class CreateProvisioningClaimRequest < Struct.new(
2991
+ :template_name)
2992
+ include Aws::Structure
2993
+ end
2994
+
2995
+ # @!attribute [rw] certificate_id
2996
+ # The ID of the certificate.
2997
+ # @return [String]
2998
+ #
2999
+ # @!attribute [rw] certificate_pem
3000
+ # The provisioning claim certificate.
3001
+ # @return [String]
3002
+ #
3003
+ # @!attribute [rw] key_pair
3004
+ # The provisioning claim key pair.
3005
+ # @return [Types::KeyPair]
3006
+ #
3007
+ # @!attribute [rw] expiration
3008
+ # The provisioning claim expiration time.
3009
+ # @return [Time]
3010
+ #
3011
+ class CreateProvisioningClaimResponse < Struct.new(
3012
+ :certificate_id,
3013
+ :certificate_pem,
3014
+ :key_pair,
3015
+ :expiration)
3016
+ include Aws::Structure
3017
+ end
3018
+
3019
+ # @note When making an API call, you may pass CreateProvisioningTemplateRequest
3020
+ # data as a hash:
3021
+ #
3022
+ # {
3023
+ # template_name: "TemplateName", # required
3024
+ # description: "TemplateDescription",
3025
+ # template_body: "TemplateBody", # required
3026
+ # enabled: false,
3027
+ # provisioning_role_arn: "RoleArn", # required
3028
+ # tags: [
3029
+ # {
3030
+ # key: "TagKey",
3031
+ # value: "TagValue",
3032
+ # },
3033
+ # ],
3034
+ # }
3035
+ #
3036
+ # @!attribute [rw] template_name
3037
+ # The name of the fleet provisioning template.
3038
+ # @return [String]
3039
+ #
3040
+ # @!attribute [rw] description
3041
+ # The description of the fleet provisioning template.
3042
+ # @return [String]
3043
+ #
3044
+ # @!attribute [rw] template_body
3045
+ # The JSON formatted contents of the fleet provisioning template.
3046
+ # @return [String]
3047
+ #
3048
+ # @!attribute [rw] enabled
3049
+ # True to enable the fleet provisioning template, otherwise false.
3050
+ # @return [Boolean]
3051
+ #
3052
+ # @!attribute [rw] provisioning_role_arn
3053
+ # The role ARN for the role associated with the fleet provisioning
3054
+ # template. This IoT role grants permission to provision a device.
3055
+ # @return [String]
3056
+ #
3057
+ # @!attribute [rw] tags
3058
+ # Metadata which can be used to manage the fleet provisioning
3059
+ # template.
3060
+ #
3061
+ # <note markdown="1"> For URI Request parameters use format:
3062
+ # ...key1=value1&amp;key2=value2...
3063
+ #
3064
+ # For the CLI command-line parameter use format: &amp;&amp;tags
3065
+ # "key1=value1&amp;key2=value2..."
3066
+ #
3067
+ # For the cli-input-json file use format: "tags":
3068
+ # "key1=value1&amp;key2=value2..."
3069
+ #
3070
+ # </note>
3071
+ # @return [Array<Types::Tag>]
3072
+ #
3073
+ class CreateProvisioningTemplateRequest < Struct.new(
3074
+ :template_name,
3075
+ :description,
3076
+ :template_body,
3077
+ :enabled,
3078
+ :provisioning_role_arn,
3079
+ :tags)
3080
+ include Aws::Structure
3081
+ end
3082
+
3083
+ # @!attribute [rw] template_arn
3084
+ # The ARN that identifies the provisioning template.
3085
+ # @return [String]
3086
+ #
3087
+ # @!attribute [rw] template_name
3088
+ # The name of the fleet provisioning template.
3089
+ # @return [String]
3090
+ #
3091
+ # @!attribute [rw] default_version_id
3092
+ # The default version of the fleet provisioning template.
3093
+ # @return [Integer]
3094
+ #
3095
+ class CreateProvisioningTemplateResponse < Struct.new(
3096
+ :template_arn,
3097
+ :template_name,
3098
+ :default_version_id)
3099
+ include Aws::Structure
3100
+ end
3101
+
3102
+ # @note When making an API call, you may pass CreateProvisioningTemplateVersionRequest
3103
+ # data as a hash:
3104
+ #
3105
+ # {
3106
+ # template_name: "TemplateName", # required
3107
+ # template_body: "TemplateBody", # required
3108
+ # set_as_default: false,
3109
+ # }
3110
+ #
3111
+ # @!attribute [rw] template_name
3112
+ # The name of the fleet provisioning template.
3113
+ # @return [String]
3114
+ #
3115
+ # @!attribute [rw] template_body
3116
+ # The JSON formatted contents of the fleet provisioning template.
3117
+ # @return [String]
3118
+ #
3119
+ # @!attribute [rw] set_as_default
3120
+ # Sets a fleet provision template version as the default version.
3121
+ # @return [Boolean]
3122
+ #
3123
+ class CreateProvisioningTemplateVersionRequest < Struct.new(
3124
+ :template_name,
3125
+ :template_body,
3126
+ :set_as_default)
3127
+ include Aws::Structure
3128
+ end
3129
+
3130
+ # @!attribute [rw] template_arn
3131
+ # The ARN that identifies the provisioning template.
3132
+ # @return [String]
3133
+ #
3134
+ # @!attribute [rw] template_name
3135
+ # The name of the fleet provisioning template.
3136
+ # @return [String]
3137
+ #
3138
+ # @!attribute [rw] version_id
3139
+ # The version of the fleet provisioning template.
3140
+ # @return [Integer]
3141
+ #
3142
+ # @!attribute [rw] is_default_version
3143
+ # True if the fleet provisioning template version is the default
3144
+ # version, otherwise false.
3145
+ # @return [Boolean]
3146
+ #
3147
+ class CreateProvisioningTemplateVersionResponse < Struct.new(
3148
+ :template_arn,
3149
+ :template_name,
3150
+ :version_id,
3151
+ :is_default_version)
3152
+ include Aws::Structure
3153
+ end
3154
+
2734
3155
  # @note When making an API call, you may pass CreateRoleAliasRequest
2735
3156
  # data as a hash:
2736
3157
  #
@@ -3341,6 +3762,32 @@ module Aws::IoT
3341
3762
  # message_id: "MessageId",
3342
3763
  # role_arn: "AwsArn", # required
3343
3764
  # },
3765
+ # iot_site_wise: {
3766
+ # put_asset_property_value_entries: [ # required
3767
+ # {
3768
+ # entry_id: "AssetPropertyEntryId",
3769
+ # asset_id: "AssetId",
3770
+ # property_id: "AssetPropertyId",
3771
+ # property_alias: "AssetPropertyAlias",
3772
+ # property_values: [ # required
3773
+ # {
3774
+ # value: { # required
3775
+ # string_value: "AssetPropertyStringValue",
3776
+ # integer_value: "AssetPropertyIntegerValue",
3777
+ # double_value: "AssetPropertyDoubleValue",
3778
+ # boolean_value: "AssetPropertyBooleanValue",
3779
+ # },
3780
+ # timestamp: { # required
3781
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
3782
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
3783
+ # },
3784
+ # quality: "AssetPropertyQuality",
3785
+ # },
3786
+ # ],
3787
+ # },
3788
+ # ],
3789
+ # role_arn: "AwsArn", # required
3790
+ # },
3344
3791
  # step_functions: {
3345
3792
  # execution_name_prefix: "ExecutionNamePrefix",
3346
3793
  # state_machine_name: "StateMachineName", # required
@@ -3455,6 +3902,32 @@ module Aws::IoT
3455
3902
  # message_id: "MessageId",
3456
3903
  # role_arn: "AwsArn", # required
3457
3904
  # },
3905
+ # iot_site_wise: {
3906
+ # put_asset_property_value_entries: [ # required
3907
+ # {
3908
+ # entry_id: "AssetPropertyEntryId",
3909
+ # asset_id: "AssetId",
3910
+ # property_id: "AssetPropertyId",
3911
+ # property_alias: "AssetPropertyAlias",
3912
+ # property_values: [ # required
3913
+ # {
3914
+ # value: { # required
3915
+ # string_value: "AssetPropertyStringValue",
3916
+ # integer_value: "AssetPropertyIntegerValue",
3917
+ # double_value: "AssetPropertyDoubleValue",
3918
+ # boolean_value: "AssetPropertyBooleanValue",
3919
+ # },
3920
+ # timestamp: { # required
3921
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
3922
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
3923
+ # },
3924
+ # quality: "AssetPropertyQuality",
3925
+ # },
3926
+ # ],
3927
+ # },
3928
+ # ],
3929
+ # role_arn: "AwsArn", # required
3930
+ # },
3458
3931
  # step_functions: {
3459
3932
  # execution_name_prefix: "ExecutionNamePrefix",
3460
3933
  # state_machine_name: "StateMachineName", # required
@@ -3677,6 +4150,24 @@ module Aws::IoT
3677
4150
  include Aws::Structure
3678
4151
  end
3679
4152
 
4153
+ # @note When making an API call, you may pass DeleteDomainConfigurationRequest
4154
+ # data as a hash:
4155
+ #
4156
+ # {
4157
+ # domain_configuration_name: "DomainConfigurationName", # required
4158
+ # }
4159
+ #
4160
+ # @!attribute [rw] domain_configuration_name
4161
+ # The name of the domain configuration to be deleted.
4162
+ # @return [String]
4163
+ #
4164
+ class DeleteDomainConfigurationRequest < Struct.new(
4165
+ :domain_configuration_name)
4166
+ include Aws::Structure
4167
+ end
4168
+
4169
+ class DeleteDomainConfigurationResponse < Aws::EmptyStructure; end
4170
+
3680
4171
  # @note When making an API call, you may pass DeleteDynamicThingGroupRequest
3681
4172
  # data as a hash:
3682
4173
  #
@@ -3881,6 +4372,48 @@ module Aws::IoT
3881
4372
  include Aws::Structure
3882
4373
  end
3883
4374
 
4375
+ # @note When making an API call, you may pass DeleteProvisioningTemplateRequest
4376
+ # data as a hash:
4377
+ #
4378
+ # {
4379
+ # template_name: "TemplateName", # required
4380
+ # }
4381
+ #
4382
+ # @!attribute [rw] template_name
4383
+ # The name of the fleet provision template to delete.
4384
+ # @return [String]
4385
+ #
4386
+ class DeleteProvisioningTemplateRequest < Struct.new(
4387
+ :template_name)
4388
+ include Aws::Structure
4389
+ end
4390
+
4391
+ class DeleteProvisioningTemplateResponse < Aws::EmptyStructure; end
4392
+
4393
+ # @note When making an API call, you may pass DeleteProvisioningTemplateVersionRequest
4394
+ # data as a hash:
4395
+ #
4396
+ # {
4397
+ # template_name: "TemplateName", # required
4398
+ # version_id: 1, # required
4399
+ # }
4400
+ #
4401
+ # @!attribute [rw] template_name
4402
+ # The name of the fleet provisioning template version to delete.
4403
+ # @return [String]
4404
+ #
4405
+ # @!attribute [rw] version_id
4406
+ # The fleet provisioning template version ID to delete.
4407
+ # @return [Integer]
4408
+ #
4409
+ class DeleteProvisioningTemplateVersionRequest < Struct.new(
4410
+ :template_name,
4411
+ :version_id)
4412
+ include Aws::Structure
4413
+ end
4414
+
4415
+ class DeleteProvisioningTemplateVersionResponse < Aws::EmptyStructure; end
4416
+
3884
4417
  # The input for the DeleteRegistrationCode operation.
3885
4418
  #
3886
4419
  # @api private
@@ -4475,6 +5008,68 @@ module Aws::IoT
4475
5008
  include Aws::Structure
4476
5009
  end
4477
5010
 
5011
+ # @note When making an API call, you may pass DescribeDomainConfigurationRequest
5012
+ # data as a hash:
5013
+ #
5014
+ # {
5015
+ # domain_configuration_name: "ReservedDomainConfigurationName", # required
5016
+ # }
5017
+ #
5018
+ # @!attribute [rw] domain_configuration_name
5019
+ # The name of the domain configuration.
5020
+ # @return [String]
5021
+ #
5022
+ class DescribeDomainConfigurationRequest < Struct.new(
5023
+ :domain_configuration_name)
5024
+ include Aws::Structure
5025
+ end
5026
+
5027
+ # @!attribute [rw] domain_configuration_name
5028
+ # The name of the domain configuration.
5029
+ # @return [String]
5030
+ #
5031
+ # @!attribute [rw] domain_configuration_arn
5032
+ # The ARN of the domain configuration.
5033
+ # @return [String]
5034
+ #
5035
+ # @!attribute [rw] domain_name
5036
+ # The name of the domain.
5037
+ # @return [String]
5038
+ #
5039
+ # @!attribute [rw] server_certificates
5040
+ # A list containing summary information about the server certificate
5041
+ # included in the domain configuration.
5042
+ # @return [Array<Types::ServerCertificateSummary>]
5043
+ #
5044
+ # @!attribute [rw] authorizer_config
5045
+ # An object that specifies the authorization service for a domain.
5046
+ # @return [Types::AuthorizerConfig]
5047
+ #
5048
+ # @!attribute [rw] domain_configuration_status
5049
+ # A Boolean value that specifies the current state of the domain
5050
+ # configuration.
5051
+ # @return [String]
5052
+ #
5053
+ # @!attribute [rw] service_type
5054
+ # The type of service delivered by the endpoint.
5055
+ # @return [String]
5056
+ #
5057
+ # @!attribute [rw] domain_type
5058
+ # The type of the domain.
5059
+ # @return [String]
5060
+ #
5061
+ class DescribeDomainConfigurationResponse < Struct.new(
5062
+ :domain_configuration_name,
5063
+ :domain_configuration_arn,
5064
+ :domain_name,
5065
+ :server_certificates,
5066
+ :authorizer_config,
5067
+ :domain_configuration_status,
5068
+ :service_type,
5069
+ :domain_type)
5070
+ include Aws::Structure
5071
+ end
5072
+
4478
5073
  # The input for the DescribeEndpoint operation.
4479
5074
  #
4480
5075
  # @note When making an API call, you may pass DescribeEndpointRequest
@@ -4727,6 +5322,120 @@ module Aws::IoT
4727
5322
  include Aws::Structure
4728
5323
  end
4729
5324
 
5325
+ # @note When making an API call, you may pass DescribeProvisioningTemplateRequest
5326
+ # data as a hash:
5327
+ #
5328
+ # {
5329
+ # template_name: "TemplateName", # required
5330
+ # }
5331
+ #
5332
+ # @!attribute [rw] template_name
5333
+ # The name of the fleet provisioning template.
5334
+ # @return [String]
5335
+ #
5336
+ class DescribeProvisioningTemplateRequest < Struct.new(
5337
+ :template_name)
5338
+ include Aws::Structure
5339
+ end
5340
+
5341
+ # @!attribute [rw] template_arn
5342
+ # The ARN of the fleet provisioning template.
5343
+ # @return [String]
5344
+ #
5345
+ # @!attribute [rw] template_name
5346
+ # The name of the fleet provisioning template.
5347
+ # @return [String]
5348
+ #
5349
+ # @!attribute [rw] description
5350
+ # The description of the fleet provisioning template.
5351
+ # @return [String]
5352
+ #
5353
+ # @!attribute [rw] creation_date
5354
+ # The date when the fleet provisioning template was created.
5355
+ # @return [Time]
5356
+ #
5357
+ # @!attribute [rw] last_modified_date
5358
+ # The date when the fleet provisioning template was last modified.
5359
+ # @return [Time]
5360
+ #
5361
+ # @!attribute [rw] default_version_id
5362
+ # The default fleet template version ID.
5363
+ # @return [Integer]
5364
+ #
5365
+ # @!attribute [rw] template_body
5366
+ # The JSON formatted contents of the fleet provisioning template.
5367
+ # @return [String]
5368
+ #
5369
+ # @!attribute [rw] enabled
5370
+ # True if the fleet provisioning template is enabled, otherwise false.
5371
+ # @return [Boolean]
5372
+ #
5373
+ # @!attribute [rw] provisioning_role_arn
5374
+ # The ARN of the role associated with the provisioning template. This
5375
+ # IoT role grants permission to provision a device.
5376
+ # @return [String]
5377
+ #
5378
+ class DescribeProvisioningTemplateResponse < Struct.new(
5379
+ :template_arn,
5380
+ :template_name,
5381
+ :description,
5382
+ :creation_date,
5383
+ :last_modified_date,
5384
+ :default_version_id,
5385
+ :template_body,
5386
+ :enabled,
5387
+ :provisioning_role_arn)
5388
+ include Aws::Structure
5389
+ end
5390
+
5391
+ # @note When making an API call, you may pass DescribeProvisioningTemplateVersionRequest
5392
+ # data as a hash:
5393
+ #
5394
+ # {
5395
+ # template_name: "TemplateName", # required
5396
+ # version_id: 1, # required
5397
+ # }
5398
+ #
5399
+ # @!attribute [rw] template_name
5400
+ # The template name.
5401
+ # @return [String]
5402
+ #
5403
+ # @!attribute [rw] version_id
5404
+ # The fleet provisioning template version ID.
5405
+ # @return [Integer]
5406
+ #
5407
+ class DescribeProvisioningTemplateVersionRequest < Struct.new(
5408
+ :template_name,
5409
+ :version_id)
5410
+ include Aws::Structure
5411
+ end
5412
+
5413
+ # @!attribute [rw] version_id
5414
+ # The fleet provisioning template version ID.
5415
+ # @return [Integer]
5416
+ #
5417
+ # @!attribute [rw] creation_date
5418
+ # The date when the fleet provisioning template version was created.
5419
+ # @return [Time]
5420
+ #
5421
+ # @!attribute [rw] template_body
5422
+ # The JSON formatted contents of the fleet provisioning template
5423
+ # version.
5424
+ # @return [String]
5425
+ #
5426
+ # @!attribute [rw] is_default_version
5427
+ # True if the fleet provisioning template version is the default
5428
+ # version.
5429
+ # @return [Boolean]
5430
+ #
5431
+ class DescribeProvisioningTemplateVersionResponse < Struct.new(
5432
+ :version_id,
5433
+ :creation_date,
5434
+ :template_body,
5435
+ :is_default_version)
5436
+ include Aws::Structure
5437
+ end
5438
+
4730
5439
  # @note When making an API call, you may pass DescribeRoleAliasRequest
4731
5440
  # data as a hash:
4732
5441
  #
@@ -5327,6 +6036,43 @@ module Aws::IoT
5327
6036
  include Aws::Structure
5328
6037
  end
5329
6038
 
6039
+ # The summary of a domain configuration. A domain configuration
6040
+ # specifies custom IoT-specific information about a domain. A domain
6041
+ # configuration can be associated with an AWS-managed domain (for
6042
+ # example, dbc123defghijk.iot.us-west-2.amazonaws.com), a customer
6043
+ # managed domain, or a default endpoint.
6044
+ #
6045
+ # * Data
6046
+ #
6047
+ # * Jobs
6048
+ #
6049
+ # * CredentialProvider
6050
+ #
6051
+ # <note markdown="1"> The domain configuration feature is in public preview and is subject
6052
+ # to change.
6053
+ #
6054
+ # </note>
6055
+ #
6056
+ # @!attribute [rw] domain_configuration_name
6057
+ # The name of the domain configuration. This value must be unique to a
6058
+ # region.
6059
+ # @return [String]
6060
+ #
6061
+ # @!attribute [rw] domain_configuration_arn
6062
+ # The ARN of the domain configuration.
6063
+ # @return [String]
6064
+ #
6065
+ # @!attribute [rw] service_type
6066
+ # The type of service delivered by the endpoint.
6067
+ # @return [String]
6068
+ #
6069
+ class DomainConfigurationSummary < Struct.new(
6070
+ :domain_configuration_name,
6071
+ :domain_configuration_arn,
6072
+ :service_type)
6073
+ include Aws::Structure
6074
+ end
6075
+
5330
6076
  # Describes an action to write to a DynamoDB table.
5331
6077
  #
5332
6078
  # The `tableName`, `hashKeyField`, and `rangeKeyField` values must match
@@ -5626,7 +6372,7 @@ module Aws::IoT
5626
6372
  include Aws::Structure
5627
6373
  end
5628
6374
 
5629
- # The field to aggregate.
6375
+ # Describes the name and data type at a field.
5630
6376
  #
5631
6377
  # @note When making an API call, you may pass Field
5632
6378
  # data as a hash:
@@ -5641,7 +6387,7 @@ module Aws::IoT
5641
6387
  # @return [String]
5642
6388
  #
5643
6389
  # @!attribute [rw] type
5644
- # The data type of the field.
6390
+ # The datatype of the field.
5645
6391
  # @return [String]
5646
6392
  #
5647
6393
  class Field < Struct.new(
@@ -6040,11 +6786,11 @@ module Aws::IoT
6040
6786
  # @return [Boolean]
6041
6787
  #
6042
6788
  # @!attribute [rw] creation_date
6043
- # The date the policy version was created.
6789
+ # The date the policy was created.
6044
6790
  # @return [Time]
6045
6791
  #
6046
6792
  # @!attribute [rw] last_modified_date
6047
- # The date the policy version was last modified.
6793
+ # The date the policy was last modified.
6048
6794
  # @return [Time]
6049
6795
  #
6050
6796
  # @!attribute [rw] generation_id
@@ -6100,7 +6846,7 @@ module Aws::IoT
6100
6846
  # @return [String]
6101
6847
  #
6102
6848
  # @!attribute [rw] aggregation_field
6103
- # The aggregation field name. Currently not supported.
6849
+ # The aggregation field name.
6104
6850
  # @return [String]
6105
6851
  #
6106
6852
  # @!attribute [rw] query_version
@@ -6330,6 +7076,32 @@ module Aws::IoT
6330
7076
  include Aws::Structure
6331
7077
  end
6332
7078
 
7079
+ # Specifies the HTTP context to use for the test authorizer request.
7080
+ #
7081
+ # @note When making an API call, you may pass HttpContext
7082
+ # data as a hash:
7083
+ #
7084
+ # {
7085
+ # headers: {
7086
+ # "HttpHeaderName" => "HttpHeaderValue",
7087
+ # },
7088
+ # query_string: "HttpQueryString",
7089
+ # }
7090
+ #
7091
+ # @!attribute [rw] headers
7092
+ # The header keys and values in an HTTP authorization request.
7093
+ # @return [Hash<String,String>]
7094
+ #
7095
+ # @!attribute [rw] query_string
7096
+ # The query string keys and values in an HTTP authorization request.
7097
+ # @return [String]
7098
+ #
7099
+ class HttpContext < Struct.new(
7100
+ :headers,
7101
+ :query_string)
7102
+ include Aws::Structure
7103
+ end
7104
+
6333
7105
  # HTTP URL destination configuration used by the topic rule's HTTP
6334
7106
  # action.
6335
7107
  #
@@ -6543,6 +7315,56 @@ module Aws::IoT
6543
7315
  include Aws::Structure
6544
7316
  end
6545
7317
 
7318
+ # Describes an action to send data from an MQTT message that triggered
7319
+ # the rule to AWS IoT SiteWise asset properties.
7320
+ #
7321
+ # @note When making an API call, you may pass IotSiteWiseAction
7322
+ # data as a hash:
7323
+ #
7324
+ # {
7325
+ # put_asset_property_value_entries: [ # required
7326
+ # {
7327
+ # entry_id: "AssetPropertyEntryId",
7328
+ # asset_id: "AssetId",
7329
+ # property_id: "AssetPropertyId",
7330
+ # property_alias: "AssetPropertyAlias",
7331
+ # property_values: [ # required
7332
+ # {
7333
+ # value: { # required
7334
+ # string_value: "AssetPropertyStringValue",
7335
+ # integer_value: "AssetPropertyIntegerValue",
7336
+ # double_value: "AssetPropertyDoubleValue",
7337
+ # boolean_value: "AssetPropertyBooleanValue",
7338
+ # },
7339
+ # timestamp: { # required
7340
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
7341
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
7342
+ # },
7343
+ # quality: "AssetPropertyQuality",
7344
+ # },
7345
+ # ],
7346
+ # },
7347
+ # ],
7348
+ # role_arn: "AwsArn", # required
7349
+ # }
7350
+ #
7351
+ # @!attribute [rw] put_asset_property_value_entries
7352
+ # A list of asset property value entries.
7353
+ # @return [Array<Types::PutAssetPropertyValueEntry>]
7354
+ #
7355
+ # @!attribute [rw] role_arn
7356
+ # The ARN of the role that grants AWS IoT permission to send an asset
7357
+ # property value to AWS IoTSiteWise. (`"Action":
7358
+ # "iotsitewise:BatchPutAssetPropertyValue"`). The trust policy can
7359
+ # restrict access to specific asset hierarchy paths.
7360
+ # @return [String]
7361
+ #
7362
+ class IotSiteWiseAction < Struct.new(
7363
+ :put_asset_property_value_entries,
7364
+ :role_arn)
7365
+ include Aws::Structure
7366
+ end
7367
+
6546
7368
  # The `Job` object contains details about a job.
6547
7369
  #
6548
7370
  # @!attribute [rw] job_arn
@@ -7136,6 +7958,8 @@ module Aws::IoT
7136
7958
  # policy_version_id: "PolicyVersionId",
7137
7959
  # },
7138
7960
  # account: "AwsAccountId",
7961
+ # iam_role_arn: "RoleArn",
7962
+ # role_alias_arn: "RoleAliasArn",
7139
7963
  # },
7140
7964
  # max_results: 1,
7141
7965
  # next_token: "NextToken",
@@ -7637,12 +8461,55 @@ module Aws::IoT
7637
8461
  # @return [Array<Types::Certificate>]
7638
8462
  #
7639
8463
  # @!attribute [rw] next_marker
7640
- # The marker for the next set of results, or null if there are no
7641
- # additional results.
8464
+ # The marker for the next set of results, or null if there are no
8465
+ # additional results.
8466
+ # @return [String]
8467
+ #
8468
+ class ListCertificatesResponse < Struct.new(
8469
+ :certificates,
8470
+ :next_marker)
8471
+ include Aws::Structure
8472
+ end
8473
+
8474
+ # @note When making an API call, you may pass ListDomainConfigurationsRequest
8475
+ # data as a hash:
8476
+ #
8477
+ # {
8478
+ # marker: "Marker",
8479
+ # page_size: 1,
8480
+ # service_type: "DATA", # accepts DATA, CREDENTIAL_PROVIDER, JOBS
8481
+ # }
8482
+ #
8483
+ # @!attribute [rw] marker
8484
+ # The marker for the next set of results.
8485
+ # @return [String]
8486
+ #
8487
+ # @!attribute [rw] page_size
8488
+ # The result page size.
8489
+ # @return [Integer]
8490
+ #
8491
+ # @!attribute [rw] service_type
8492
+ # The type of service delivered by the endpoint.
8493
+ # @return [String]
8494
+ #
8495
+ class ListDomainConfigurationsRequest < Struct.new(
8496
+ :marker,
8497
+ :page_size,
8498
+ :service_type)
8499
+ include Aws::Structure
8500
+ end
8501
+
8502
+ # @!attribute [rw] domain_configurations
8503
+ # A list of objects that contain summary information about the user's
8504
+ # domain configurations.
8505
+ # @return [Array<Types::DomainConfigurationSummary>]
8506
+ #
8507
+ # @!attribute [rw] next_marker
8508
+ # The marker for the next set of results.
7642
8509
  # @return [String]
7643
8510
  #
7644
- class ListCertificatesResponse < Struct.new(
7645
- :certificates,
8511
+ class ListDomainConfigurationsResponse < Struct.new(
8512
+ :domain_configurations,
7646
8513
  :next_marker)
7647
8514
  include Aws::Structure
7648
8515
  end
@@ -7656,8 +8523,8 @@ module Aws::IoT
7656
8523
  # }
7657
8524
  #
7658
8525
  # @!attribute [rw] next_token
7659
- # The token used to get the next set of results, or null if there are
7660
- # no additional results.
8526
+ # The token used to get the next set of results, or `null` if there
8527
+ # are no additional results.
7661
8528
  # @return [String]
7662
8529
  #
7663
8530
  # @!attribute [rw] max_results
@@ -7675,8 +8542,8 @@ module Aws::IoT
7675
8542
  # @return [Array<String>]
7676
8543
  #
7677
8544
  # @!attribute [rw] next_token
7678
- # The token used to get the next set of results, or null if there are
7679
- # no additional results.
8545
+ # The token used to get the next set of results, or `null` if there
8546
+ # are no additional results.
7680
8547
  # @return [String]
7681
8548
  #
7682
8549
  class ListIndicesResponse < Struct.new(
@@ -8218,6 +9085,84 @@ module Aws::IoT
8218
9085
  include Aws::Structure
8219
9086
  end
8220
9087
 
9088
+ # @note When making an API call, you may pass ListProvisioningTemplateVersionsRequest
9089
+ # data as a hash:
9090
+ #
9091
+ # {
9092
+ # template_name: "TemplateName", # required
9093
+ # max_results: 1,
9094
+ # next_token: "NextToken",
9095
+ # }
9096
+ #
9097
+ # @!attribute [rw] template_name
9098
+ # The name of the fleet provisioning template.
9099
+ # @return [String]
9100
+ #
9101
+ # @!attribute [rw] max_results
9102
+ # The maximum number of results to return at one time.
9103
+ # @return [Integer]
9104
+ #
9105
+ # @!attribute [rw] next_token
9106
+ # A token to retrieve the next set of results.
9107
+ # @return [String]
9108
+ #
9109
+ class ListProvisioningTemplateVersionsRequest < Struct.new(
9110
+ :template_name,
9111
+ :max_results,
9112
+ :next_token)
9113
+ include Aws::Structure
9114
+ end
9115
+
9116
+ # @!attribute [rw] versions
9117
+ # The list of fleet provisioning template versions.
9118
+ # @return [Array<Types::ProvisioningTemplateVersionSummary>]
9119
+ #
9120
+ # @!attribute [rw] next_token
9121
+ # A token to retrieve the next set of results.
9122
+ # @return [String]
9123
+ #
9124
+ class ListProvisioningTemplateVersionsResponse < Struct.new(
9125
+ :versions,
9126
+ :next_token)
9127
+ include Aws::Structure
9128
+ end
9129
+
9130
+ # @note When making an API call, you may pass ListProvisioningTemplatesRequest
9131
+ # data as a hash:
9132
+ #
9133
+ # {
9134
+ # max_results: 1,
9135
+ # next_token: "NextToken",
9136
+ # }
9137
+ #
9138
+ # @!attribute [rw] max_results
9139
+ # The maximum number of results to return at one time.
9140
+ # @return [Integer]
9141
+ #
9142
+ # @!attribute [rw] next_token
9143
+ # A token to retrieve the next set of results.
9144
+ # @return [String]
9145
+ #
9146
+ class ListProvisioningTemplatesRequest < Struct.new(
9147
+ :max_results,
9148
+ :next_token)
9149
+ include Aws::Structure
9150
+ end
9151
+
9152
+ # @!attribute [rw] templates
9153
+ # A list of fleet provisioning templates
9154
+ # @return [Array<Types::ProvisioningTemplateSummary>]
9155
+ #
9156
+ # @!attribute [rw] next_token
9157
+ # A token to retrieve the next set of results.
9158
+ # @return [String]
9159
+ #
9160
+ class ListProvisioningTemplatesResponse < Struct.new(
9161
+ :templates,
9162
+ :next_token)
9163
+ include Aws::Structure
9164
+ end
9165
+
8221
9166
  # @note When making an API call, you may pass ListRoleAliasesRequest
8222
9167
  # data as a hash:
8223
9168
  #
@@ -9402,6 +10347,36 @@ module Aws::IoT
9402
10347
  include Aws::Structure
9403
10348
  end
9404
10349
 
10350
+ # Specifies the MQTT context to use for the test authorizer request
10351
+ #
10352
+ # @note When making an API call, you may pass MqttContext
10353
+ # data as a hash:
10354
+ #
10355
+ # {
10356
+ # username: "MqttUsername",
10357
+ # password: "data",
10358
+ # client_id: "MqttClientId",
10359
+ # }
10360
+ #
10361
+ # @!attribute [rw] username
10362
+ # The value of the `username` key in an MQTT authorization request.
10363
+ # @return [String]
10364
+ #
10365
+ # @!attribute [rw] password
10366
+ # The value of the `password` key in an MQTT authorization request.
10367
+ # @return [String]
10368
+ #
10369
+ # @!attribute [rw] client_id
10370
+ # The value of the `clientId` key in an MQTT authorization request.
10371
+ # @return [String]
10372
+ #
10373
+ class MqttContext < Struct.new(
10374
+ :username,
10375
+ :password,
10376
+ :client_id)
10377
+ include Aws::Structure
10378
+ end
10379
+
9405
10380
  # Information about the resource that was noncompliant with the audit
9406
10381
  # check.
9407
10382
  #
@@ -9761,6 +10736,65 @@ module Aws::IoT
9761
10736
  include Aws::Structure
9762
10737
  end
9763
10738
 
10739
+ # A summary of information about a fleet provisioning template.
10740
+ #
10741
+ # @!attribute [rw] template_arn
10742
+ # The ARN of the fleet provisioning template.
10743
+ # @return [String]
10744
+ #
10745
+ # @!attribute [rw] template_name
10746
+ # The name of the fleet provisioning template.
10747
+ # @return [String]
10748
+ #
10749
+ # @!attribute [rw] description
10750
+ # The description of the fleet provisioning template.
10751
+ # @return [String]
10752
+ #
10753
+ # @!attribute [rw] creation_date
10754
+ # The date when the fleet provisioning template summary was created.
10755
+ # @return [Time]
10756
+ #
10757
+ # @!attribute [rw] last_modified_date
10758
+ # The date when the fleet provisioning template summary was last
10759
+ # modified.
10760
+ # @return [Time]
10761
+ #
10762
+ # @!attribute [rw] enabled
10763
+ # True if the fleet provision template is enabled, otherwise false.
10764
+ # @return [Boolean]
10765
+ #
10766
+ class ProvisioningTemplateSummary < Struct.new(
10767
+ :template_arn,
10768
+ :template_name,
10769
+ :description,
10770
+ :creation_date,
10771
+ :last_modified_date,
10772
+ :enabled)
10773
+ include Aws::Structure
10774
+ end
10775
+
10776
+ # A summary of information about a fleet provision template version.
10777
+ #
10778
+ # @!attribute [rw] version_id
10779
+ # The ID of the fleet privisioning template version.
10780
+ # @return [Integer]
10781
+ #
10782
+ # @!attribute [rw] creation_date
10783
+ # The date when the fleet provisioning template version was created
10784
+ # @return [Time]
10785
+ #
10786
+ # @!attribute [rw] is_default_version
10787
+ # True if the fleet provisioning template version is the default
10788
+ # version, otherwise false.
10789
+ # @return [Boolean]
10790
+ #
10791
+ class ProvisioningTemplateVersionSummary < Struct.new(
10792
+ :version_id,
10793
+ :creation_date,
10794
+ :is_default_version)
10795
+ include Aws::Structure
10796
+ end
10797
+
9764
10798
  # Parameters to define a mitigation action that publishes findings to
9765
10799
  # Amazon SNS. You can implement your own custom actions in response to
9766
10800
  # the Amazon SNS messages.
@@ -9781,6 +10815,71 @@ module Aws::IoT
9781
10815
  include Aws::Structure
9782
10816
  end
9783
10817
 
10818
+ # An asset property value entry containing the following information.
10819
+ #
10820
+ # @note When making an API call, you may pass PutAssetPropertyValueEntry
10821
+ # data as a hash:
10822
+ #
10823
+ # {
10824
+ # entry_id: "AssetPropertyEntryId",
10825
+ # asset_id: "AssetId",
10826
+ # property_id: "AssetPropertyId",
10827
+ # property_alias: "AssetPropertyAlias",
10828
+ # property_values: [ # required
10829
+ # {
10830
+ # value: { # required
10831
+ # string_value: "AssetPropertyStringValue",
10832
+ # integer_value: "AssetPropertyIntegerValue",
10833
+ # double_value: "AssetPropertyDoubleValue",
10834
+ # boolean_value: "AssetPropertyBooleanValue",
10835
+ # },
10836
+ # timestamp: { # required
10837
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
10838
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
10839
+ # },
10840
+ # quality: "AssetPropertyQuality",
10841
+ # },
10842
+ # ],
10843
+ # }
10844
+ #
10845
+ # @!attribute [rw] entry_id
10846
+ # Optional. A unique identifier for this entry that you can define to
10847
+ # better track which message caused an error in case of failure.
10848
+ # Accepts substitution templates. Defaults to a new UUID.
10849
+ # @return [String]
10850
+ #
10851
+ # @!attribute [rw] asset_id
10852
+ # The ID of the AWS IoT SiteWise asset. You must specify either a
10853
+ # `propertyAlias` or both an `analiasId` and a `propertyId`. Accepts
10854
+ # substitution templates.
10855
+ # @return [String]
10856
+ #
10857
+ # @!attribute [rw] property_id
10858
+ # The ID of the asset's property. You must specify either a
10859
+ # `propertyAlias` or both an `analiasId` and a `propertyId`. Accepts
10860
+ # substitution templates.
10861
+ # @return [String]
10862
+ #
10863
+ # @!attribute [rw] property_alias
10864
+ # The name of the property alias associated with your asset property.
10865
+ # You must specify either a `propertyAlias` or both an `aliasId` and a
10866
+ # `propertyId`. Accepts substitution templates.
10867
+ # @return [String]
10868
+ #
10869
+ # @!attribute [rw] property_values
10870
+ # A list of property values to insert that each contain timestamp,
10871
+ # quality, and value (TQV) information.
10872
+ # @return [Array<Types::AssetPropertyValue>]
10873
+ #
10874
+ class PutAssetPropertyValueEntry < Struct.new(
10875
+ :entry_id,
10876
+ :asset_id,
10877
+ :property_id,
10878
+ :property_alias,
10879
+ :property_values)
10880
+ include Aws::Structure
10881
+ end
10882
+
9784
10883
  # The input for the DynamoActionVS action that specifies the DynamoDB
9785
10884
  # table to which the message data will be written.
9786
10885
  #
@@ -10263,6 +11362,32 @@ module Aws::IoT
10263
11362
  # message_id: "MessageId",
10264
11363
  # role_arn: "AwsArn", # required
10265
11364
  # },
11365
+ # iot_site_wise: {
11366
+ # put_asset_property_value_entries: [ # required
11367
+ # {
11368
+ # entry_id: "AssetPropertyEntryId",
11369
+ # asset_id: "AssetId",
11370
+ # property_id: "AssetPropertyId",
11371
+ # property_alias: "AssetPropertyAlias",
11372
+ # property_values: [ # required
11373
+ # {
11374
+ # value: { # required
11375
+ # string_value: "AssetPropertyStringValue",
11376
+ # integer_value: "AssetPropertyIntegerValue",
11377
+ # double_value: "AssetPropertyDoubleValue",
11378
+ # boolean_value: "AssetPropertyBooleanValue",
11379
+ # },
11380
+ # timestamp: { # required
11381
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
11382
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
11383
+ # },
11384
+ # quality: "AssetPropertyQuality",
11385
+ # },
11386
+ # ],
11387
+ # },
11388
+ # ],
11389
+ # role_arn: "AwsArn", # required
11390
+ # },
10266
11391
  # step_functions: {
10267
11392
  # execution_name_prefix: "ExecutionNamePrefix",
10268
11393
  # state_machine_name: "StateMachineName", # required
@@ -10377,6 +11502,32 @@ module Aws::IoT
10377
11502
  # message_id: "MessageId",
10378
11503
  # role_arn: "AwsArn", # required
10379
11504
  # },
11505
+ # iot_site_wise: {
11506
+ # put_asset_property_value_entries: [ # required
11507
+ # {
11508
+ # entry_id: "AssetPropertyEntryId",
11509
+ # asset_id: "AssetId",
11510
+ # property_id: "AssetPropertyId",
11511
+ # property_alias: "AssetPropertyAlias",
11512
+ # property_values: [ # required
11513
+ # {
11514
+ # value: { # required
11515
+ # string_value: "AssetPropertyStringValue",
11516
+ # integer_value: "AssetPropertyIntegerValue",
11517
+ # double_value: "AssetPropertyDoubleValue",
11518
+ # boolean_value: "AssetPropertyBooleanValue",
11519
+ # },
11520
+ # timestamp: { # required
11521
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
11522
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
11523
+ # },
11524
+ # quality: "AssetPropertyQuality",
11525
+ # },
11526
+ # ],
11527
+ # },
11528
+ # ],
11529
+ # role_arn: "AwsArn", # required
11530
+ # },
10380
11531
  # step_functions: {
10381
11532
  # execution_name_prefix: "ExecutionNamePrefix",
10382
11533
  # state_machine_name: "StateMachineName", # required
@@ -10484,6 +11635,8 @@ module Aws::IoT
10484
11635
  # policy_version_id: "PolicyVersionId",
10485
11636
  # },
10486
11637
  # account: "AwsAccountId",
11638
+ # iam_role_arn: "RoleArn",
11639
+ # role_alias_arn: "RoleAliasArn",
10487
11640
  # }
10488
11641
  #
10489
11642
  # @!attribute [rw] device_certificate_id
@@ -10510,13 +11663,23 @@ module Aws::IoT
10510
11663
  # The account with which the resource is associated.
10511
11664
  # @return [String]
10512
11665
  #
11666
+ # @!attribute [rw] iam_role_arn
11667
+ # The ARN of the IAM role that has overly permissive actions.
11668
+ # @return [String]
11669
+ #
11670
+ # @!attribute [rw] role_alias_arn
11671
+ # The ARN of the role alias that has overly permissive actions.
11672
+ # @return [String]
11673
+ #
10513
11674
  class ResourceIdentifier < Struct.new(
10514
11675
  :device_certificate_id,
10515
11676
  :ca_certificate_id,
10516
11677
  :cognito_identity_pool_id,
10517
11678
  :client_id,
10518
11679
  :policy_version_identifier,
10519
- :account)
11680
+ :account,
11681
+ :iam_role_arn,
11682
+ :role_alias_arn)
10520
11683
  include Aws::Structure
10521
11684
  end
10522
11685
 
@@ -10763,8 +11926,8 @@ module Aws::IoT
10763
11926
  # @return [String]
10764
11927
  #
10765
11928
  # @!attribute [rw] next_token
10766
- # The token used to get the next set of results, or null if there are
10767
- # no additional results.
11929
+ # The token used to get the next set of results, or `null` if there
11930
+ # are no additional results.
10768
11931
  # @return [String]
10769
11932
  #
10770
11933
  # @!attribute [rw] max_results
@@ -10785,8 +11948,8 @@ module Aws::IoT
10785
11948
  end
10786
11949
 
10787
11950
  # @!attribute [rw] next_token
10788
- # The token used to get the next set of results, or null if there are
10789
- # no additional results.
11951
+ # The token used to get the next set of results, or `null` if there
11952
+ # are no additional results.
10790
11953
  # @return [String]
10791
11954
  #
10792
11955
  # @!attribute [rw] things
@@ -10850,6 +12013,27 @@ module Aws::IoT
10850
12013
  include Aws::Structure
10851
12014
  end
10852
12015
 
12016
+ # An object that contains information about a server certificate.
12017
+ #
12018
+ # @!attribute [rw] server_certificate_arn
12019
+ # The ARN of the server certificate.
12020
+ # @return [String]
12021
+ #
12022
+ # @!attribute [rw] server_certificate_status
12023
+ # The status of the server certificate.
12024
+ # @return [String]
12025
+ #
12026
+ # @!attribute [rw] server_certificate_status_detail
12027
+ # Details that explain the status of the server certificate.
12028
+ # @return [String]
12029
+ #
12030
+ class ServerCertificateSummary < Struct.new(
12031
+ :server_certificate_arn,
12032
+ :server_certificate_status,
12033
+ :server_certificate_status_detail)
12034
+ include Aws::Structure
12035
+ end
12036
+
10853
12037
  # The service is temporarily unavailable.
10854
12038
  #
10855
12039
  # @!attribute [rw] message
@@ -11342,23 +12526,19 @@ module Aws::IoT
11342
12526
  # @return [Integer]
11343
12527
  #
11344
12528
  # @!attribute [rw] average
11345
- # The average of the aggregated fields. If the field data type is
11346
- # String this value is indeterminate.
12529
+ # The average of the aggregated field values.
11347
12530
  # @return [Float]
11348
12531
  #
11349
12532
  # @!attribute [rw] sum
11350
- # The sum of the aggregated fields. If the field data type is String
11351
- # this value is indeterminate.
12533
+ # The sum of the aggregated field values.
11352
12534
  # @return [Float]
11353
12535
  #
11354
12536
  # @!attribute [rw] minimum
11355
- # The minimum value of the aggregated fields. If the field data type
11356
- # is String this value is indeterminate.
12537
+ # The minimum aggregated field value.
11357
12538
  # @return [Float]
11358
12539
  #
11359
12540
  # @!attribute [rw] maximum
11360
- # The maximum value of the aggregated fields. If the field data type
11361
- # is String this value is indeterminate.
12541
+ # The maximum aggregated field value.
11362
12542
  # @return [Float]
11363
12543
  #
11364
12544
  # @!attribute [rw] sum_of_squares
@@ -11774,8 +12954,22 @@ module Aws::IoT
11774
12954
  #
11775
12955
  # {
11776
12956
  # authorizer_name: "AuthorizerName", # required
11777
- # token: "Token", # required
11778
- # token_signature: "TokenSignature", # required
12957
+ # token: "Token",
12958
+ # token_signature: "TokenSignature",
12959
+ # http_context: {
12960
+ # headers: {
12961
+ # "HttpHeaderName" => "HttpHeaderValue",
12962
+ # },
12963
+ # query_string: "HttpQueryString",
12964
+ # },
12965
+ # mqtt_context: {
12966
+ # username: "MqttUsername",
12967
+ # password: "data",
12968
+ # client_id: "MqttClientId",
12969
+ # },
12970
+ # tls_context: {
12971
+ # server_name: "ServerName",
12972
+ # },
11779
12973
  # }
11780
12974
  #
11781
12975
  # @!attribute [rw] authorizer_name
@@ -11791,10 +12985,25 @@ module Aws::IoT
11791
12985
  # service's private key.
11792
12986
  # @return [String]
11793
12987
  #
12988
+ # @!attribute [rw] http_context
12989
+ # Specifies a test HTTP authorization request.
12990
+ # @return [Types::HttpContext]
12991
+ #
12992
+ # @!attribute [rw] mqtt_context
12993
+ # Specifies a test MQTT authorization request.&gt;
12994
+ # @return [Types::MqttContext]
12995
+ #
12996
+ # @!attribute [rw] tls_context
12997
+ # Specifies a test TLS authorization request.
12998
+ # @return [Types::TlsContext]
12999
+ #
11794
13000
  class TestInvokeAuthorizerRequest < Struct.new(
11795
13001
  :authorizer_name,
11796
13002
  :token,
11797
- :token_signature)
13003
+ :token_signature,
13004
+ :http_context,
13005
+ :mqtt_context,
13006
+ :tls_context)
11798
13007
  include Aws::Structure
11799
13008
  end
11800
13009
 
@@ -11978,13 +13187,16 @@ module Aws::IoT
11978
13187
  # @return [String]
11979
13188
  #
11980
13189
  # @!attribute [rw] managed_fields
11981
- # A list of automatically indexed thing group fields.
13190
+ # Contains fields that are indexed and whose types are already known
13191
+ # by the Fleet Indexing service.
11982
13192
  # @return [Array<Types::Field>]
11983
13193
  #
11984
13194
  # @!attribute [rw] custom_fields
11985
13195
  # A list of thing group fields to index. This list cannot contain any
11986
13196
  # managed fields. Use the GetIndexingConfiguration API to get a list
11987
13197
  # of managed fields.
13198
+ #
13199
+ # Contains custom field names and their data type.
11988
13200
  # @return [Array<Types::Field>]
11989
13201
  #
11990
13202
  class ThingGroupIndexingConfiguration < Struct.new(
@@ -12093,13 +13305,12 @@ module Aws::IoT
12093
13305
  # @return [String]
12094
13306
  #
12095
13307
  # @!attribute [rw] managed_fields
12096
- # A list of automatically indexed thing fields.
13308
+ # Contains fields that are indexed and whose types are already known
13309
+ # by the Fleet Indexing service.
12097
13310
  # @return [Array<Types::Field>]
12098
13311
  #
12099
13312
  # @!attribute [rw] custom_fields
12100
- # A list of thing fields to index. This list cannot contain any
12101
- # managed fields. Use the GetIndexingConfiguration API to get a list
12102
- # of managed fields.
13313
+ # Contains custom field names and their data type.
12103
13314
  # @return [Array<Types::Field>]
12104
13315
  #
12105
13316
  class ThingIndexingConfiguration < Struct.new(
@@ -12230,6 +13441,24 @@ module Aws::IoT
12230
13441
  include Aws::Structure
12231
13442
  end
12232
13443
 
13444
+ # Specifies the TLS context to use for the test authorizer request.
13445
+ #
13446
+ # @note When making an API call, you may pass TlsContext
13447
+ # data as a hash:
13448
+ #
13449
+ # {
13450
+ # server_name: "ServerName",
13451
+ # }
13452
+ #
13453
+ # @!attribute [rw] server_name
13454
+ # The value of the `serverName` key in a TLS authorization request.
13455
+ # @return [String]
13456
+ #
13457
+ class TlsContext < Struct.new(
13458
+ :server_name)
13459
+ include Aws::Structure
13460
+ end
13461
+
12233
13462
  # Describes a rule.
12234
13463
  #
12235
13464
  # @!attribute [rw] rule_name
@@ -12536,6 +13765,32 @@ module Aws::IoT
12536
13765
  # message_id: "MessageId",
12537
13766
  # role_arn: "AwsArn", # required
12538
13767
  # },
13768
+ # iot_site_wise: {
13769
+ # put_asset_property_value_entries: [ # required
13770
+ # {
13771
+ # entry_id: "AssetPropertyEntryId",
13772
+ # asset_id: "AssetId",
13773
+ # property_id: "AssetPropertyId",
13774
+ # property_alias: "AssetPropertyAlias",
13775
+ # property_values: [ # required
13776
+ # {
13777
+ # value: { # required
13778
+ # string_value: "AssetPropertyStringValue",
13779
+ # integer_value: "AssetPropertyIntegerValue",
13780
+ # double_value: "AssetPropertyDoubleValue",
13781
+ # boolean_value: "AssetPropertyBooleanValue",
13782
+ # },
13783
+ # timestamp: { # required
13784
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
13785
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
13786
+ # },
13787
+ # quality: "AssetPropertyQuality",
13788
+ # },
13789
+ # ],
13790
+ # },
13791
+ # ],
13792
+ # role_arn: "AwsArn", # required
13793
+ # },
12539
13794
  # step_functions: {
12540
13795
  # execution_name_prefix: "ExecutionNamePrefix",
12541
13796
  # state_machine_name: "StateMachineName", # required
@@ -12650,6 +13905,32 @@ module Aws::IoT
12650
13905
  # message_id: "MessageId",
12651
13906
  # role_arn: "AwsArn", # required
12652
13907
  # },
13908
+ # iot_site_wise: {
13909
+ # put_asset_property_value_entries: [ # required
13910
+ # {
13911
+ # entry_id: "AssetPropertyEntryId",
13912
+ # asset_id: "AssetId",
13913
+ # property_id: "AssetPropertyId",
13914
+ # property_alias: "AssetPropertyAlias",
13915
+ # property_values: [ # required
13916
+ # {
13917
+ # value: { # required
13918
+ # string_value: "AssetPropertyStringValue",
13919
+ # integer_value: "AssetPropertyIntegerValue",
13920
+ # double_value: "AssetPropertyDoubleValue",
13921
+ # boolean_value: "AssetPropertyBooleanValue",
13922
+ # },
13923
+ # timestamp: { # required
13924
+ # time_in_seconds: "AssetPropertyTimeInSeconds", # required
13925
+ # offset_in_nanos: "AssetPropertyOffsetInNanos",
13926
+ # },
13927
+ # quality: "AssetPropertyQuality",
13928
+ # },
13929
+ # ],
13930
+ # },
13931
+ # ],
13932
+ # role_arn: "AwsArn", # required
13933
+ # },
12653
13934
  # step_functions: {
12654
13935
  # execution_name_prefix: "ExecutionNamePrefix",
12655
13936
  # state_machine_name: "StateMachineName", # required
@@ -13120,6 +14401,57 @@ module Aws::IoT
13120
14401
  include Aws::Structure
13121
14402
  end
13122
14403
 
14404
+ # @note When making an API call, you may pass UpdateDomainConfigurationRequest
14405
+ # data as a hash:
14406
+ #
14407
+ # {
14408
+ # domain_configuration_name: "ReservedDomainConfigurationName", # required
14409
+ # authorizer_config: {
14410
+ # default_authorizer_name: "AuthorizerName",
14411
+ # allow_authorizer_override: false,
14412
+ # },
14413
+ # domain_configuration_status: "ENABLED", # accepts ENABLED, DISABLED
14414
+ # remove_authorizer_config: false,
14415
+ # }
14416
+ #
14417
+ # @!attribute [rw] domain_configuration_name
14418
+ # The name of the domain configuration to be updated.
14419
+ # @return [String]
14420
+ #
14421
+ # @!attribute [rw] authorizer_config
14422
+ # An object that specifies the authorization service for a domain.
14423
+ # @return [Types::AuthorizerConfig]
14424
+ #
14425
+ # @!attribute [rw] domain_configuration_status
14426
+ # The status to which the domain configuration should be updated.
14427
+ # @return [String]
14428
+ #
14429
+ # @!attribute [rw] remove_authorizer_config
14430
+ # Removes the authorization configuration from a domain.
14431
+ # @return [Boolean]
14432
+ #
14433
+ class UpdateDomainConfigurationRequest < Struct.new(
14434
+ :domain_configuration_name,
14435
+ :authorizer_config,
14436
+ :domain_configuration_status,
14437
+ :remove_authorizer_config)
14438
+ include Aws::Structure
14439
+ end
14440
+
14441
+ # @!attribute [rw] domain_configuration_name
14442
+ # The name of the domain configuration that was updated.
14443
+ # @return [String]
14444
+ #
14445
+ # @!attribute [rw] domain_configuration_arn
14446
+ # The ARN of the domain configuration that was updated.
14447
+ # @return [String]
14448
+ #
14449
+ class UpdateDomainConfigurationResponse < Struct.new(
14450
+ :domain_configuration_name,
14451
+ :domain_configuration_arn)
14452
+ include Aws::Structure
14453
+ end
14454
+
13123
14455
  # @note When making an API call, you may pass UpdateDynamicThingGroupRequest
13124
14456
  # data as a hash:
13125
14457
  #
@@ -13406,6 +14738,49 @@ module Aws::IoT
13406
14738
  include Aws::Structure
13407
14739
  end
13408
14740
 
14741
+ # @note When making an API call, you may pass UpdateProvisioningTemplateRequest
14742
+ # data as a hash:
14743
+ #
14744
+ # {
14745
+ # template_name: "TemplateName", # required
14746
+ # description: "TemplateDescription",
14747
+ # enabled: false,
14748
+ # default_version_id: 1,
14749
+ # provisioning_role_arn: "RoleArn",
14750
+ # }
14751
+ #
14752
+ # @!attribute [rw] template_name
14753
+ # The name of the fleet provisioning template.
14754
+ # @return [String]
14755
+ #
14756
+ # @!attribute [rw] description
14757
+ # The description of the fleet provisioning template.
14758
+ # @return [String]
14759
+ #
14760
+ # @!attribute [rw] enabled
14761
+ # True to enable the fleet provisioning template, otherwise false.
14762
+ # @return [Boolean]
14763
+ #
14764
+ # @!attribute [rw] default_version_id
14765
+ # The ID of the default provisioning template version.
14766
+ # @return [Integer]
14767
+ #
14768
+ # @!attribute [rw] provisioning_role_arn
14769
+ # The ARN of the role associated with the provisioning template. This
14770
+ # IoT role grants permission to provision a device.
14771
+ # @return [String]
14772
+ #
14773
+ class UpdateProvisioningTemplateRequest < Struct.new(
14774
+ :template_name,
14775
+ :description,
14776
+ :enabled,
14777
+ :default_version_id,
14778
+ :provisioning_role_arn)
14779
+ include Aws::Structure
14780
+ end
14781
+
14782
+ class UpdateProvisioningTemplateResponse < Aws::EmptyStructure; end
14783
+
13409
14784
  # @note When making an API call, you may pass UpdateRoleAliasRequest
13410
14785
  # data as a hash:
13411
14786
  #