aws-sdk-iot 1.157.0 → 1.159.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f493efc48d76220a54cd6294d3875b39dd66e50182dd9651ce05b13101ebc7e7
4
- data.tar.gz: a798ee78c816c0ed49b9fc0e61f639302fdd46a26acb7f8c4f767663e4908691
3
+ metadata.gz: cab6da1568b511b480d260febcad1482bc5dbe259d13d04536921b37f8ba1cac
4
+ data.tar.gz: cef7224c16ad273574363689e7434bf38c5f04fbea91fed4b411ed7a165c537a
5
5
  SHA512:
6
- metadata.gz: 5c5a20d0b6553ec8ae0b8f7ee96fc31234dc8bd0f1270f8370738ac542ad6800cbb23af1574ecc4f27bc2993a18ff565a5fca95f9f4dcd7d4da0a264c54ad538
7
- data.tar.gz: f73b2aaedfe56b0c89974d6002c4ab5f75bb2c3bfafe4cef1450bfab36080b16ea9aeba6acb79a5dc4278b6cefbd8cf9fe5253fea09137e6f13203ff51f45f39
6
+ metadata.gz: c2f42f8e80bbfc5bccdad69f4664f4e7f963641dbe29c38931d2c437de82688b16451950518054d22e2c9b2ce90eed43369e24a87499d19c230af0eb228330e7
7
+ data.tar.gz: 3f2141fa84c65b2711f065520e171a74432004341f5424e0ae6e3c446927190864c34f53c2b1f64e3b9f80c9fd7ec31c0494f90eb7423eea885e25bda377b760
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.159.0 (2025-12-18)
5
+ ------------------
6
+
7
+ * Feature - This release adds message batching for the IoT Rules Engine HTTP action.
8
+
9
+ 1.158.0 (2025-12-16)
10
+ ------------------
11
+
12
+ * Feature - Add support for dynamic payloads in IoT Device Management Commands
13
+
4
14
  1.157.0 (2025-11-21)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.157.0
1
+ 1.159.0
@@ -1589,25 +1589,40 @@ module Aws::IoT
1589
1589
  # A short text decription of the command.
1590
1590
  #
1591
1591
  # @option params [Types::CommandPayload] :payload
1592
- # The payload object for the command. You must specify this information
1593
- # when using the `AWS-IoT` namespace.
1592
+ # The payload object for the static command.
1594
1593
  #
1595
1594
  # You can upload a static payload file from your local storage that
1596
1595
  # contains the instructions for the device to process. The payload file
1597
1596
  # can use any format. To make sure that the device correctly interprets
1598
1597
  # the payload, we recommend you to specify the payload content type.
1599
1598
  #
1599
+ # @option params [String] :payload_template
1600
+ # The payload template for the dynamic command.
1601
+ #
1602
+ # <note markdown="1"> This parameter is required for dynamic commands where the command
1603
+ # execution placeholders are supplied either from `mandatoryParameters`
1604
+ # or when `StartCommandExecution` is invoked.
1605
+ #
1606
+ # </note>
1607
+ #
1608
+ # @option params [Types::CommandPreprocessor] :preprocessor
1609
+ # Configuration that determines how `payloadTemplate` is processed to
1610
+ # generate command execution payload.
1611
+ #
1612
+ # <note markdown="1"> This parameter is required for dynamic commands, along with
1613
+ # `payloadTemplate`, and `mandatoryParameters`.
1614
+ #
1615
+ # </note>
1616
+ #
1600
1617
  # @option params [Array<Types::CommandParameter>] :mandatory_parameters
1601
- # A list of parameters that are required by the `StartCommandExecution`
1602
- # API. These parameters need to be specified only when using the
1603
- # `AWS-IoT-FleetWise` namespace. You can either specify them here or
1604
- # when running the command using the `StartCommandExecution` API.
1618
+ # A list of parameters that are used by `StartCommandExecution` API for
1619
+ # execution payload generation.
1605
1620
  #
1606
1621
  # @option params [String] :role_arn
1607
1622
  # The IAM role that you must provide when using the `AWS-IoT-FleetWise`
1608
1623
  # namespace. The role grants IoT Device Management the permission to
1609
1624
  # access IoT FleetWise resources for generating the payload for the
1610
- # command. This field is not required when you use the `AWS-IoT`
1625
+ # command. This field is not supported when you use the `AWS-IoT`
1611
1626
  # namespace.
1612
1627
  #
1613
1628
  # @option params [Array<Types::Tag>] :tags
@@ -1629,9 +1644,16 @@ module Aws::IoT
1629
1644
  # content: "data",
1630
1645
  # content_type: "MimeType",
1631
1646
  # },
1647
+ # payload_template: "CommandPayloadTemplateString",
1648
+ # preprocessor: {
1649
+ # aws_json_substitution: {
1650
+ # output_format: "JSON", # required, accepts JSON, CBOR
1651
+ # },
1652
+ # },
1632
1653
  # mandatory_parameters: [
1633
1654
  # {
1634
1655
  # name: "CommandParameterName", # required
1656
+ # type: "STRING", # accepts STRING, INTEGER, DOUBLE, LONG, UNSIGNEDLONG, BOOLEAN, BINARY
1635
1657
  # value: {
1636
1658
  # s: "StringParameterValue",
1637
1659
  # b: false,
@@ -1650,6 +1672,21 @@ module Aws::IoT
1650
1672
  # bin: "data",
1651
1673
  # ul: "UnsignedLongParameterValue",
1652
1674
  # },
1675
+ # value_conditions: [
1676
+ # {
1677
+ # comparison_operator: "EQUALS", # required, accepts EQUALS, NOT_EQUALS, LESS_THAN, LESS_THAN_EQUALS, GREATER_THAN, GREATER_THAN_EQUALS, IN_SET, NOT_IN_SET, IN_RANGE, NOT_IN_RANGE
1678
+ # operand: { # required
1679
+ # number: "StringParameterValue",
1680
+ # numbers: ["StringParameterValue"],
1681
+ # string: "StringParameterValue",
1682
+ # strings: ["StringParameterValue"],
1683
+ # number_range: {
1684
+ # min: "StringParameterValue", # required
1685
+ # max: "StringParameterValue", # required
1686
+ # },
1687
+ # },
1688
+ # },
1689
+ # ],
1653
1690
  # description: "CommandParameterDescription",
1654
1691
  # },
1655
1692
  # ],
@@ -4063,6 +4100,12 @@ module Aws::IoT
4063
4100
  # role_arn: "AwsArn", # required
4064
4101
  # },
4065
4102
  # },
4103
+ # enable_batching: false,
4104
+ # batch_config: {
4105
+ # max_batch_open_ms: 1,
4106
+ # max_batch_size: 1,
4107
+ # max_batch_size_bytes: 1,
4108
+ # },
4066
4109
  # },
4067
4110
  # kafka: {
4068
4111
  # destination_arn: "AwsArn", # required
@@ -4272,6 +4315,12 @@ module Aws::IoT
4272
4315
  # role_arn: "AwsArn", # required
4273
4316
  # },
4274
4317
  # },
4318
+ # enable_batching: false,
4319
+ # batch_config: {
4320
+ # max_batch_open_ms: 1,
4321
+ # max_batch_size: 1,
4322
+ # max_batch_size_bytes: 1,
4323
+ # },
4275
4324
  # },
4276
4325
  # kafka: {
4277
4326
  # destination_arn: "AwsArn", # required
@@ -6377,12 +6426,12 @@ module Aws::IoT
6377
6426
 
6378
6427
  # Retrieves the encryption configuration for resources and data of your
6379
6428
  # Amazon Web Services account in Amazon Web Services IoT Core. For more
6380
- # information, see [Key management in IoT][1] from the *Amazon Web
6429
+ # information, see [Data encryption at rest][1] in the *Amazon Web
6381
6430
  # Services IoT Core Developer Guide*.
6382
6431
  #
6383
6432
  #
6384
6433
  #
6385
- # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/key-management.html
6434
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/encryption-at-rest.html
6386
6435
  #
6387
6436
  # @return [Types::DescribeEncryptionConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6388
6437
  #
@@ -7845,6 +7894,8 @@ module Aws::IoT
7845
7894
  # * {Types::GetCommandResponse#description #description} => String
7846
7895
  # * {Types::GetCommandResponse#mandatory_parameters #mandatory_parameters} => Array&lt;Types::CommandParameter&gt;
7847
7896
  # * {Types::GetCommandResponse#payload #payload} => Types::CommandPayload
7897
+ # * {Types::GetCommandResponse#payload_template #payload_template} => String
7898
+ # * {Types::GetCommandResponse#preprocessor #preprocessor} => Types::CommandPreprocessor
7848
7899
  # * {Types::GetCommandResponse#role_arn #role_arn} => String
7849
7900
  # * {Types::GetCommandResponse#created_at #created_at} => Time
7850
7901
  # * {Types::GetCommandResponse#last_updated_at #last_updated_at} => Time
@@ -7866,6 +7917,7 @@ module Aws::IoT
7866
7917
  # resp.description #=> String
7867
7918
  # resp.mandatory_parameters #=> Array
7868
7919
  # resp.mandatory_parameters[0].name #=> String
7920
+ # resp.mandatory_parameters[0].type #=> String, one of "STRING", "INTEGER", "DOUBLE", "LONG", "UNSIGNEDLONG", "BOOLEAN", "BINARY"
7869
7921
  # resp.mandatory_parameters[0].value.s #=> String
7870
7922
  # resp.mandatory_parameters[0].value.b #=> Boolean
7871
7923
  # resp.mandatory_parameters[0].value.i #=> Integer
@@ -7880,9 +7932,21 @@ module Aws::IoT
7880
7932
  # resp.mandatory_parameters[0].default_value.d #=> Float
7881
7933
  # resp.mandatory_parameters[0].default_value.bin #=> String
7882
7934
  # resp.mandatory_parameters[0].default_value.ul #=> String
7935
+ # resp.mandatory_parameters[0].value_conditions #=> Array
7936
+ # resp.mandatory_parameters[0].value_conditions[0].comparison_operator #=> String, one of "EQUALS", "NOT_EQUALS", "LESS_THAN", "LESS_THAN_EQUALS", "GREATER_THAN", "GREATER_THAN_EQUALS", "IN_SET", "NOT_IN_SET", "IN_RANGE", "NOT_IN_RANGE"
7937
+ # resp.mandatory_parameters[0].value_conditions[0].operand.number #=> String
7938
+ # resp.mandatory_parameters[0].value_conditions[0].operand.numbers #=> Array
7939
+ # resp.mandatory_parameters[0].value_conditions[0].operand.numbers[0] #=> String
7940
+ # resp.mandatory_parameters[0].value_conditions[0].operand.string #=> String
7941
+ # resp.mandatory_parameters[0].value_conditions[0].operand.strings #=> Array
7942
+ # resp.mandatory_parameters[0].value_conditions[0].operand.strings[0] #=> String
7943
+ # resp.mandatory_parameters[0].value_conditions[0].operand.number_range.min #=> String
7944
+ # resp.mandatory_parameters[0].value_conditions[0].operand.number_range.max #=> String
7883
7945
  # resp.mandatory_parameters[0].description #=> String
7884
7946
  # resp.payload.content #=> String
7885
7947
  # resp.payload.content_type #=> String
7948
+ # resp.payload_template #=> String
7949
+ # resp.preprocessor.aws_json_substitution.output_format #=> String, one of "JSON", "CBOR"
7886
7950
  # resp.role_arn #=> String
7887
7951
  # resp.created_at #=> Time
7888
7952
  # resp.last_updated_at #=> Time
@@ -8743,6 +8807,10 @@ module Aws::IoT
8743
8807
  # resp.rule.actions[0].http.auth.sigv4.signing_region #=> String
8744
8808
  # resp.rule.actions[0].http.auth.sigv4.service_name #=> String
8745
8809
  # resp.rule.actions[0].http.auth.sigv4.role_arn #=> String
8810
+ # resp.rule.actions[0].http.enable_batching #=> Boolean
8811
+ # resp.rule.actions[0].http.batch_config.max_batch_open_ms #=> Integer
8812
+ # resp.rule.actions[0].http.batch_config.max_batch_size #=> Integer
8813
+ # resp.rule.actions[0].http.batch_config.max_batch_size_bytes #=> Integer
8746
8814
  # resp.rule.actions[0].kafka.destination_arn #=> String
8747
8815
  # resp.rule.actions[0].kafka.topic #=> String
8748
8816
  # resp.rule.actions[0].kafka.key #=> String
@@ -8868,6 +8936,10 @@ module Aws::IoT
8868
8936
  # resp.rule.error_action.http.auth.sigv4.signing_region #=> String
8869
8937
  # resp.rule.error_action.http.auth.sigv4.service_name #=> String
8870
8938
  # resp.rule.error_action.http.auth.sigv4.role_arn #=> String
8939
+ # resp.rule.error_action.http.enable_batching #=> Boolean
8940
+ # resp.rule.error_action.http.batch_config.max_batch_open_ms #=> Integer
8941
+ # resp.rule.error_action.http.batch_config.max_batch_size #=> Integer
8942
+ # resp.rule.error_action.http.batch_config.max_batch_size_bytes #=> Integer
8871
8943
  # resp.rule.error_action.kafka.destination_arn #=> String
8872
8944
  # resp.rule.error_action.kafka.topic #=> String
8873
8945
  # resp.rule.error_action.kafka.key #=> String
@@ -13435,6 +13507,12 @@ module Aws::IoT
13435
13507
  # role_arn: "AwsArn", # required
13436
13508
  # },
13437
13509
  # },
13510
+ # enable_batching: false,
13511
+ # batch_config: {
13512
+ # max_batch_open_ms: 1,
13513
+ # max_batch_size: 1,
13514
+ # max_batch_size_bytes: 1,
13515
+ # },
13438
13516
  # },
13439
13517
  # kafka: {
13440
13518
  # destination_arn: "AwsArn", # required
@@ -13644,6 +13722,12 @@ module Aws::IoT
13644
13722
  # role_arn: "AwsArn", # required
13645
13723
  # },
13646
13724
  # },
13725
+ # enable_batching: false,
13726
+ # batch_config: {
13727
+ # max_batch_open_ms: 1,
13728
+ # max_batch_size: 1,
13729
+ # max_batch_size_bytes: 1,
13730
+ # },
13647
13731
  # },
13648
13732
  # kafka: {
13649
13733
  # destination_arn: "AwsArn", # required
@@ -14233,9 +14317,8 @@ module Aws::IoT
14233
14317
  #
14234
14318
  # @option params [String] :principal
14235
14319
  # The principal. Valid principals are CertificateArn
14236
- # (arn:aws:iot:*region*:*accountId*:cert/*certificateId*), thingGroupArn
14237
- # (arn:aws:iot:*region*:*accountId*:thinggroup/*groupName*) and
14238
- # CognitoId (*region*:*id*).
14320
+ # (arn:aws:iot:*region*:*accountId*:cert/*certificateId*) and CognitoId
14321
+ # (*region*:*id*).
14239
14322
  #
14240
14323
  # @option params [String] :cognito_identity_pool_id
14241
14324
  # The Cognito identity pool ID.
@@ -14381,10 +14464,10 @@ module Aws::IoT
14381
14464
  #
14382
14465
  # Requires permission to access the [TransferCertificate][1] action.
14383
14466
  #
14384
- # You can cancel the transfer until it is acknowledged by the recipient.
14467
+ # You can cancel the transfer until it is accepted by the recipient.
14385
14468
  #
14386
- # No notification is sent to the transfer destination's account. It's
14387
- # up to the caller to notify the transfer target.
14469
+ # No notification is sent to the transfer destination's account. The
14470
+ # caller is responsible for notifying the transfer target.
14388
14471
  #
14389
14472
  # The certificate being transferred must not be in the `ACTIVE` state.
14390
14473
  # You can use the UpdateCertificate action to deactivate it.
@@ -14393,15 +14476,16 @@ module Aws::IoT
14393
14476
  # the DetachPolicy action to detach them.
14394
14477
  #
14395
14478
  # **Customer managed key behavior:** When you use a customer managed key
14396
- # to secure your data and then transfer the key to a customer in a
14397
- # different account using the TransferCertificate operation, the
14398
- # certificates will no longer be protected by their customer managed key
14479
+ # to encrypt your data and then transfer the certificate to a customer
14480
+ # in a different account using the `TransferCertificate` operation, the
14481
+ # certificates will no longer be encrypted by their customer managed key
14399
14482
  # configuration. During the transfer process, certificates are encrypted
14400
- # using IoT owned keys.
14483
+ # using Amazon Web Services IoT Core owned keys.
14401
14484
  #
14402
14485
  # While a certificate is in the **PENDING\_TRANSFER** state, it's
14403
- # always protected by IoT owned keys, regardless of the customer managed
14404
- # key configuration of either the source or destination account.
14486
+ # always protected by Amazon Web Services IoT Core owned keys,
14487
+ # regardless of the customer managed key configuration of either the
14488
+ # source or destination account.
14405
14489
  #
14406
14490
  # Once the transfer is completed through AcceptCertificateTransfer,
14407
14491
  # RejectCertificateTransfer, or CancelCertificateTransfer, the
@@ -14409,8 +14493,8 @@ module Aws::IoT
14409
14493
  # configuration of the account that owns the certificate after the
14410
14494
  # transfer operation:
14411
14495
  #
14412
- # * If the transfer is accepted: The certificate is protected by the
14413
- # destination account's customer managed key configuration.
14496
+ # * If the transfer is accepted: The certificate is encrypted by the
14497
+ # target account's customer managed key configuration.
14414
14498
  #
14415
14499
  # * If the transfer is rejected or cancelled: The certificate is
14416
14500
  # protected by the source account's customer managed key
@@ -15208,24 +15292,27 @@ module Aws::IoT
15208
15292
  req.send_request(options)
15209
15293
  end
15210
15294
 
15211
- # Updates the encryption configuration. By default, all Amazon Web
15212
- # Services IoT Core data at rest is encrypted using Amazon Web Services
15213
- # owned keys. Amazon Web Services IoT Core also supports symmetric
15214
- # customer managed keys from Amazon Web Services Key Management Service
15215
- # (KMS). With customer managed keys, you create, own, and manage the KMS
15216
- # keys in your Amazon Web Services account. For more information, see
15217
- # [Data encryption][1] in the *Amazon Web Services IoT Core Developer
15295
+ # Updates the encryption configuration. By default, Amazon Web Services
15296
+ # IoT Core encrypts your data at rest using Amazon Web Services owned
15297
+ # keys. Amazon Web Services IoT Core also supports symmetric customer
15298
+ # managed keys from Key Management Service (KMS). With customer managed
15299
+ # keys, you create, own, and manage the KMS keys in your Amazon Web
15300
+ # Services account.
15301
+ #
15302
+ # Before using this API, you must set up permissions for Amazon Web
15303
+ # Services IoT Core to access KMS. For more information, see [Data
15304
+ # encryption at rest][1] in the *Amazon Web Services IoT Core Developer
15218
15305
  # Guide*.
15219
15306
  #
15220
15307
  #
15221
15308
  #
15222
- # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/data-encryption.html
15309
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/encryption-at-rest.html
15223
15310
  #
15224
15311
  # @option params [required, String] :encryption_type
15225
- # The type of the Amazon Web Services Key Management Service (KMS) key.
15312
+ # The type of the KMS key.
15226
15313
  #
15227
15314
  # @option params [String] :kms_key_arn
15228
- # The ARN of the customer-managed KMS key.
15315
+ # The ARN of the customer managedKMS key.
15229
15316
  #
15230
15317
  # @option params [String] :kms_access_role_arn
15231
15318
  # The Amazon Resource Name (ARN) of the IAM role assumed by Amazon Web
@@ -16546,7 +16633,7 @@ module Aws::IoT
16546
16633
  tracer: tracer
16547
16634
  )
16548
16635
  context[:gem_name] = 'aws-sdk-iot'
16549
- context[:gem_version] = '1.157.0'
16636
+ context[:gem_version] = '1.159.0'
16550
16637
  Seahorse::Client::Request.new(handlers, context)
16551
16638
  end
16552
16639
 
@@ -149,6 +149,8 @@ module Aws::IoT
149
149
  AwsJobRolloutRatePerMinute = Shapes::IntegerShape.new(name: 'AwsJobRolloutRatePerMinute')
150
150
  AwsJobTimeoutConfig = Shapes::StructureShape.new(name: 'AwsJobTimeoutConfig')
151
151
  AwsJobTimeoutInProgressTimeoutInMinutes = Shapes::IntegerShape.new(name: 'AwsJobTimeoutInProgressTimeoutInMinutes')
152
+ AwsJsonSubstitutionCommandPreprocessorConfig = Shapes::StructureShape.new(name: 'AwsJsonSubstitutionCommandPreprocessorConfig')
153
+ BatchConfig = Shapes::StructureShape.new(name: 'BatchConfig')
152
154
  BatchMode = Shapes::BooleanShape.new(name: 'BatchMode')
153
155
  BeforeSubstitutionFlag = Shapes::BooleanShape.new(name: 'BeforeSubstitutionFlag')
154
156
  Behavior = Shapes::StructureShape.new(name: 'Behavior')
@@ -258,9 +260,18 @@ module Aws::IoT
258
260
  CommandParameterDescription = Shapes::StringShape.new(name: 'CommandParameterDescription')
259
261
  CommandParameterList = Shapes::ListShape.new(name: 'CommandParameterList')
260
262
  CommandParameterName = Shapes::StringShape.new(name: 'CommandParameterName')
263
+ CommandParameterType = Shapes::StringShape.new(name: 'CommandParameterType')
261
264
  CommandParameterValue = Shapes::StructureShape.new(name: 'CommandParameterValue')
265
+ CommandParameterValueComparisonOperand = Shapes::StructureShape.new(name: 'CommandParameterValueComparisonOperand')
266
+ CommandParameterValueComparisonOperator = Shapes::StringShape.new(name: 'CommandParameterValueComparisonOperator')
267
+ CommandParameterValueCondition = Shapes::StructureShape.new(name: 'CommandParameterValueCondition')
268
+ CommandParameterValueConditionList = Shapes::ListShape.new(name: 'CommandParameterValueConditionList')
269
+ CommandParameterValueNumberRange = Shapes::StructureShape.new(name: 'CommandParameterValueNumberRange')
270
+ CommandParameterValueStringList = Shapes::ListShape.new(name: 'CommandParameterValueStringList')
262
271
  CommandPayload = Shapes::StructureShape.new(name: 'CommandPayload')
263
272
  CommandPayloadBlob = Shapes::BlobShape.new(name: 'CommandPayloadBlob')
273
+ CommandPayloadTemplateString = Shapes::StringShape.new(name: 'CommandPayloadTemplateString')
274
+ CommandPreprocessor = Shapes::StructureShape.new(name: 'CommandPreprocessor')
264
275
  CommandSummary = Shapes::StructureShape.new(name: 'CommandSummary')
265
276
  CommandSummaryList = Shapes::ListShape.new(name: 'CommandSummaryList')
266
277
  Comment = Shapes::StringShape.new(name: 'Comment')
@@ -570,6 +581,7 @@ module Aws::IoT
570
581
  ElasticsearchId = Shapes::StringShape.new(name: 'ElasticsearchId')
571
582
  ElasticsearchIndex = Shapes::StringShape.new(name: 'ElasticsearchIndex')
572
583
  ElasticsearchType = Shapes::StringShape.new(name: 'ElasticsearchType')
584
+ EnableBatching = Shapes::BooleanShape.new(name: 'EnableBatching')
573
585
  EnableCachingForHttp = Shapes::BooleanShape.new(name: 'EnableCachingForHttp')
574
586
  EnableIoTLoggingParams = Shapes::StructureShape.new(name: 'EnableIoTLoggingParams')
575
587
  EnableOCSPCheck = Shapes::BooleanShape.new(name: 'EnableOCSPCheck')
@@ -920,6 +932,9 @@ module Aws::IoT
920
932
  ManagedJobTemplatesSummaryList = Shapes::ListShape.new(name: 'ManagedJobTemplatesSummaryList')
921
933
  ManagedTemplateVersion = Shapes::StringShape.new(name: 'ManagedTemplateVersion')
922
934
  Marker = Shapes::StringShape.new(name: 'Marker')
935
+ MaxBatchOpenMs = Shapes::IntegerShape.new(name: 'MaxBatchOpenMs')
936
+ MaxBatchSize = Shapes::IntegerShape.new(name: 'MaxBatchSize')
937
+ MaxBatchSizeBytes = Shapes::IntegerShape.new(name: 'MaxBatchSizeBytes')
923
938
  MaxBuckets = Shapes::IntegerShape.new(name: 'MaxBuckets')
924
939
  MaxJobExecutionsPerMin = Shapes::IntegerShape.new(name: 'MaxJobExecutionsPerMin')
925
940
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
@@ -991,6 +1006,7 @@ module Aws::IoT
991
1006
  OptionalVersion = Shapes::IntegerShape.new(name: 'OptionalVersion')
992
1007
  OutgoingCertificate = Shapes::StructureShape.new(name: 'OutgoingCertificate')
993
1008
  OutgoingCertificates = Shapes::ListShape.new(name: 'OutgoingCertificates')
1009
+ OutputFormat = Shapes::StringShape.new(name: 'OutputFormat')
994
1010
  OverrideDynamicGroups = Shapes::BooleanShape.new(name: 'OverrideDynamicGroups')
995
1011
  PackageArn = Shapes::StringShape.new(name: 'PackageArn')
996
1012
  PackageCatalogMaxResults = Shapes::IntegerShape.new(name: 'PackageCatalogMaxResults')
@@ -1819,6 +1835,14 @@ module Aws::IoT
1819
1835
  AwsJobTimeoutConfig.add_member(:in_progress_timeout_in_minutes, Shapes::ShapeRef.new(shape: AwsJobTimeoutInProgressTimeoutInMinutes, location_name: "inProgressTimeoutInMinutes"))
1820
1836
  AwsJobTimeoutConfig.struct_class = Types::AwsJobTimeoutConfig
1821
1837
 
1838
+ AwsJsonSubstitutionCommandPreprocessorConfig.add_member(:output_format, Shapes::ShapeRef.new(shape: OutputFormat, required: true, location_name: "outputFormat"))
1839
+ AwsJsonSubstitutionCommandPreprocessorConfig.struct_class = Types::AwsJsonSubstitutionCommandPreprocessorConfig
1840
+
1841
+ BatchConfig.add_member(:max_batch_open_ms, Shapes::ShapeRef.new(shape: MaxBatchOpenMs, location_name: "maxBatchOpenMs"))
1842
+ BatchConfig.add_member(:max_batch_size, Shapes::ShapeRef.new(shape: MaxBatchSize, location_name: "maxBatchSize"))
1843
+ BatchConfig.add_member(:max_batch_size_bytes, Shapes::ShapeRef.new(shape: MaxBatchSizeBytes, location_name: "maxBatchSizeBytes"))
1844
+ BatchConfig.struct_class = Types::BatchConfig
1845
+
1822
1846
  Behavior.add_member(:name, Shapes::ShapeRef.new(shape: BehaviorName, required: true, location_name: "name"))
1823
1847
  Behavior.add_member(:metric, Shapes::ShapeRef.new(shape: BehaviorMetric, location_name: "metric"))
1824
1848
  Behavior.add_member(:metric_dimension, Shapes::ShapeRef.new(shape: MetricDimension, location_name: "metricDimension"))
@@ -2038,8 +2062,10 @@ module Aws::IoT
2038
2062
  CommandExecutionSummaryList.member = Shapes::ShapeRef.new(shape: CommandExecutionSummary)
2039
2063
 
2040
2064
  CommandParameter.add_member(:name, Shapes::ShapeRef.new(shape: CommandParameterName, required: true, location_name: "name"))
2065
+ CommandParameter.add_member(:type, Shapes::ShapeRef.new(shape: CommandParameterType, location_name: "type"))
2041
2066
  CommandParameter.add_member(:value, Shapes::ShapeRef.new(shape: CommandParameterValue, location_name: "value"))
2042
2067
  CommandParameter.add_member(:default_value, Shapes::ShapeRef.new(shape: CommandParameterValue, location_name: "defaultValue"))
2068
+ CommandParameter.add_member(:value_conditions, Shapes::ShapeRef.new(shape: CommandParameterValueConditionList, location_name: "valueConditions"))
2043
2069
  CommandParameter.add_member(:description, Shapes::ShapeRef.new(shape: CommandParameterDescription, location_name: "description"))
2044
2070
  CommandParameter.struct_class = Types::CommandParameter
2045
2071
 
@@ -2054,10 +2080,32 @@ module Aws::IoT
2054
2080
  CommandParameterValue.add_member(:ul, Shapes::ShapeRef.new(shape: UnsignedLongParameterValue, location_name: "UL"))
2055
2081
  CommandParameterValue.struct_class = Types::CommandParameterValue
2056
2082
 
2083
+ CommandParameterValueComparisonOperand.add_member(:number, Shapes::ShapeRef.new(shape: StringParameterValue, location_name: "number"))
2084
+ CommandParameterValueComparisonOperand.add_member(:numbers, Shapes::ShapeRef.new(shape: CommandParameterValueStringList, location_name: "numbers"))
2085
+ CommandParameterValueComparisonOperand.add_member(:string, Shapes::ShapeRef.new(shape: StringParameterValue, location_name: "string"))
2086
+ CommandParameterValueComparisonOperand.add_member(:strings, Shapes::ShapeRef.new(shape: CommandParameterValueStringList, location_name: "strings"))
2087
+ CommandParameterValueComparisonOperand.add_member(:number_range, Shapes::ShapeRef.new(shape: CommandParameterValueNumberRange, location_name: "numberRange"))
2088
+ CommandParameterValueComparisonOperand.struct_class = Types::CommandParameterValueComparisonOperand
2089
+
2090
+ CommandParameterValueCondition.add_member(:comparison_operator, Shapes::ShapeRef.new(shape: CommandParameterValueComparisonOperator, required: true, location_name: "comparisonOperator"))
2091
+ CommandParameterValueCondition.add_member(:operand, Shapes::ShapeRef.new(shape: CommandParameterValueComparisonOperand, required: true, location_name: "operand"))
2092
+ CommandParameterValueCondition.struct_class = Types::CommandParameterValueCondition
2093
+
2094
+ CommandParameterValueConditionList.member = Shapes::ShapeRef.new(shape: CommandParameterValueCondition)
2095
+
2096
+ CommandParameterValueNumberRange.add_member(:min, Shapes::ShapeRef.new(shape: StringParameterValue, required: true, location_name: "min"))
2097
+ CommandParameterValueNumberRange.add_member(:max, Shapes::ShapeRef.new(shape: StringParameterValue, required: true, location_name: "max"))
2098
+ CommandParameterValueNumberRange.struct_class = Types::CommandParameterValueNumberRange
2099
+
2100
+ CommandParameterValueStringList.member = Shapes::ShapeRef.new(shape: StringParameterValue)
2101
+
2057
2102
  CommandPayload.add_member(:content, Shapes::ShapeRef.new(shape: CommandPayloadBlob, location_name: "content"))
2058
2103
  CommandPayload.add_member(:content_type, Shapes::ShapeRef.new(shape: MimeType, location_name: "contentType"))
2059
2104
  CommandPayload.struct_class = Types::CommandPayload
2060
2105
 
2106
+ CommandPreprocessor.add_member(:aws_json_substitution, Shapes::ShapeRef.new(shape: AwsJsonSubstitutionCommandPreprocessorConfig, location_name: "awsJsonSubstitution"))
2107
+ CommandPreprocessor.struct_class = Types::CommandPreprocessor
2108
+
2061
2109
  CommandSummary.add_member(:command_arn, Shapes::ShapeRef.new(shape: CommandArn, location_name: "commandArn"))
2062
2110
  CommandSummary.add_member(:command_id, Shapes::ShapeRef.new(shape: CommandId, location_name: "commandId"))
2063
2111
  CommandSummary.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "displayName"))
@@ -2148,6 +2196,8 @@ module Aws::IoT
2148
2196
  CreateCommandRequest.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "displayName"))
2149
2197
  CreateCommandRequest.add_member(:description, Shapes::ShapeRef.new(shape: CommandDescription, location_name: "description"))
2150
2198
  CreateCommandRequest.add_member(:payload, Shapes::ShapeRef.new(shape: CommandPayload, location_name: "payload"))
2199
+ CreateCommandRequest.add_member(:payload_template, Shapes::ShapeRef.new(shape: CommandPayloadTemplateString, location_name: "payloadTemplate"))
2200
+ CreateCommandRequest.add_member(:preprocessor, Shapes::ShapeRef.new(shape: CommandPreprocessor, location_name: "preprocessor"))
2151
2201
  CreateCommandRequest.add_member(:mandatory_parameters, Shapes::ShapeRef.new(shape: CommandParameterList, location_name: "mandatoryParameters"))
2152
2202
  CreateCommandRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "roleArn"))
2153
2203
  CreateCommandRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
@@ -3305,6 +3355,8 @@ module Aws::IoT
3305
3355
  GetCommandResponse.add_member(:description, Shapes::ShapeRef.new(shape: CommandDescription, location_name: "description"))
3306
3356
  GetCommandResponse.add_member(:mandatory_parameters, Shapes::ShapeRef.new(shape: CommandParameterList, location_name: "mandatoryParameters"))
3307
3357
  GetCommandResponse.add_member(:payload, Shapes::ShapeRef.new(shape: CommandPayload, location_name: "payload"))
3358
+ GetCommandResponse.add_member(:payload_template, Shapes::ShapeRef.new(shape: CommandPayloadTemplateString, location_name: "payloadTemplate"))
3359
+ GetCommandResponse.add_member(:preprocessor, Shapes::ShapeRef.new(shape: CommandPreprocessor, location_name: "preprocessor"))
3308
3360
  GetCommandResponse.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, location_name: "roleArn"))
3309
3361
  GetCommandResponse.add_member(:created_at, Shapes::ShapeRef.new(shape: DateType, location_name: "createdAt"))
3310
3362
  GetCommandResponse.add_member(:last_updated_at, Shapes::ShapeRef.new(shape: DateType, location_name: "lastUpdatedAt"))
@@ -3469,6 +3521,8 @@ module Aws::IoT
3469
3521
  HttpAction.add_member(:confirmation_url, Shapes::ShapeRef.new(shape: Url, location_name: "confirmationUrl"))
3470
3522
  HttpAction.add_member(:headers, Shapes::ShapeRef.new(shape: HeaderList, location_name: "headers"))
3471
3523
  HttpAction.add_member(:auth, Shapes::ShapeRef.new(shape: HttpAuthorization, location_name: "auth"))
3524
+ HttpAction.add_member(:enable_batching, Shapes::ShapeRef.new(shape: EnableBatching, location_name: "enableBatching"))
3525
+ HttpAction.add_member(:batch_config, Shapes::ShapeRef.new(shape: BatchConfig, location_name: "batchConfig"))
3472
3526
  HttpAction.struct_class = Types::HttpAction
3473
3527
 
3474
3528
  HttpActionHeader.add_member(:key, Shapes::ShapeRef.new(shape: HeaderKey, required: true, location_name: "key"))
@@ -1357,6 +1357,48 @@ module Aws::IoT
1357
1357
  include Aws::Structure
1358
1358
  end
1359
1359
 
1360
+ # Configures the command to treat the `payloadTemplate` as a JSON
1361
+ # document for preprocessing. This preprocessor substitutes placeholders
1362
+ # with parameter values to generate the command execution request
1363
+ # payload.
1364
+ #
1365
+ # @!attribute [rw] output_format
1366
+ # Converts the command preprocessor result to the format defined by
1367
+ # this parameter, before sending it to the device.
1368
+ # @return [String]
1369
+ #
1370
+ class AwsJsonSubstitutionCommandPreprocessorConfig < Struct.new(
1371
+ :output_format)
1372
+ SENSITIVE = []
1373
+ include Aws::Structure
1374
+ end
1375
+
1376
+ # Configuration settings for batching.
1377
+ #
1378
+ # @!attribute [rw] max_batch_open_ms
1379
+ # The maximum amount of time (in milliseconds) that an outgoing call
1380
+ # waits for other calls with which it batches messages of the same
1381
+ # type. The higher the setting, the longer the latency of the batched
1382
+ # HTTP Action will be.
1383
+ # @return [Integer]
1384
+ #
1385
+ # @!attribute [rw] max_batch_size
1386
+ # The maximum number of messages that are batched together in a single
1387
+ # action execution.
1388
+ # @return [Integer]
1389
+ #
1390
+ # @!attribute [rw] max_batch_size_bytes
1391
+ # Maximum size of a message batch, in bytes.
1392
+ # @return [Integer]
1393
+ #
1394
+ class BatchConfig < Struct.new(
1395
+ :max_batch_open_ms,
1396
+ :max_batch_size,
1397
+ :max_batch_size_bytes)
1398
+ SENSITIVE = []
1399
+ include Aws::Structure
1400
+ end
1401
+
1360
1402
  # A Device Defender security profile behavior.
1361
1403
  #
1362
1404
  # @!attribute [rw] name
@@ -2299,10 +2341,12 @@ module Aws::IoT
2299
2341
  # execution.
2300
2342
  # @return [String]
2301
2343
  #
2344
+ # @!attribute [rw] type
2345
+ # The type of the command parameter.
2346
+ # @return [String]
2347
+ #
2302
2348
  # @!attribute [rw] value
2303
- # The value used to describe the command. When you assign a value to a
2304
- # parameter, it will override any default value that you had already
2305
- # specified.
2349
+ # Parameter value that overrides the default value, if set.
2306
2350
  # @return [Types::CommandParameterValue]
2307
2351
  #
2308
2352
  # @!attribute [rw] default_value
@@ -2310,21 +2354,27 @@ module Aws::IoT
2310
2354
  # assumed by the parameter if no other value is assigned to it.
2311
2355
  # @return [Types::CommandParameterValue]
2312
2356
  #
2357
+ # @!attribute [rw] value_conditions
2358
+ # The list of conditions that a command parameter value must satisfy
2359
+ # to create a command execution.
2360
+ # @return [Array<Types::CommandParameterValueCondition>]
2361
+ #
2313
2362
  # @!attribute [rw] description
2314
2363
  # The description of the command parameter.
2315
2364
  # @return [String]
2316
2365
  #
2317
2366
  class CommandParameter < Struct.new(
2318
2367
  :name,
2368
+ :type,
2319
2369
  :value,
2320
2370
  :default_value,
2371
+ :value_conditions,
2321
2372
  :description)
2322
2373
  SENSITIVE = []
2323
2374
  include Aws::Structure
2324
2375
  end
2325
2376
 
2326
- # The range of possible values that's used to describe a specific
2327
- # command parameter.
2377
+ # The value of a command parameter used to create a command execution.
2328
2378
  #
2329
2379
  # <note markdown="1"> The `commandParameterValue` can only have one of the below fields
2330
2380
  # listed.
@@ -2377,6 +2427,79 @@ module Aws::IoT
2377
2427
  include Aws::Structure
2378
2428
  end
2379
2429
 
2430
+ # The comparison operand used to compare the defined value against the
2431
+ # value supplied in request.
2432
+ #
2433
+ # @!attribute [rw] number
2434
+ # An operand of number value type, defined as a string.
2435
+ # @return [String]
2436
+ #
2437
+ # @!attribute [rw] numbers
2438
+ # A List of operands of numerical value type, defined as strings.
2439
+ # @return [Array<String>]
2440
+ #
2441
+ # @!attribute [rw] string
2442
+ # An operand of string value type.
2443
+ # @return [String]
2444
+ #
2445
+ # @!attribute [rw] strings
2446
+ # A List of operands of string value type.
2447
+ # @return [Array<String>]
2448
+ #
2449
+ # @!attribute [rw] number_range
2450
+ # An operand of numerical range value type.
2451
+ # @return [Types::CommandParameterValueNumberRange]
2452
+ #
2453
+ class CommandParameterValueComparisonOperand < Struct.new(
2454
+ :number,
2455
+ :numbers,
2456
+ :string,
2457
+ :strings,
2458
+ :number_range)
2459
+ SENSITIVE = []
2460
+ include Aws::Structure
2461
+ end
2462
+
2463
+ # A condition for the command parameter that must be evaluated to true
2464
+ # for successful creation of a command execution.
2465
+ #
2466
+ # @!attribute [rw] comparison_operator
2467
+ # The comparison operator for the command parameter.
2468
+ #
2469
+ # <note markdown="1"> IN\_RANGE, and NOT\_IN\_RANGE operators include boundary values.
2470
+ #
2471
+ # </note>
2472
+ # @return [String]
2473
+ #
2474
+ # @!attribute [rw] operand
2475
+ # The comparison operand for the command parameter.
2476
+ # @return [Types::CommandParameterValueComparisonOperand]
2477
+ #
2478
+ class CommandParameterValueCondition < Struct.new(
2479
+ :comparison_operator,
2480
+ :operand)
2481
+ SENSITIVE = []
2482
+ include Aws::Structure
2483
+ end
2484
+
2485
+ # The numerical range value type to compare a command parameter value
2486
+ # against.
2487
+ #
2488
+ # @!attribute [rw] min
2489
+ # The minimum value of a numerical range of a command parameter value.
2490
+ # @return [String]
2491
+ #
2492
+ # @!attribute [rw] max
2493
+ # The maximum value of a numerical range of a command parameter value.
2494
+ # @return [String]
2495
+ #
2496
+ class CommandParameterValueNumberRange < Struct.new(
2497
+ :min,
2498
+ :max)
2499
+ SENSITIVE = []
2500
+ include Aws::Structure
2501
+ end
2502
+
2380
2503
  # The command payload object that contains the instructions for the
2381
2504
  # device to process.
2382
2505
  #
@@ -2402,6 +2525,20 @@ module Aws::IoT
2402
2525
  include Aws::Structure
2403
2526
  end
2404
2527
 
2528
+ # Configuration that determines how the `payloadTemplate` is processed
2529
+ # by the service to generate the final payload sent to devices at
2530
+ # `StartCommandExecution` API invocation.
2531
+ #
2532
+ # @!attribute [rw] aws_json_substitution
2533
+ # Configuration for the JSON substitution preprocessor.
2534
+ # @return [Types::AwsJsonSubstitutionCommandPreprocessorConfig]
2535
+ #
2536
+ class CommandPreprocessor < Struct.new(
2537
+ :aws_json_substitution)
2538
+ SENSITIVE = []
2539
+ include Aws::Structure
2540
+ end
2541
+
2405
2542
  # Summary information about a particular command resource.
2406
2543
  #
2407
2544
  # @!attribute [rw] command_arn
@@ -2457,13 +2594,13 @@ module Aws::IoT
2457
2594
  end
2458
2595
 
2459
2596
  # The encryption configuration details that include the status
2460
- # information of the Amazon Web Services Key Management Service (KMS)
2461
- # key and the KMS access role.
2597
+ # information of the Key Management Service (KMS) key and the KMS access
2598
+ # role.
2462
2599
  #
2463
2600
  # @!attribute [rw] configuration_status
2464
2601
  # The health status of KMS key and KMS access role. If either KMS key
2465
2602
  # or KMS access role is `UNHEALTHY`, the return value will be
2466
- # `UNHEALTHY`. To use a customer-managed KMS key, the value of
2603
+ # `UNHEALTHY`. To use a customer managed KMS key, the value of
2467
2604
  # `configurationStatus` must be `HEALTHY`.
2468
2605
  # @return [String]
2469
2606
  #
@@ -2811,8 +2948,7 @@ module Aws::IoT
2811
2948
  # @return [String]
2812
2949
  #
2813
2950
  # @!attribute [rw] payload
2814
- # The payload object for the command. You must specify this
2815
- # information when using the `AWS-IoT` namespace.
2951
+ # The payload object for the static command.
2816
2952
  #
2817
2953
  # You can upload a static payload file from your local storage that
2818
2954
  # contains the instructions for the device to process. The payload
@@ -2821,20 +2957,37 @@ module Aws::IoT
2821
2957
  # content type.
2822
2958
  # @return [Types::CommandPayload]
2823
2959
  #
2960
+ # @!attribute [rw] payload_template
2961
+ # The payload template for the dynamic command.
2962
+ #
2963
+ # <note markdown="1"> This parameter is required for dynamic commands where the command
2964
+ # execution placeholders are supplied either from
2965
+ # `mandatoryParameters` or when `StartCommandExecution` is invoked.
2966
+ #
2967
+ # </note>
2968
+ # @return [String]
2969
+ #
2970
+ # @!attribute [rw] preprocessor
2971
+ # Configuration that determines how `payloadTemplate` is processed to
2972
+ # generate command execution payload.
2973
+ #
2974
+ # <note markdown="1"> This parameter is required for dynamic commands, along with
2975
+ # `payloadTemplate`, and `mandatoryParameters`.
2976
+ #
2977
+ # </note>
2978
+ # @return [Types::CommandPreprocessor]
2979
+ #
2824
2980
  # @!attribute [rw] mandatory_parameters
2825
- # A list of parameters that are required by the
2826
- # `StartCommandExecution` API. These parameters need to be specified
2827
- # only when using the `AWS-IoT-FleetWise` namespace. You can either
2828
- # specify them here or when running the command using the
2829
- # `StartCommandExecution` API.
2981
+ # A list of parameters that are used by `StartCommandExecution` API
2982
+ # for execution payload generation.
2830
2983
  # @return [Array<Types::CommandParameter>]
2831
2984
  #
2832
2985
  # @!attribute [rw] role_arn
2833
2986
  # The IAM role that you must provide when using the
2834
2987
  # `AWS-IoT-FleetWise` namespace. The role grants IoT Device Management
2835
2988
  # the permission to access IoT FleetWise resources for generating the
2836
- # payload for the command. This field is not required when you use the
2837
- # `AWS-IoT` namespace.
2989
+ # payload for the command. This field is not supported when you use
2990
+ # the `AWS-IoT` namespace.
2838
2991
  # @return [String]
2839
2992
  #
2840
2993
  # @!attribute [rw] tags
@@ -2847,6 +3000,8 @@ module Aws::IoT
2847
3000
  :display_name,
2848
3001
  :description,
2849
3002
  :payload,
3003
+ :payload_template,
3004
+ :preprocessor,
2850
3005
  :mandatory_parameters,
2851
3006
  :role_arn,
2852
3007
  :tags)
@@ -6123,17 +6278,16 @@ module Aws::IoT
6123
6278
  class DescribeEncryptionConfigurationRequest < Aws::EmptyStructure; end
6124
6279
 
6125
6280
  # @!attribute [rw] encryption_type
6126
- # The type of the Amazon Web Services Key Management Service (KMS)
6127
- # key.
6281
+ # The type of the KMS key.
6128
6282
  # @return [String]
6129
6283
  #
6130
6284
  # @!attribute [rw] kms_key_arn
6131
- # The Amazon Resource Name (ARN) of the IAM role assumed by Amazon Web
6132
- # Services IoT Core to call KMS on behalf of the customer.
6285
+ # The ARN of the customer managed KMS key.
6133
6286
  # @return [String]
6134
6287
  #
6135
6288
  # @!attribute [rw] kms_access_role_arn
6136
- # The ARN of the customer-managed KMS key.
6289
+ # The Amazon Resource Name (ARN) of the IAM role assumed by Amazon Web
6290
+ # Services IoT Core to call KMS on behalf of the customer.
6137
6291
  # @return [String]
6138
6292
  #
6139
6293
  # @!attribute [rw] configuration_details
@@ -8223,6 +8377,15 @@ module Aws::IoT
8223
8377
  # The payload object that you provided for the command.
8224
8378
  # @return [Types::CommandPayload]
8225
8379
  #
8380
+ # @!attribute [rw] payload_template
8381
+ # The payload template for the dynamic command.
8382
+ # @return [String]
8383
+ #
8384
+ # @!attribute [rw] preprocessor
8385
+ # Configuration that determines how `payloadTemplate` is processed to
8386
+ # generate command execution payload.
8387
+ # @return [Types::CommandPreprocessor]
8388
+ #
8226
8389
  # @!attribute [rw] role_arn
8227
8390
  # The IAM role that you provided when creating the command with
8228
8391
  # `AWS-IoT-FleetWise` as the namespace.
@@ -8252,6 +8415,8 @@ module Aws::IoT
8252
8415
  :description,
8253
8416
  :mandatory_parameters,
8254
8417
  :payload,
8418
+ :payload_template,
8419
+ :preprocessor,
8255
8420
  :role_arn,
8256
8421
  :created_at,
8257
8422
  :last_updated_at,
@@ -8902,11 +9067,24 @@ module Aws::IoT
8902
9067
  # endpoint.
8903
9068
  # @return [Types::HttpAuthorization]
8904
9069
  #
9070
+ # @!attribute [rw] enable_batching
9071
+ # Whether to process the HTTP action messages into a single request.
9072
+ # Value can be true or false.
9073
+ # @return [Boolean]
9074
+ #
9075
+ # @!attribute [rw] batch_config
9076
+ # The configuration settings for batching. For more information, see
9077
+ # [Batching HTTP action
9078
+ # messages](/iot/latest/developerguide/http_batching.html).
9079
+ # @return [Types::BatchConfig]
9080
+ #
8905
9081
  class HttpAction < Struct.new(
8906
9082
  :url,
8907
9083
  :confirmation_url,
8908
9084
  :headers,
8909
- :auth)
9085
+ :auth,
9086
+ :enable_batching,
9087
+ :batch_config)
8910
9088
  SENSITIVE = []
8911
9089
  include Aws::Structure
8912
9090
  end
@@ -15975,9 +16153,7 @@ module Aws::IoT
15975
16153
 
15976
16154
  # @!attribute [rw] principal
15977
16155
  # The principal. Valid principals are CertificateArn
15978
- # (arn:aws:iot:*region*:*accountId*:cert/*certificateId*),
15979
- # thingGroupArn
15980
- # (arn:aws:iot:*region*:*accountId*:thinggroup/*groupName*) and
16156
+ # (arn:aws:iot:*region*:*accountId*:cert/*certificateId*) and
15981
16157
  # CognitoId (*region*:*id*).
15982
16158
  # @return [String]
15983
16159
  #
@@ -17783,12 +17959,11 @@ module Aws::IoT
17783
17959
  end
17784
17960
 
17785
17961
  # @!attribute [rw] encryption_type
17786
- # The type of the Amazon Web Services Key Management Service (KMS)
17787
- # key.
17962
+ # The type of the KMS key.
17788
17963
  # @return [String]
17789
17964
  #
17790
17965
  # @!attribute [rw] kms_key_arn
17791
- # The ARN of the customer-managed KMS key.
17966
+ # The ARN of the customer managedKMS key.
17792
17967
  # @return [String]
17793
17968
  #
17794
17969
  # @!attribute [rw] kms_access_role_arn
data/lib/aws-sdk-iot.rb CHANGED
@@ -54,7 +54,7 @@ module Aws::IoT
54
54
  autoload :EndpointProvider, 'aws-sdk-iot/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-iot/endpoints'
56
56
 
57
- GEM_VERSION = '1.157.0'
57
+ GEM_VERSION = '1.159.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -381,9 +381,16 @@ module Aws
381
381
  content: ::String?,
382
382
  content_type: ::String?
383
383
  },
384
+ ?payload_template: ::String,
385
+ ?preprocessor: {
386
+ aws_json_substitution: {
387
+ output_format: ("JSON" | "CBOR")
388
+ }?
389
+ },
384
390
  ?mandatory_parameters: Array[
385
391
  {
386
392
  name: ::String,
393
+ type: ("STRING" | "INTEGER" | "DOUBLE" | "LONG" | "UNSIGNEDLONG" | "BOOLEAN" | "BINARY")?,
387
394
  value: {
388
395
  s: ::String?,
389
396
  b: bool?,
@@ -402,6 +409,21 @@ module Aws
402
409
  bin: ::String?,
403
410
  ul: ::String?
404
411
  }?,
412
+ value_conditions: Array[
413
+ {
414
+ comparison_operator: ("EQUALS" | "NOT_EQUALS" | "LESS_THAN" | "LESS_THAN_EQUALS" | "GREATER_THAN" | "GREATER_THAN_EQUALS" | "IN_SET" | "NOT_IN_SET" | "IN_RANGE" | "NOT_IN_RANGE"),
415
+ operand: {
416
+ number: ::String?,
417
+ numbers: Array[::String]?,
418
+ string: ::String?,
419
+ strings: Array[::String]?,
420
+ number_range: {
421
+ min: ::String,
422
+ max: ::String
423
+ }?
424
+ }
425
+ },
426
+ ]?,
405
427
  description: ::String?
406
428
  },
407
429
  ],
@@ -1368,6 +1390,12 @@ module Aws
1368
1390
  service_name: ::String,
1369
1391
  role_arn: ::String
1370
1392
  }?
1393
+ }?,
1394
+ enable_batching: bool?,
1395
+ batch_config: {
1396
+ max_batch_open_ms: ::Integer?,
1397
+ max_batch_size: ::Integer?,
1398
+ max_batch_size_bytes: ::Integer?
1371
1399
  }?
1372
1400
  }?,
1373
1401
  kafka: {
@@ -1575,6 +1603,12 @@ module Aws
1575
1603
  service_name: ::String,
1576
1604
  role_arn: ::String
1577
1605
  }?
1606
+ }?,
1607
+ enable_batching: bool?,
1608
+ batch_config: {
1609
+ max_batch_open_ms: ::Integer?,
1610
+ max_batch_size: ::Integer?,
1611
+ max_batch_size_bytes: ::Integer?
1578
1612
  }?
1579
1613
  }?,
1580
1614
  kafka: {
@@ -2619,6 +2653,8 @@ module Aws
2619
2653
  def description: () -> ::String
2620
2654
  def mandatory_parameters: () -> ::Array[Types::CommandParameter]
2621
2655
  def payload: () -> Types::CommandPayload
2656
+ def payload_template: () -> ::String
2657
+ def preprocessor: () -> Types::CommandPreprocessor
2622
2658
  def role_arn: () -> ::String
2623
2659
  def created_at: () -> ::Time
2624
2660
  def last_updated_at: () -> ::Time
@@ -4100,6 +4136,12 @@ module Aws
4100
4136
  service_name: ::String,
4101
4137
  role_arn: ::String
4102
4138
  }?
4139
+ }?,
4140
+ enable_batching: bool?,
4141
+ batch_config: {
4142
+ max_batch_open_ms: ::Integer?,
4143
+ max_batch_size: ::Integer?,
4144
+ max_batch_size_bytes: ::Integer?
4103
4145
  }?
4104
4146
  }?,
4105
4147
  kafka: {
@@ -4307,6 +4349,12 @@ module Aws
4307
4349
  service_name: ::String,
4308
4350
  role_arn: ::String
4309
4351
  }?
4352
+ }?,
4353
+ enable_batching: bool?,
4354
+ batch_config: {
4355
+ max_batch_open_ms: ::Integer?,
4356
+ max_batch_size: ::Integer?,
4357
+ max_batch_size_bytes: ::Integer?
4310
4358
  }?
4311
4359
  }?,
4312
4360
  kafka: {
data/sig/types.rbs CHANGED
@@ -368,6 +368,18 @@ module Aws::IoT
368
368
  SENSITIVE: []
369
369
  end
370
370
 
371
+ class AwsJsonSubstitutionCommandPreprocessorConfig
372
+ attr_accessor output_format: ("JSON" | "CBOR")
373
+ SENSITIVE: []
374
+ end
375
+
376
+ class BatchConfig
377
+ attr_accessor max_batch_open_ms: ::Integer
378
+ attr_accessor max_batch_size: ::Integer
379
+ attr_accessor max_batch_size_bytes: ::Integer
380
+ SENSITIVE: []
381
+ end
382
+
371
383
  class Behavior
372
384
  attr_accessor name: ::String
373
385
  attr_accessor metric: ::String
@@ -625,8 +637,10 @@ module Aws::IoT
625
637
 
626
638
  class CommandParameter
627
639
  attr_accessor name: ::String
640
+ attr_accessor type: ("STRING" | "INTEGER" | "DOUBLE" | "LONG" | "UNSIGNEDLONG" | "BOOLEAN" | "BINARY")
628
641
  attr_accessor value: Types::CommandParameterValue
629
642
  attr_accessor default_value: Types::CommandParameterValue
643
+ attr_accessor value_conditions: ::Array[Types::CommandParameterValueCondition]
630
644
  attr_accessor description: ::String
631
645
  SENSITIVE: []
632
646
  end
@@ -642,12 +656,38 @@ module Aws::IoT
642
656
  SENSITIVE: []
643
657
  end
644
658
 
659
+ class CommandParameterValueComparisonOperand
660
+ attr_accessor number: ::String
661
+ attr_accessor numbers: ::Array[::String]
662
+ attr_accessor string: ::String
663
+ attr_accessor strings: ::Array[::String]
664
+ attr_accessor number_range: Types::CommandParameterValueNumberRange
665
+ SENSITIVE: []
666
+ end
667
+
668
+ class CommandParameterValueCondition
669
+ attr_accessor comparison_operator: ("EQUALS" | "NOT_EQUALS" | "LESS_THAN" | "LESS_THAN_EQUALS" | "GREATER_THAN" | "GREATER_THAN_EQUALS" | "IN_SET" | "NOT_IN_SET" | "IN_RANGE" | "NOT_IN_RANGE")
670
+ attr_accessor operand: Types::CommandParameterValueComparisonOperand
671
+ SENSITIVE: []
672
+ end
673
+
674
+ class CommandParameterValueNumberRange
675
+ attr_accessor min: ::String
676
+ attr_accessor max: ::String
677
+ SENSITIVE: []
678
+ end
679
+
645
680
  class CommandPayload
646
681
  attr_accessor content: ::String
647
682
  attr_accessor content_type: ::String
648
683
  SENSITIVE: []
649
684
  end
650
685
 
686
+ class CommandPreprocessor
687
+ attr_accessor aws_json_substitution: Types::AwsJsonSubstitutionCommandPreprocessorConfig
688
+ SENSITIVE: []
689
+ end
690
+
651
691
  class CommandSummary
652
692
  attr_accessor command_arn: ::String
653
693
  attr_accessor command_id: ::String
@@ -769,6 +809,8 @@ module Aws::IoT
769
809
  attr_accessor display_name: ::String
770
810
  attr_accessor description: ::String
771
811
  attr_accessor payload: Types::CommandPayload
812
+ attr_accessor payload_template: ::String
813
+ attr_accessor preprocessor: Types::CommandPreprocessor
772
814
  attr_accessor mandatory_parameters: ::Array[Types::CommandParameter]
773
815
  attr_accessor role_arn: ::String
774
816
  attr_accessor tags: ::Array[Types::Tag]
@@ -2315,6 +2357,8 @@ module Aws::IoT
2315
2357
  attr_accessor description: ::String
2316
2358
  attr_accessor mandatory_parameters: ::Array[Types::CommandParameter]
2317
2359
  attr_accessor payload: Types::CommandPayload
2360
+ attr_accessor payload_template: ::String
2361
+ attr_accessor preprocessor: Types::CommandPreprocessor
2318
2362
  attr_accessor role_arn: ::String
2319
2363
  attr_accessor created_at: ::Time
2320
2364
  attr_accessor last_updated_at: ::Time
@@ -2544,6 +2588,8 @@ module Aws::IoT
2544
2588
  attr_accessor confirmation_url: ::String
2545
2589
  attr_accessor headers: ::Array[Types::HttpActionHeader]
2546
2590
  attr_accessor auth: Types::HttpAuthorization
2591
+ attr_accessor enable_batching: bool
2592
+ attr_accessor batch_config: Types::BatchConfig
2547
2593
  SENSITIVE: []
2548
2594
  end
2549
2595
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iot
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.157.0
4
+ version: 1.159.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services