aws-sdk-iot 1.139.0 → 1.140.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -2207,6 +2207,237 @@ module Aws::IoT
2207
2207
  include Aws::Structure
2208
2208
  end
2209
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
+
2210
2441
  # Configuration.
2211
2442
  #
2212
2443
  # @!attribute [rw] enabled
@@ -2232,7 +2463,7 @@ module Aws::IoT
2232
2463
 
2233
2464
  class ConfirmTopicRuleDestinationResponse < Aws::EmptyStructure; end
2234
2465
 
2235
- # A resource with the same name already exists.
2466
+ # The request conflicts with the current state of the resource.
2236
2467
  #
2237
2468
  # @!attribute [rw] message
2238
2469
  # @return [String]
@@ -2522,6 +2753,84 @@ module Aws::IoT
2522
2753
  include Aws::Structure
2523
2754
  end
2524
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
+
2525
2834
  # @!attribute [rw] metric_name
2526
2835
  # The name of the custom metric. This will be used in the metric
2527
2836
  # report submitted from the device/thing. The name can't begin with
@@ -2970,9 +3279,9 @@ module Aws::IoT
2970
3279
  end
2971
3280
 
2972
3281
  # @!attribute [rw] job_id
2973
- # A job identifier which must be unique for your Amazon Web Services
2974
- # account. We recommend using a UUID. Alpha-numeric characters, "-"
2975
- # 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.
2976
3285
  # @return [String]
2977
3286
  #
2978
3287
  # @!attribute [rw] targets
@@ -4501,6 +4810,59 @@ module Aws::IoT
4501
4810
  include Aws::Structure
4502
4811
  end
4503
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
+
4504
4866
  # You can't delete the resource because it is attached to one or more
4505
4867
  # resources.
4506
4868
  #
@@ -5963,7 +6325,7 @@ module Aws::IoT
5963
6325
  # @return [String]
5964
6326
  #
5965
6327
  # @!attribute [rw] before_substitution
5966
- # 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
5967
6329
  # substitution parameters have been resolved with their exact values.
5968
6330
  # @return [Boolean]
5969
6331
  #
@@ -7626,6 +7988,201 @@ module Aws::IoT
7626
7988
  include Aws::Structure
7627
7989
  end
7628
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
+
7629
8186
  # @!attribute [rw] principal
7630
8187
  # The principal. Valid principals are CertificateArn
7631
8188
  # (arn:aws:iot:*region*:*accountId*:cert/*certificateId*),
@@ -7684,7 +8241,7 @@ module Aws::IoT
7684
8241
  # @return [String]
7685
8242
  #
7686
8243
  # @!attribute [rw] before_substitution
7687
- # 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
7688
8245
  # substitution parameters have been resolved with their exact values.
7689
8246
  # @return [Boolean]
7690
8247
  #
@@ -9959,6 +10516,146 @@ module Aws::IoT
9959
10516
  include Aws::Structure
9960
10517
  end
9961
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.
10611
+ # @return [String]
10612
+ #
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]
10620
+ #
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)
10639
+ SENSITIVE = []
10640
+ include Aws::Structure
10641
+ end
10642
+
10643
+ # @!attribute [rw] commands
10644
+ # The list of commands.
10645
+ # @return [Array<Types::CommandSummary>]
10646
+ #
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.
10650
+ # @return [String]
10651
+ #
10652
+ class ListCommandsResponse < Struct.new(
10653
+ :commands,
10654
+ :next_token)
10655
+ SENSITIVE = []
10656
+ include Aws::Structure
10657
+ end
10658
+
9962
10659
  # @!attribute [rw] next_token
9963
10660
  # The token for the next set of results.
9964
10661
  # @return [String]
@@ -14309,13 +15006,18 @@ module Aws::IoT
14309
15006
  # The Amazon Resource Name (ARN) for a Lambda function that acts as a
14310
15007
  # Request for Comments (RFC) 6960-compliant Online Certificate Status
14311
15008
  # Protocol (OCSP) responder, supporting basic OCSP responses. The
14312
- # Lambda function accepts a JSON string that's Base64-encoded.
14313
- # Therefore, you must convert your OCSP response, which is typically
14314
- # in the Distinguished Encoding Rules (DER) format, into a JSON string
14315
- # that's Base64-encoded. The Lambda function's response is also a
14316
- # Base64-encoded JSON string and the response payload must not exceed
14317
- # 8 kilobytes (KiB) in size. The Lambda function must be in the same
14318
- # Amazon Web Services region and account as the domain configuration.
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
14319
15021
  # @return [String]
14320
15022
  #
14321
15023
  # @!attribute [rw] ocsp_authorized_responder_arn
@@ -14325,8 +15027,8 @@ module Aws::IoT
14325
15027
  # signature of the received OCSP response. The OCSP responder must
14326
15028
  # sign responses using either this authorized responder certificate or
14327
15029
  # the issuing certificate, depending on whether the ARN is provided or
14328
- # not. The certificate must be in the same Amazon Web Services region
14329
- # and account as the domain configuration.
15030
+ # not. The certificate must be in the same Amazon Web Services account
15031
+ # and region as the domain configuration.
14330
15032
  # @return [String]
14331
15033
  #
14332
15034
  class ServerCertificateConfig < Struct.new(
@@ -14359,7 +15061,7 @@ module Aws::IoT
14359
15061
  include Aws::Structure
14360
15062
  end
14361
15063
 
14362
- # A limit has been exceeded.
15064
+ # Service quota has been exceeded.
14363
15065
  #
14364
15066
  # @!attribute [rw] message
14365
15067
  # @return [String]
@@ -14850,6 +15552,26 @@ module Aws::IoT
14850
15552
  include Aws::Structure
14851
15553
  end
14852
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
+
14853
15575
  # Starts execution of a Step Functions state machine.
14854
15576
  #
14855
15577
  # @!attribute [rw] execution_name_prefix
@@ -15733,6 +16455,26 @@ module Aws::IoT
15733
16455
  include Aws::Structure
15734
16456
  end
15735
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
+
15736
16478
  # Specifies the amount of time each device has to finish its execution
15737
16479
  # of the job. A timer is started when the job execution status is set to
15738
16480
  # `IN_PROGRESS`. If the job execution status is not set to another
@@ -16556,6 +17298,64 @@ module Aws::IoT
16556
17298
  include Aws::Structure
16557
17299
  end
16558
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
+
16559
17359
  # @!attribute [rw] metric_name
16560
17360
  # The name of the custom metric. Cannot be updated.
16561
17361
  # @return [String]