aws-sdk-iot 1.138.0 → 1.140.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -675,9 +675,27 @@ module Aws::IoT
675
675
  # CreateCertificate operation) or an Amazon Cognito ID.
676
676
  # @return [String]
677
677
  #
678
+ # @!attribute [rw] thing_principal_type
679
+ # The type of the relation you want to specify when you attach a
680
+ # principal to a thing.
681
+ #
682
+ # * `EXCLUSIVE_THING` - Attaches the specified principal to the
683
+ # specified thing, exclusively. The thing will be the only thing
684
+ # that’s attached to the principal.
685
+ #
686
+ # ^
687
+ # ^
688
+ #
689
+ # * `NON_EXCLUSIVE_THING` - Attaches the specified principal to the
690
+ # specified thing. Multiple things can be attached to the principal.
691
+ #
692
+ # ^
693
+ # @return [String]
694
+ #
678
695
  class AttachThingPrincipalRequest < Struct.new(
679
696
  :thing_name,
680
- :principal)
697
+ :principal,
698
+ :thing_principal_type)
681
699
  SENSITIVE = []
682
700
  include Aws::Structure
683
701
  end
@@ -2189,6 +2207,237 @@ module Aws::IoT
2189
2207
  include Aws::Structure
2190
2208
  end
2191
2209
 
2210
+ # The result value of the command execution. The device can use the
2211
+ # result field to share additional details about the execution such as a
2212
+ # return value of a remote function call.
2213
+ #
2214
+ # <note markdown="1"> This field is not applicable if you use the `AWS-IoT-FleetWise`
2215
+ # namespace.
2216
+ #
2217
+ # </note>
2218
+ #
2219
+ # @!attribute [rw] s
2220
+ # An attribute of type String. For example:
2221
+ #
2222
+ # `"S": "Hello"`
2223
+ # @return [String]
2224
+ #
2225
+ # @!attribute [rw] b
2226
+ # An attribute of type Boolean. For example:
2227
+ #
2228
+ # `"BOOL": true`
2229
+ # @return [Boolean]
2230
+ #
2231
+ # @!attribute [rw] bin
2232
+ # An attribute of type Binary.
2233
+ # @return [String]
2234
+ #
2235
+ class CommandExecutionResult < Struct.new(
2236
+ :s,
2237
+ :b,
2238
+ :bin)
2239
+ SENSITIVE = []
2240
+ include Aws::Structure
2241
+ end
2242
+
2243
+ # Summary information about a particular command execution.
2244
+ #
2245
+ # @!attribute [rw] command_arn
2246
+ # The Amazon Resource Name (ARN) of the command execution.
2247
+ # @return [String]
2248
+ #
2249
+ # @!attribute [rw] execution_id
2250
+ # The unique identifier of the command execution.
2251
+ # @return [String]
2252
+ #
2253
+ # @!attribute [rw] target_arn
2254
+ # The Amazon Resource Name (ARN) of the target device for which the
2255
+ # command is being executed.
2256
+ # @return [String]
2257
+ #
2258
+ # @!attribute [rw] status
2259
+ # The status of the command executions.
2260
+ # @return [String]
2261
+ #
2262
+ # @!attribute [rw] created_at
2263
+ # The date and time at which the command execution was created for the
2264
+ # target device.
2265
+ # @return [Time]
2266
+ #
2267
+ # @!attribute [rw] started_at
2268
+ # The date and time at which the command started executing on the
2269
+ # target device.
2270
+ # @return [Time]
2271
+ #
2272
+ # @!attribute [rw] completed_at
2273
+ # The date and time at which the command completed executing on the
2274
+ # target device.
2275
+ # @return [Time]
2276
+ #
2277
+ class CommandExecutionSummary < Struct.new(
2278
+ :command_arn,
2279
+ :execution_id,
2280
+ :target_arn,
2281
+ :status,
2282
+ :created_at,
2283
+ :started_at,
2284
+ :completed_at)
2285
+ SENSITIVE = []
2286
+ include Aws::Structure
2287
+ end
2288
+
2289
+ # A map of key-value pairs that describe the command.
2290
+ #
2291
+ # @!attribute [rw] name
2292
+ # The name of a specific parameter used in a command and command
2293
+ # execution.
2294
+ # @return [String]
2295
+ #
2296
+ # @!attribute [rw] value
2297
+ # The value used to describe the command. When you assign a value to a
2298
+ # parameter, it will override any default value that you had already
2299
+ # specified.
2300
+ # @return [Types::CommandParameterValue]
2301
+ #
2302
+ # @!attribute [rw] default_value
2303
+ # The default value used to describe the command. This is the value
2304
+ # assumed by the parameter if no other value is assigned to it.
2305
+ # @return [Types::CommandParameterValue]
2306
+ #
2307
+ # @!attribute [rw] description
2308
+ # The description of the command parameter.
2309
+ # @return [String]
2310
+ #
2311
+ class CommandParameter < Struct.new(
2312
+ :name,
2313
+ :value,
2314
+ :default_value,
2315
+ :description)
2316
+ SENSITIVE = []
2317
+ include Aws::Structure
2318
+ end
2319
+
2320
+ # The range of possible values that's used to describe a specific
2321
+ # command parameter.
2322
+ #
2323
+ # <note markdown="1"> The `commandParameterValue` can only have one of the below fields
2324
+ # listed.
2325
+ #
2326
+ # </note>
2327
+ #
2328
+ # @!attribute [rw] s
2329
+ # An attribute of type String. For example:
2330
+ #
2331
+ # `"S": "Hello"`
2332
+ # @return [String]
2333
+ #
2334
+ # @!attribute [rw] b
2335
+ # An attribute of type Boolean. For example:
2336
+ #
2337
+ # `"BOOL": true`
2338
+ # @return [Boolean]
2339
+ #
2340
+ # @!attribute [rw] i
2341
+ # An attribute of type Integer (Thirty-Two Bits).
2342
+ # @return [Integer]
2343
+ #
2344
+ # @!attribute [rw] l
2345
+ # An attribute of type Long.
2346
+ # @return [Integer]
2347
+ #
2348
+ # @!attribute [rw] d
2349
+ # An attribute of type Double (Sixty-Four Bits).
2350
+ # @return [Float]
2351
+ #
2352
+ # @!attribute [rw] bin
2353
+ # An attribute of type Binary. For example:
2354
+ #
2355
+ # `"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"`
2356
+ # @return [String]
2357
+ #
2358
+ # @!attribute [rw] ul
2359
+ # An attribute of type unsigned long.
2360
+ # @return [String]
2361
+ #
2362
+ class CommandParameterValue < Struct.new(
2363
+ :s,
2364
+ :b,
2365
+ :i,
2366
+ :l,
2367
+ :d,
2368
+ :bin,
2369
+ :ul)
2370
+ SENSITIVE = []
2371
+ include Aws::Structure
2372
+ end
2373
+
2374
+ # The command payload object that contains the instructions for the
2375
+ # device to process.
2376
+ #
2377
+ # @!attribute [rw] content
2378
+ # The static payload file for the command.
2379
+ # @return [String]
2380
+ #
2381
+ # @!attribute [rw] content_type
2382
+ # The content type that specifies the format type of the payload file.
2383
+ # This field must use a type/subtype format, such as
2384
+ # `application/json`. For information about various content types, see
2385
+ # [Common MIME types][1].
2386
+ #
2387
+ #
2388
+ #
2389
+ # [1]: https://developer.mozilla.org/en-US/docs/Web/HTTP/MIME_types/Common_types
2390
+ # @return [String]
2391
+ #
2392
+ class CommandPayload < Struct.new(
2393
+ :content,
2394
+ :content_type)
2395
+ SENSITIVE = []
2396
+ include Aws::Structure
2397
+ end
2398
+
2399
+ # Summary information about a particular command resource.
2400
+ #
2401
+ # @!attribute [rw] command_arn
2402
+ # The Amazon Resource Name (ARN) of the command.
2403
+ # @return [String]
2404
+ #
2405
+ # @!attribute [rw] command_id
2406
+ # The unique identifier of the command.
2407
+ # @return [String]
2408
+ #
2409
+ # @!attribute [rw] display_name
2410
+ # The display name of the command.
2411
+ # @return [String]
2412
+ #
2413
+ # @!attribute [rw] deprecated
2414
+ # Indicates whether the command has been deprecated.
2415
+ # @return [Boolean]
2416
+ #
2417
+ # @!attribute [rw] created_at
2418
+ # The timestamp, when the command was created.
2419
+ # @return [Time]
2420
+ #
2421
+ # @!attribute [rw] last_updated_at
2422
+ # The timestamp, when the command was last updated.
2423
+ # @return [Time]
2424
+ #
2425
+ # @!attribute [rw] pending_deletion
2426
+ # Indicates whether the command is pending deletion.
2427
+ # @return [Boolean]
2428
+ #
2429
+ class CommandSummary < Struct.new(
2430
+ :command_arn,
2431
+ :command_id,
2432
+ :display_name,
2433
+ :deprecated,
2434
+ :created_at,
2435
+ :last_updated_at,
2436
+ :pending_deletion)
2437
+ SENSITIVE = []
2438
+ include Aws::Structure
2439
+ end
2440
+
2192
2441
  # Configuration.
2193
2442
  #
2194
2443
  # @!attribute [rw] enabled
@@ -2214,7 +2463,7 @@ module Aws::IoT
2214
2463
 
2215
2464
  class ConfirmTopicRuleDestinationResponse < Aws::EmptyStructure; end
2216
2465
 
2217
- # A resource with the same name already exists.
2466
+ # The request conflicts with the current state of the resource.
2218
2467
  #
2219
2468
  # @!attribute [rw] message
2220
2469
  # @return [String]
@@ -2504,6 +2753,84 @@ module Aws::IoT
2504
2753
  include Aws::Structure
2505
2754
  end
2506
2755
 
2756
+ # @!attribute [rw] command_id
2757
+ # A unique identifier for the command. We recommend using UUID.
2758
+ # Alpha-numeric characters, hyphens, and underscores are valid for use
2759
+ # here.
2760
+ # @return [String]
2761
+ #
2762
+ # @!attribute [rw] namespace
2763
+ # The namespace of the command. The MQTT reserved topics and
2764
+ # validations will be used for command executions according to the
2765
+ # namespace setting.
2766
+ # @return [String]
2767
+ #
2768
+ # @!attribute [rw] display_name
2769
+ # The user-friendly name in the console for the command. This name
2770
+ # doesn't have to be unique. You can update the user-friendly name
2771
+ # after you define it.
2772
+ # @return [String]
2773
+ #
2774
+ # @!attribute [rw] description
2775
+ # A short text decription of the command.
2776
+ # @return [String]
2777
+ #
2778
+ # @!attribute [rw] payload
2779
+ # The payload object for the command. You must specify this
2780
+ # information when using the `AWS-IoT` namespace.
2781
+ #
2782
+ # You can upload a static payload file from your local storage that
2783
+ # contains the instructions for the device to process. The payload
2784
+ # file can use any format. To make sure that the device correctly
2785
+ # interprets the payload, we recommend you to specify the payload
2786
+ # content type.
2787
+ # @return [Types::CommandPayload]
2788
+ #
2789
+ # @!attribute [rw] mandatory_parameters
2790
+ # A list of parameters that are required by the
2791
+ # `StartCommandExecution` API. These parameters need to be specified
2792
+ # only when using the `AWS-IoT-FleetWise` namespace. You can either
2793
+ # specify them here or when running the command using the
2794
+ # `StartCommandExecution` API.
2795
+ # @return [Array<Types::CommandParameter>]
2796
+ #
2797
+ # @!attribute [rw] role_arn
2798
+ # The IAM role that allows access to create the command.
2799
+ # @return [String]
2800
+ #
2801
+ # @!attribute [rw] tags
2802
+ # Name-value pairs that are used as metadata to manage a command.
2803
+ # @return [Array<Types::Tag>]
2804
+ #
2805
+ class CreateCommandRequest < Struct.new(
2806
+ :command_id,
2807
+ :namespace,
2808
+ :display_name,
2809
+ :description,
2810
+ :payload,
2811
+ :mandatory_parameters,
2812
+ :role_arn,
2813
+ :tags)
2814
+ SENSITIVE = []
2815
+ include Aws::Structure
2816
+ end
2817
+
2818
+ # @!attribute [rw] command_id
2819
+ # The unique identifier for the command.
2820
+ # @return [String]
2821
+ #
2822
+ # @!attribute [rw] command_arn
2823
+ # The Amazon Resource Number (ARN) of the command. For example,
2824
+ # `arn:aws:iot:<region>:<accountid>:command/<commandId>`
2825
+ # @return [String]
2826
+ #
2827
+ class CreateCommandResponse < Struct.new(
2828
+ :command_id,
2829
+ :command_arn)
2830
+ SENSITIVE = []
2831
+ include Aws::Structure
2832
+ end
2833
+
2507
2834
  # @!attribute [rw] metric_name
2508
2835
  # The name of the custom metric. This will be used in the metric
2509
2836
  # report submitted from the device/thing. The name can't begin with
@@ -2952,9 +3279,9 @@ module Aws::IoT
2952
3279
  end
2953
3280
 
2954
3281
  # @!attribute [rw] job_id
2955
- # A job identifier which must be unique for your Amazon Web Services
2956
- # account. We recommend using a UUID. Alpha-numeric characters, "-"
2957
- # and "\_" are valid for use here.
3282
+ # A job identifier which must be unique for your account. We recommend
3283
+ # using a UUID. Alpha-numeric characters, "-" and "\_" are valid
3284
+ # for use here.
2958
3285
  # @return [String]
2959
3286
  #
2960
3287
  # @!attribute [rw] targets
@@ -4483,6 +4810,59 @@ module Aws::IoT
4483
4810
  include Aws::Structure
4484
4811
  end
4485
4812
 
4813
+ # @!attribute [rw] execution_id
4814
+ # The unique identifier of the command execution that you want to
4815
+ # delete from your account.
4816
+ # @return [String]
4817
+ #
4818
+ # @!attribute [rw] target_arn
4819
+ # The Amazon Resource Number (ARN) of the target device for which you
4820
+ # want to delete command executions.
4821
+ # @return [String]
4822
+ #
4823
+ class DeleteCommandExecutionRequest < Struct.new(
4824
+ :execution_id,
4825
+ :target_arn)
4826
+ SENSITIVE = []
4827
+ include Aws::Structure
4828
+ end
4829
+
4830
+ class DeleteCommandExecutionResponse < Aws::EmptyStructure; end
4831
+
4832
+ # @!attribute [rw] command_id
4833
+ # The unique identifier of the command to be deleted.
4834
+ # @return [String]
4835
+ #
4836
+ class DeleteCommandRequest < Struct.new(
4837
+ :command_id)
4838
+ SENSITIVE = []
4839
+ include Aws::Structure
4840
+ end
4841
+
4842
+ # @!attribute [rw] status_code
4843
+ # The status code for the command deletion request. The status code is
4844
+ # in the 200 range for a successful request.
4845
+ #
4846
+ # * If the command hasn't been deprecated, or has been deprecated for
4847
+ # a duration that is shorter than the maximum time out duration of
4848
+ # 12 hours, when calling the `DeleteCommand` request, the deletion
4849
+ # will be scheduled and a 202 status code will be returned. While
4850
+ # the command is being deleted, it will be in a `pendingDeletion`
4851
+ # state. Once the time out duration has been reached, the command
4852
+ # will be permanently removed from your account.
4853
+ #
4854
+ # * If the command has been deprecated for a duration that is longer
4855
+ # than the maximum time out duration of 12 hours, when calling the
4856
+ # `DeleteCommand` request, the command will be deleted immediately
4857
+ # and a 204 status code will be returned.
4858
+ # @return [Integer]
4859
+ #
4860
+ class DeleteCommandResponse < Struct.new(
4861
+ :status_code)
4862
+ SENSITIVE = []
4863
+ include Aws::Structure
4864
+ end
4865
+
4486
4866
  # You can't delete the resource because it is attached to one or more
4487
4867
  # resources.
4488
4868
  #
@@ -5945,7 +6325,7 @@ module Aws::IoT
5945
6325
  # @return [String]
5946
6326
  #
5947
6327
  # @!attribute [rw] before_substitution
5948
- # A flag that provides a view of the job document before and after the
6328
+ # Provides a view of the job document before and after the
5949
6329
  # substitution parameters have been resolved with their exact values.
5950
6330
  # @return [Boolean]
5951
6331
  #
@@ -6729,8 +7109,8 @@ module Aws::IoT
6729
7109
  #
6730
7110
  # @!attribute [rw] thing_type_properties
6731
7111
  # The ThingTypeProperties contains information about the thing type
6732
- # including description, and a list of searchable thing attribute
6733
- # names.
7112
+ # including description, a list of searchable thing attribute names,
7113
+ # and MQTT5 configuration.
6734
7114
  # @return [Types::ThingTypeProperties]
6735
7115
  #
6736
7116
  # @!attribute [rw] thing_type_metadata
@@ -7608,6 +7988,201 @@ module Aws::IoT
7608
7988
  include Aws::Structure
7609
7989
  end
7610
7990
 
7991
+ # @!attribute [rw] execution_id
7992
+ # The unique identifier for the command execution. This information is
7993
+ # returned as a response of the `StartCommandExecution` API request.
7994
+ # @return [String]
7995
+ #
7996
+ # @!attribute [rw] target_arn
7997
+ # The Amazon Resource Number (ARN) of the device on which the command
7998
+ # execution is being performed.
7999
+ # @return [String]
8000
+ #
8001
+ # @!attribute [rw] include_result
8002
+ # Can be used to specify whether to include the result of the command
8003
+ # execution in the `GetCommandExecution` API response. Your device can
8004
+ # use this field to provide additional information about the command
8005
+ # execution. You only need to specify this field when using the
8006
+ # `AWS-IoT` namespace.
8007
+ # @return [Boolean]
8008
+ #
8009
+ class GetCommandExecutionRequest < Struct.new(
8010
+ :execution_id,
8011
+ :target_arn,
8012
+ :include_result)
8013
+ SENSITIVE = []
8014
+ include Aws::Structure
8015
+ end
8016
+
8017
+ # @!attribute [rw] execution_id
8018
+ # The unique identifier of the command execution.
8019
+ # @return [String]
8020
+ #
8021
+ # @!attribute [rw] command_arn
8022
+ # The Amazon Resource Number (ARN) of the command. For example,
8023
+ # ``arn:aws:iot:&lt;region&gt;:&lt;accountid&gt;:command/&lt;commandId&gt;
8024
+ # @return [String]
8025
+ #
8026
+ # @!attribute [rw] target_arn
8027
+ # The Amazon Resource Number (ARN) of the device on which the command
8028
+ # execution is being performed.
8029
+ # @return [String]
8030
+ #
8031
+ # @!attribute [rw] status
8032
+ # The status of the command execution. After your devices receive the
8033
+ # command and start performing the operations specified in the
8034
+ # command, it can use the `UpdateCommandExecution` MQTT API to update
8035
+ # the status information.
8036
+ # @return [String]
8037
+ #
8038
+ # @!attribute [rw] status_reason
8039
+ # Your devices can use this parameter to provide additional context
8040
+ # about the status of a command execution using a reason code and
8041
+ # description.
8042
+ # @return [Types::StatusReason]
8043
+ #
8044
+ # @!attribute [rw] result
8045
+ # The result value for the current state of the command execution. The
8046
+ # status provides information about the progress of the command
8047
+ # execution. The device can use the result field to share additional
8048
+ # details about the execution such as a return value of a remote
8049
+ # function call.
8050
+ #
8051
+ # <note markdown="1"> If you use the `AWS-IoT-FleetWise` namespace, then this field is not
8052
+ # applicable in the API response.
8053
+ #
8054
+ # </note>
8055
+ # @return [Hash<String,Types::CommandExecutionResult>]
8056
+ #
8057
+ # @!attribute [rw] parameters
8058
+ # The list of parameters that the `StartCommandExecution` API used
8059
+ # when performing the command on the device.
8060
+ # @return [Hash<String,Types::CommandParameterValue>]
8061
+ #
8062
+ # @!attribute [rw] execution_timeout_seconds
8063
+ # Specifies the amount of time in seconds that the device can take to
8064
+ # finish a command execution. A timer starts when the command
8065
+ # execution is created. If the command execution status is not set to
8066
+ # another terminal state before the timer expires, it will
8067
+ # automatically update to `TIMED_OUT`.
8068
+ # @return [Integer]
8069
+ #
8070
+ # @!attribute [rw] created_at
8071
+ # The timestamp, when the command execution was created.
8072
+ # @return [Time]
8073
+ #
8074
+ # @!attribute [rw] last_updated_at
8075
+ # The timestamp, when the command execution was last updated.
8076
+ # @return [Time]
8077
+ #
8078
+ # @!attribute [rw] started_at
8079
+ # The timestamp, when the command execution was started.
8080
+ # @return [Time]
8081
+ #
8082
+ # @!attribute [rw] completed_at
8083
+ # The timestamp, when the command execution was completed.
8084
+ # @return [Time]
8085
+ #
8086
+ # @!attribute [rw] time_to_live
8087
+ # The time to live (TTL) parameter for the `GetCommandExecution` API.
8088
+ # @return [Time]
8089
+ #
8090
+ class GetCommandExecutionResponse < Struct.new(
8091
+ :execution_id,
8092
+ :command_arn,
8093
+ :target_arn,
8094
+ :status,
8095
+ :status_reason,
8096
+ :result,
8097
+ :parameters,
8098
+ :execution_timeout_seconds,
8099
+ :created_at,
8100
+ :last_updated_at,
8101
+ :started_at,
8102
+ :completed_at,
8103
+ :time_to_live)
8104
+ SENSITIVE = []
8105
+ include Aws::Structure
8106
+ end
8107
+
8108
+ # @!attribute [rw] command_id
8109
+ # The unique identifier of the command for which you want to retrieve
8110
+ # information.
8111
+ # @return [String]
8112
+ #
8113
+ class GetCommandRequest < Struct.new(
8114
+ :command_id)
8115
+ SENSITIVE = []
8116
+ include Aws::Structure
8117
+ end
8118
+
8119
+ # @!attribute [rw] command_id
8120
+ # The unique identifier of the command.
8121
+ # @return [String]
8122
+ #
8123
+ # @!attribute [rw] command_arn
8124
+ # The Amazon Resource Number (ARN) of the command. For example,
8125
+ # `arn:aws:iot:<region>:<accountid>:command/<commandId>`
8126
+ # @return [String]
8127
+ #
8128
+ # @!attribute [rw] namespace
8129
+ # The namespace of the command.
8130
+ # @return [String]
8131
+ #
8132
+ # @!attribute [rw] display_name
8133
+ # The user-friendly name in the console for the command.
8134
+ # @return [String]
8135
+ #
8136
+ # @!attribute [rw] description
8137
+ # A short text description of the command.
8138
+ # @return [String]
8139
+ #
8140
+ # @!attribute [rw] mandatory_parameters
8141
+ # A list of parameters for the command created.
8142
+ # @return [Array<Types::CommandParameter>]
8143
+ #
8144
+ # @!attribute [rw] payload
8145
+ # The payload object that you provided for the command.
8146
+ # @return [Types::CommandPayload]
8147
+ #
8148
+ # @!attribute [rw] role_arn
8149
+ # The IAM role that allows access to retrieve information about the
8150
+ # command.
8151
+ # @return [String]
8152
+ #
8153
+ # @!attribute [rw] created_at
8154
+ # The timestamp, when the command was created.
8155
+ # @return [Time]
8156
+ #
8157
+ # @!attribute [rw] last_updated_at
8158
+ # The timestamp, when the command was last updated.
8159
+ # @return [Time]
8160
+ #
8161
+ # @!attribute [rw] deprecated
8162
+ # Indicates whether the command has been deprecated.
8163
+ # @return [Boolean]
8164
+ #
8165
+ # @!attribute [rw] pending_deletion
8166
+ # Indicates whether the command is being deleted.
8167
+ # @return [Boolean]
8168
+ #
8169
+ class GetCommandResponse < Struct.new(
8170
+ :command_id,
8171
+ :command_arn,
8172
+ :namespace,
8173
+ :display_name,
8174
+ :description,
8175
+ :mandatory_parameters,
8176
+ :payload,
8177
+ :role_arn,
8178
+ :created_at,
8179
+ :last_updated_at,
8180
+ :deprecated,
8181
+ :pending_deletion)
8182
+ SENSITIVE = []
8183
+ include Aws::Structure
8184
+ end
8185
+
7611
8186
  # @!attribute [rw] principal
7612
8187
  # The principal. Valid principals are CertificateArn
7613
8188
  # (arn:aws:iot:*region*:*accountId*:cert/*certificateId*),
@@ -7666,7 +8241,7 @@ module Aws::IoT
7666
8241
  # @return [String]
7667
8242
  #
7668
8243
  # @!attribute [rw] before_substitution
7669
- # A flag that provides a view of the job document before and after the
8244
+ # Provides a view of the job document before and after the
7670
8245
  # substitution parameters have been resolved with their exact values.
7671
8246
  # @return [Boolean]
7672
8247
  #
@@ -9906,37 +10481,177 @@ module Aws::IoT
9906
10481
  # The result page size.
9907
10482
  # @return [Integer]
9908
10483
  #
9909
- # @!attribute [rw] marker
9910
- # The marker for the next set of results.
10484
+ # @!attribute [rw] marker
10485
+ # The marker for the next set of results.
10486
+ # @return [String]
10487
+ #
10488
+ # @!attribute [rw] ascending_order
10489
+ # Specifies the order for results. If True, the results are returned
10490
+ # in ascending order, based on the creation date.
10491
+ # @return [Boolean]
10492
+ #
10493
+ class ListCertificatesRequest < Struct.new(
10494
+ :page_size,
10495
+ :marker,
10496
+ :ascending_order)
10497
+ SENSITIVE = []
10498
+ include Aws::Structure
10499
+ end
10500
+
10501
+ # The output of the ListCertificates operation.
10502
+ #
10503
+ # @!attribute [rw] certificates
10504
+ # The descriptions of the certificates.
10505
+ # @return [Array<Types::Certificate>]
10506
+ #
10507
+ # @!attribute [rw] next_marker
10508
+ # The marker for the next set of results, or null if there are no
10509
+ # additional results.
10510
+ # @return [String]
10511
+ #
10512
+ class ListCertificatesResponse < Struct.new(
10513
+ :certificates,
10514
+ :next_marker)
10515
+ SENSITIVE = []
10516
+ include Aws::Structure
10517
+ end
10518
+
10519
+ # @!attribute [rw] max_results
10520
+ # The maximum number of results to return in this operation.
10521
+ # @return [Integer]
10522
+ #
10523
+ # @!attribute [rw] next_token
10524
+ # To retrieve the next set of results, the `nextToken` value from a
10525
+ # previous response; otherwise `null` to receive the first set of
10526
+ # results.
10527
+ # @return [String]
10528
+ #
10529
+ # @!attribute [rw] namespace
10530
+ # The namespace of the command.
10531
+ # @return [String]
10532
+ #
10533
+ # @!attribute [rw] status
10534
+ # List all command executions for the device that have a particular
10535
+ # status. For example, you can filter the list to display only command
10536
+ # executions that have failed or timed out.
10537
+ # @return [String]
10538
+ #
10539
+ # @!attribute [rw] sort_order
10540
+ # Specify whether to list the command executions that were created in
10541
+ # the ascending or descending order. By default, the API returns all
10542
+ # commands in the descending order based on the start time or
10543
+ # completion time of the executions, that are determined by the
10544
+ # `startTimeFilter` and `completeTimeFilter` parameters.
10545
+ # @return [String]
10546
+ #
10547
+ # @!attribute [rw] started_time_filter
10548
+ # List all command executions that started any time before or after
10549
+ # the date and time that you specify. The date and time uses the
10550
+ # format `yyyy-MM-dd'T'HH:mm`.
10551
+ # @return [Types::TimeFilter]
10552
+ #
10553
+ # @!attribute [rw] completed_time_filter
10554
+ # List all command executions that completed any time before or after
10555
+ # the date and time that you specify. The date and time uses the
10556
+ # format `yyyy-MM-dd'T'HH:mm`.
10557
+ # @return [Types::TimeFilter]
10558
+ #
10559
+ # @!attribute [rw] target_arn
10560
+ # The Amazon Resource Number (ARN) of the target device. You can use
10561
+ # this information to list all command executions for a particular
10562
+ # device.
10563
+ # @return [String]
10564
+ #
10565
+ # @!attribute [rw] command_arn
10566
+ # The Amazon Resource Number (ARN) of the command. You can use this
10567
+ # information to list all command executions for a particular command.
10568
+ # @return [String]
10569
+ #
10570
+ class ListCommandExecutionsRequest < Struct.new(
10571
+ :max_results,
10572
+ :next_token,
10573
+ :namespace,
10574
+ :status,
10575
+ :sort_order,
10576
+ :started_time_filter,
10577
+ :completed_time_filter,
10578
+ :target_arn,
10579
+ :command_arn)
10580
+ SENSITIVE = []
10581
+ include Aws::Structure
10582
+ end
10583
+
10584
+ # @!attribute [rw] command_executions
10585
+ # The list of command executions.
10586
+ # @return [Array<Types::CommandExecutionSummary>]
10587
+ #
10588
+ # @!attribute [rw] next_token
10589
+ # The token to use to get the next set of results, or `null` if there
10590
+ # are no additional results.
10591
+ # @return [String]
10592
+ #
10593
+ class ListCommandExecutionsResponse < Struct.new(
10594
+ :command_executions,
10595
+ :next_token)
10596
+ SENSITIVE = []
10597
+ include Aws::Structure
10598
+ end
10599
+
10600
+ # @!attribute [rw] max_results
10601
+ # The maximum number of results to return in this operation. By
10602
+ # default, the API returns up to a maximum of 25 results. You can
10603
+ # override this default value to return up to a maximum of 100 results
10604
+ # for this operation.
10605
+ # @return [Integer]
10606
+ #
10607
+ # @!attribute [rw] next_token
10608
+ # To retrieve the next set of results, the `nextToken` value from a
10609
+ # previous response; otherwise `null` to receive the first set of
10610
+ # results.
9911
10611
  # @return [String]
9912
10612
  #
9913
- # @!attribute [rw] ascending_order
9914
- # Specifies the order for results. If True, the results are returned
9915
- # in ascending order, based on the creation date.
9916
- # @return [Boolean]
10613
+ # @!attribute [rw] namespace
10614
+ # The namespace of the command. By default, the API returns all
10615
+ # commands that have been created for both `AWS-IoT` and
10616
+ # `AWS-IoT-FleetWise` namespaces. You can override this default value
10617
+ # if you want to return all commands that have been created only for a
10618
+ # specific namespace.
10619
+ # @return [String]
9917
10620
  #
9918
- class ListCertificatesRequest < Struct.new(
9919
- :page_size,
9920
- :marker,
9921
- :ascending_order)
10621
+ # @!attribute [rw] command_parameter_name
10622
+ # A filter that can be used to display the list of commands that have
10623
+ # a specific command parameter name.
10624
+ # @return [String]
10625
+ #
10626
+ # @!attribute [rw] sort_order
10627
+ # Specify whether to list the commands that you have created in the
10628
+ # ascending or descending order. By default, the API returns all
10629
+ # commands in the descending order based on the time that they were
10630
+ # created.
10631
+ # @return [String]
10632
+ #
10633
+ class ListCommandsRequest < Struct.new(
10634
+ :max_results,
10635
+ :next_token,
10636
+ :namespace,
10637
+ :command_parameter_name,
10638
+ :sort_order)
9922
10639
  SENSITIVE = []
9923
10640
  include Aws::Structure
9924
10641
  end
9925
10642
 
9926
- # The output of the ListCertificates operation.
9927
- #
9928
- # @!attribute [rw] certificates
9929
- # The descriptions of the certificates.
9930
- # @return [Array<Types::Certificate>]
10643
+ # @!attribute [rw] commands
10644
+ # The list of commands.
10645
+ # @return [Array<Types::CommandSummary>]
9931
10646
  #
9932
- # @!attribute [rw] next_marker
9933
- # The marker for the next set of results, or null if there are no
9934
- # additional results.
10647
+ # @!attribute [rw] next_token
10648
+ # The token to use to get the next set of results, or `null` if there
10649
+ # are no additional results.
9935
10650
  # @return [String]
9936
10651
  #
9937
- class ListCertificatesResponse < Struct.new(
9938
- :certificates,
9939
- :next_marker)
10652
+ class ListCommandsResponse < Struct.new(
10653
+ :commands,
10654
+ :next_token)
9940
10655
  SENSITIVE = []
9941
10656
  include Aws::Structure
9942
10657
  end
@@ -10930,6 +11645,66 @@ module Aws::IoT
10930
11645
  include Aws::Structure
10931
11646
  end
10932
11647
 
11648
+ # @!attribute [rw] next_token
11649
+ # To retrieve the next set of results, the `nextToken` value from a
11650
+ # previous response; otherwise **null** to receive the first set of
11651
+ # results.
11652
+ # @return [String]
11653
+ #
11654
+ # @!attribute [rw] max_results
11655
+ # The maximum number of results to return in this operation.
11656
+ # @return [Integer]
11657
+ #
11658
+ # @!attribute [rw] principal
11659
+ # The principal. A principal can be an X.509 certificate or an Amazon
11660
+ # Cognito ID.
11661
+ # @return [String]
11662
+ #
11663
+ # @!attribute [rw] thing_principal_type
11664
+ # The type of the relation you want to filter in the response. If no
11665
+ # value is provided in this field, the response will list all things,
11666
+ # including both the `EXCLUSIVE_THING` and `NON_EXCLUSIVE_THING`
11667
+ # attachment types.
11668
+ #
11669
+ # * `EXCLUSIVE_THING` - Attaches the specified principal to the
11670
+ # specified thing, exclusively. The thing will be the only thing
11671
+ # that’s attached to the principal.
11672
+ #
11673
+ # ^
11674
+ # ^
11675
+ #
11676
+ # * `NON_EXCLUSIVE_THING` - Attaches the specified principal to the
11677
+ # specified thing. Multiple things can be attached to the principal.
11678
+ #
11679
+ # ^
11680
+ # @return [String]
11681
+ #
11682
+ class ListPrincipalThingsV2Request < Struct.new(
11683
+ :next_token,
11684
+ :max_results,
11685
+ :principal,
11686
+ :thing_principal_type)
11687
+ SENSITIVE = []
11688
+ include Aws::Structure
11689
+ end
11690
+
11691
+ # @!attribute [rw] principal_thing_objects
11692
+ # A list of `thingPrincipalObject` that represents the principal and
11693
+ # the type of relation it has with the thing.
11694
+ # @return [Array<Types::PrincipalThingObject>]
11695
+ #
11696
+ # @!attribute [rw] next_token
11697
+ # The token to use to get the next set of results, or **null** if
11698
+ # there are no additional results.
11699
+ # @return [String]
11700
+ #
11701
+ class ListPrincipalThingsV2Response < Struct.new(
11702
+ :principal_thing_objects,
11703
+ :next_token)
11704
+ SENSITIVE = []
11705
+ include Aws::Structure
11706
+ end
11707
+
10933
11708
  # @!attribute [rw] template_name
10934
11709
  # The name of the provisioning template.
10935
11710
  # @return [String]
@@ -11500,6 +12275,65 @@ module Aws::IoT
11500
12275
  include Aws::Structure
11501
12276
  end
11502
12277
 
12278
+ # @!attribute [rw] next_token
12279
+ # To retrieve the next set of results, the `nextToken` value from a
12280
+ # previous response; otherwise **null** to receive the first set of
12281
+ # results.
12282
+ # @return [String]
12283
+ #
12284
+ # @!attribute [rw] max_results
12285
+ # The maximum number of results to return in this operation.
12286
+ # @return [Integer]
12287
+ #
12288
+ # @!attribute [rw] thing_name
12289
+ # The name of the thing.
12290
+ # @return [String]
12291
+ #
12292
+ # @!attribute [rw] thing_principal_type
12293
+ # The type of the relation you want to filter in the response. If no
12294
+ # value is provided in this field, the response will list all
12295
+ # principals, including both the `EXCLUSIVE_THING` and
12296
+ # `NON_EXCLUSIVE_THING` attachment types.
12297
+ #
12298
+ # * `EXCLUSIVE_THING` - Attaches the specified principal to the
12299
+ # specified thing, exclusively. The thing will be the only thing
12300
+ # that’s attached to the principal.
12301
+ #
12302
+ # ^
12303
+ # ^
12304
+ #
12305
+ # * `NON_EXCLUSIVE_THING` - Attaches the specified principal to the
12306
+ # specified thing. Multiple things can be attached to the principal.
12307
+ #
12308
+ # ^
12309
+ # @return [String]
12310
+ #
12311
+ class ListThingPrincipalsV2Request < Struct.new(
12312
+ :next_token,
12313
+ :max_results,
12314
+ :thing_name,
12315
+ :thing_principal_type)
12316
+ SENSITIVE = []
12317
+ include Aws::Structure
12318
+ end
12319
+
12320
+ # @!attribute [rw] thing_principal_objects
12321
+ # A list of `thingPrincipalObject` that represents the principal and
12322
+ # the type of relation it has with the thing.
12323
+ # @return [Array<Types::ThingPrincipalObject>]
12324
+ #
12325
+ # @!attribute [rw] next_token
12326
+ # The token to use to get the next set of results, or **null** if
12327
+ # there are no additional results.
12328
+ # @return [String]
12329
+ #
12330
+ class ListThingPrincipalsV2Response < Struct.new(
12331
+ :thing_principal_objects,
12332
+ :next_token)
12333
+ SENSITIVE = []
12334
+ include Aws::Structure
12335
+ end
12336
+
11503
12337
  # @!attribute [rw] task_id
11504
12338
  # The id of the task.
11505
12339
  # @return [String]
@@ -12377,6 +13211,20 @@ module Aws::IoT
12377
13211
  include Aws::Structure
12378
13212
  end
12379
13213
 
13214
+ # The configuration to add user-defined properties to enrich MQTT 5
13215
+ # messages.
13216
+ #
13217
+ # @!attribute [rw] propagating_attributes
13218
+ # An object that represents the propagating thing attributes and the
13219
+ # connection attributes.
13220
+ # @return [Array<Types::PropagatingAttribute>]
13221
+ #
13222
+ class Mqtt5Configuration < Struct.new(
13223
+ :propagating_attributes)
13224
+ SENSITIVE = []
13225
+ include Aws::Structure
13226
+ end
13227
+
12380
13228
  # Specifies the MQTT context to use for the test authorizer request
12381
13229
  #
12382
13230
  # @!attribute [rw] username
@@ -12950,6 +13798,62 @@ module Aws::IoT
12950
13798
  include Aws::Structure
12951
13799
  end
12952
13800
 
13801
+ # An object that represents the thing and the type of relation it has
13802
+ # with the principal.
13803
+ #
13804
+ # @!attribute [rw] thing_name
13805
+ # The name of the thing.
13806
+ # @return [String]
13807
+ #
13808
+ # @!attribute [rw] thing_principal_type
13809
+ # The type of the relation you want to specify when you attach a
13810
+ # principal to a thing. The value defaults to `NON_EXCLUSIVE_THING`.
13811
+ #
13812
+ # * `EXCLUSIVE_THING` - Attaches the specified principal to the
13813
+ # specified thing, exclusively. The thing will be the only thing
13814
+ # that’s attached to the principal.
13815
+ #
13816
+ # ^
13817
+ # ^
13818
+ #
13819
+ # * `NON_EXCLUSIVE_THING` - Attaches the specified principal to the
13820
+ # specified thing. Multiple things can be attached to the principal.
13821
+ #
13822
+ # ^
13823
+ # @return [String]
13824
+ #
13825
+ class PrincipalThingObject < Struct.new(
13826
+ :thing_name,
13827
+ :thing_principal_type)
13828
+ SENSITIVE = []
13829
+ include Aws::Structure
13830
+ end
13831
+
13832
+ # An object that represents the connection attribute, thing attribute,
13833
+ # and the user property key.
13834
+ #
13835
+ # @!attribute [rw] user_property_key
13836
+ # The key of the user property key-value pair.
13837
+ # @return [String]
13838
+ #
13839
+ # @!attribute [rw] thing_attribute
13840
+ # The user-defined thing attribute that is propagating for MQTT 5
13841
+ # message enrichment.
13842
+ # @return [String]
13843
+ #
13844
+ # @!attribute [rw] connection_attribute
13845
+ # The attribute associated with the connection between a device and
13846
+ # Amazon Web Services IoT Core.
13847
+ # @return [String]
13848
+ #
13849
+ class PropagatingAttribute < Struct.new(
13850
+ :user_property_key,
13851
+ :thing_attribute,
13852
+ :connection_attribute)
13853
+ SENSITIVE = []
13854
+ include Aws::Structure
13855
+ end
13856
+
12953
13857
  # Structure that contains `payloadVersion` and `targetArn`.
12954
13858
  #
12955
13859
  # @!attribute [rw] payload_version
@@ -14090,17 +14994,47 @@ module Aws::IoT
14090
14994
  # A Boolean value that indicates whether Online Certificate Status
14091
14995
  # Protocol (OCSP) server certificate check is enabled or not.
14092
14996
  #
14093
- # For more information, see [Configuring OCSP server-certificate
14094
- # stapling in domain configuration][1] from Amazon Web Services IoT
14095
- # Core Developer Guide.
14997
+ # For more information, see [ Server certificate configuration for
14998
+ # OCSP stapling][1] from Amazon Web Services IoT Core Developer Guide.
14096
14999
  #
14097
15000
  #
14098
15001
  #
14099
15002
  # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/iot-custom-endpoints-cert-config.html
14100
15003
  # @return [Boolean]
14101
15004
  #
15005
+ # @!attribute [rw] ocsp_lambda_arn
15006
+ # The Amazon Resource Name (ARN) for a Lambda function that acts as a
15007
+ # Request for Comments (RFC) 6960-compliant Online Certificate Status
15008
+ # Protocol (OCSP) responder, supporting basic OCSP responses. The
15009
+ # Lambda function accepts a base64-encoding of the OCSP request in the
15010
+ # Distinguished Encoding Rules (DER) format. The Lambda function's
15011
+ # response is also a base64-encoded OCSP response in the DER format.
15012
+ # The response size must not exceed 4 kilobytes (KiB). The Lambda
15013
+ # function must be in the same Amazon Web Services account and region
15014
+ # as the domain configuration. For more information, see [Configuring
15015
+ # server certificate OCSP for private endpoints in Amazon Web Services
15016
+ # IoT Core][1] from the Amazon Web Services IoT Core developer guide.
15017
+ #
15018
+ #
15019
+ #
15020
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/iot-custom-endpoints-cert-config.html#iot-custom-endpoints-cert-config-ocsp-private-endpoint.html
15021
+ # @return [String]
15022
+ #
15023
+ # @!attribute [rw] ocsp_authorized_responder_arn
15024
+ # The Amazon Resource Name (ARN) for an X.509 certificate stored in
15025
+ # Amazon Web Services Certificate Manager (ACM). If provided, Amazon
15026
+ # Web Services IoT Core will use this certificate to validate the
15027
+ # signature of the received OCSP response. The OCSP responder must
15028
+ # sign responses using either this authorized responder certificate or
15029
+ # the issuing certificate, depending on whether the ARN is provided or
15030
+ # not. The certificate must be in the same Amazon Web Services account
15031
+ # and region as the domain configuration.
15032
+ # @return [String]
15033
+ #
14102
15034
  class ServerCertificateConfig < Struct.new(
14103
- :enable_ocsp_check)
15035
+ :enable_ocsp_check,
15036
+ :ocsp_lambda_arn,
15037
+ :ocsp_authorized_responder_arn)
14104
15038
  SENSITIVE = []
14105
15039
  include Aws::Structure
14106
15040
  end
@@ -14127,7 +15061,7 @@ module Aws::IoT
14127
15061
  include Aws::Structure
14128
15062
  end
14129
15063
 
14130
- # A limit has been exceeded.
15064
+ # Service quota has been exceeded.
14131
15065
  #
14132
15066
  # @!attribute [rw] message
14133
15067
  # @return [String]
@@ -14618,6 +15552,26 @@ module Aws::IoT
14618
15552
  include Aws::Structure
14619
15553
  end
14620
15554
 
15555
+ # Provide additional context about the status of a command execution
15556
+ # using a reason code and description.
15557
+ #
15558
+ # @!attribute [rw] reason_code
15559
+ # A code that provides additional context for the command execution
15560
+ # status.
15561
+ # @return [String]
15562
+ #
15563
+ # @!attribute [rw] reason_description
15564
+ # A literal string for devices to optionally provide additional
15565
+ # information about the reason code for a command execution status.
15566
+ # @return [String]
15567
+ #
15568
+ class StatusReason < Struct.new(
15569
+ :reason_code,
15570
+ :reason_description)
15571
+ SENSITIVE = []
15572
+ include Aws::Structure
15573
+ end
15574
+
14621
15575
  # Starts execution of a Step Functions state machine.
14622
15576
  #
14623
15577
  # @!attribute [rw] execution_name_prefix
@@ -15376,6 +16330,37 @@ module Aws::IoT
15376
16330
  include Aws::Structure
15377
16331
  end
15378
16332
 
16333
+ # An object that represents the principal and the type of relation it
16334
+ # has with the thing.
16335
+ #
16336
+ # @!attribute [rw] principal
16337
+ # The principal of the thing principal object.
16338
+ # @return [String]
16339
+ #
16340
+ # @!attribute [rw] thing_principal_type
16341
+ # The type of the relation you want to specify when you attach a
16342
+ # principal to a thing. The value defaults to `NON_EXCLUSIVE_THING`.
16343
+ #
16344
+ # * `EXCLUSIVE_THING` - Attaches the specified principal to the
16345
+ # specified thing, exclusively. The thing will be the only thing
16346
+ # that’s attached to the principal.
16347
+ #
16348
+ # ^
16349
+ # ^
16350
+ #
16351
+ # * `NON_EXCLUSIVE_THING` - Attaches the specified principal to the
16352
+ # specified thing. Multiple things can be attached to the principal.
16353
+ #
16354
+ # ^
16355
+ # @return [String]
16356
+ #
16357
+ class ThingPrincipalObject < Struct.new(
16358
+ :principal,
16359
+ :thing_principal_type)
16360
+ SENSITIVE = []
16361
+ include Aws::Structure
16362
+ end
16363
+
15379
16364
  # The definition of the thing type, including thing type name and
15380
16365
  # description.
15381
16366
  #
@@ -15445,9 +16430,15 @@ module Aws::IoT
15445
16430
  # A list of searchable thing attribute names.
15446
16431
  # @return [Array<String>]
15447
16432
  #
16433
+ # @!attribute [rw] mqtt5_configuration
16434
+ # The configuration to add user-defined properties to enrich MQTT 5
16435
+ # messages.
16436
+ # @return [Types::Mqtt5Configuration]
16437
+ #
15448
16438
  class ThingTypeProperties < Struct.new(
15449
16439
  :thing_type_description,
15450
- :searchable_attributes)
16440
+ :searchable_attributes,
16441
+ :mqtt5_configuration)
15451
16442
  SENSITIVE = []
15452
16443
  include Aws::Structure
15453
16444
  end
@@ -15464,6 +16455,26 @@ module Aws::IoT
15464
16455
  include Aws::Structure
15465
16456
  end
15466
16457
 
16458
+ # A filter that can be used to list command executions for a device that
16459
+ # started or completed before or after a particular date and time.
16460
+ #
16461
+ # @!attribute [rw] after
16462
+ # Filter to display command executions that started or completed only
16463
+ # after a particular date and time.
16464
+ # @return [String]
16465
+ #
16466
+ # @!attribute [rw] before
16467
+ # Filter to display command executions that started or completed only
16468
+ # before a particular date and time.
16469
+ # @return [String]
16470
+ #
16471
+ class TimeFilter < Struct.new(
16472
+ :after,
16473
+ :before)
16474
+ SENSITIVE = []
16475
+ include Aws::Structure
16476
+ end
16477
+
15467
16478
  # Specifies the amount of time each device has to finish its execution
15468
16479
  # of the job. A timer is started when the job execution status is set to
15469
16480
  # `IN_PROGRESS`. If the job execution status is not set to another
@@ -16287,6 +17298,64 @@ module Aws::IoT
16287
17298
  include Aws::Structure
16288
17299
  end
16289
17300
 
17301
+ # @!attribute [rw] command_id
17302
+ # The unique identifier of the command to be updated.
17303
+ # @return [String]
17304
+ #
17305
+ # @!attribute [rw] display_name
17306
+ # The new user-friendly name to use in the console for the command.
17307
+ # @return [String]
17308
+ #
17309
+ # @!attribute [rw] description
17310
+ # A short text description of the command.
17311
+ # @return [String]
17312
+ #
17313
+ # @!attribute [rw] deprecated
17314
+ # A boolean that you can use to specify whether to deprecate a
17315
+ # command.
17316
+ # @return [Boolean]
17317
+ #
17318
+ class UpdateCommandRequest < Struct.new(
17319
+ :command_id,
17320
+ :display_name,
17321
+ :description,
17322
+ :deprecated)
17323
+ SENSITIVE = []
17324
+ include Aws::Structure
17325
+ end
17326
+
17327
+ # @!attribute [rw] command_id
17328
+ # The unique identifier of the command.
17329
+ # @return [String]
17330
+ #
17331
+ # @!attribute [rw] display_name
17332
+ # The updated user-friendly display name in the console for the
17333
+ # command.
17334
+ # @return [String]
17335
+ #
17336
+ # @!attribute [rw] description
17337
+ # The updated text description of the command.
17338
+ # @return [String]
17339
+ #
17340
+ # @!attribute [rw] deprecated
17341
+ # The boolean that indicates whether the command was deprecated.
17342
+ # @return [Boolean]
17343
+ #
17344
+ # @!attribute [rw] last_updated_at
17345
+ # The date and time (epoch timestamp in seconds) when the command was
17346
+ # last updated.
17347
+ # @return [Time]
17348
+ #
17349
+ class UpdateCommandResponse < Struct.new(
17350
+ :command_id,
17351
+ :display_name,
17352
+ :description,
17353
+ :deprecated,
17354
+ :last_updated_at)
17355
+ SENSITIVE = []
17356
+ include Aws::Structure
17357
+ end
17358
+
16290
17359
  # @!attribute [rw] metric_name
16291
17360
  # The name of the custom metric. Cannot be updated.
16292
17361
  # @return [String]
@@ -17383,6 +18452,25 @@ module Aws::IoT
17383
18452
  #
17384
18453
  class UpdateThingResponse < Aws::EmptyStructure; end
17385
18454
 
18455
+ # @!attribute [rw] thing_type_name
18456
+ # The name of a thing type.
18457
+ # @return [String]
18458
+ #
18459
+ # @!attribute [rw] thing_type_properties
18460
+ # The ThingTypeProperties contains information about the thing type
18461
+ # including: a thing type description, and a list of searchable thing
18462
+ # attribute names.
18463
+ # @return [Types::ThingTypeProperties]
18464
+ #
18465
+ class UpdateThingTypeRequest < Struct.new(
18466
+ :thing_type_name,
18467
+ :thing_type_properties)
18468
+ SENSITIVE = []
18469
+ include Aws::Structure
18470
+ end
18471
+
18472
+ class UpdateThingTypeResponse < Aws::EmptyStructure; end
18473
+
17386
18474
  # @!attribute [rw] arn
17387
18475
  # The ARN of the topic rule destination.
17388
18476
  # @return [String]