aws-sdk-iot 1.78.0 → 1.82.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c82b9d892d1bb4d96a50e23bb61c7f4f4a106fc07bf660e8a1965b7fa28a4daa
4
- data.tar.gz: 122168fc15400309ed71bf85b13c627960211571228ae63fa104172d5422ece0
3
+ metadata.gz: be32f14e498118499e2b0fce3553782d4b3c617a92a422fbfffae90da604d5e6
4
+ data.tar.gz: e21a9a6ed31fa4ae934a6ce352418b0354cd68aa7e55473078560f0adbb269a1
5
5
  SHA512:
6
- metadata.gz: 39e384486eab50467be8cfa341e9bb8c65b096e0b452a9fb80d7acbe37028aa3453c791be85901afd4b7e455e59c8ea60d12efe01a86d7d2aab8ae213d168a1c
7
- data.tar.gz: 808f03415589795e6e367a13bb98e4dcc1caa0889daf1b673fd26d5a7ad95ceebd21570780db030007676125582e754b31fc0d3b04d9450d422b621f022efd84
6
+ metadata.gz: ecd89f07bf8c1dbf45aa4d68ac4af99b2b7db6167a1be1f2af24bbed322caa2f3de4396bf19bfa3355f839266637dca8a088132c3c25b70ab2432949e98ffbf3
7
+ data.tar.gz: e0b6e4c0e9eb1e978c41d22f49f1d76aa17c4081b8834e5d0043769cd1db81800f807dca7b34d7c0a7ba25d01b1e20142bc60e386f15be5f39d9fcea007fa5cd
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.82.0 (2021-12-21)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.81.0 (2021-12-08)
10
+ ------------------
11
+
12
+ * Feature - This release allows customer to enable caching of custom authorizer on HTTP protocol for clients that use persistent or Keep-Alive connection in order to reduce the number of Lambda invocations.
13
+
14
+ 1.80.0 (2021-11-30)
15
+ ------------------
16
+
17
+ * Feature - Added the ability to enable/disable IoT Fleet Indexing for Device Defender and Named Shadow information, and search them through IoT Fleet Indexing APIs.
18
+
19
+ 1.79.0 (2021-11-23)
20
+ ------------------
21
+
22
+ * Feature - This release introduces a new feature, Managed Job Template, for AWS IoT Jobs Service. Customers can now use service provided managed job templates to easily create jobs for supported standard job actions.
23
+
4
24
  1.78.0 (2021-11-04)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.78.0
1
+ 1.82.0
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
30
31
  require 'aws-sdk-core/plugins/signature_v4.rb'
31
32
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
33
 
@@ -73,6 +74,7 @@ module Aws::IoT
73
74
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
75
  add_plugin(Aws::Plugins::TransferEncoding)
75
76
  add_plugin(Aws::Plugins::HttpChecksum)
77
+ add_plugin(Aws::Plugins::DefaultsMode)
76
78
  add_plugin(Aws::Plugins::SignatureV4)
77
79
  add_plugin(Aws::Plugins::Protocols::RestJson)
78
80
 
@@ -119,7 +121,9 @@ module Aws::IoT
119
121
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
122
  # are very aggressive. Construct and pass an instance of
121
123
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
124
+ # enable retries and extended timeouts. Instance profile credential
125
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
126
+ # to true.
123
127
  #
124
128
  # @option options [required, String] :region
125
129
  # The AWS region to connect to. The configured `:region` is
@@ -173,6 +177,10 @@ module Aws::IoT
173
177
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
178
  # a clock skew correction and retry requests with skewed client clocks.
175
179
  #
180
+ # @option options [String] :defaults_mode ("legacy")
181
+ # See {Aws::DefaultsModeConfiguration} for a list of the
182
+ # accepted modes and the configuration defaults that are included.
183
+ #
176
184
  # @option options [Boolean] :disable_host_prefix_injection (false)
177
185
  # Set to true to disable SDK automatically adding host prefix
178
186
  # to default service endpoint when available.
@@ -295,7 +303,7 @@ module Aws::IoT
295
303
  # seconds to wait when opening a HTTP session before raising a
296
304
  # `Timeout::Error`.
297
305
  #
298
- # @option options [Integer] :http_read_timeout (60) The default
306
+ # @option options [Float] :http_read_timeout (60) The default
299
307
  # number of seconds to wait for response data. This value can
300
308
  # safely be set per-request on the session.
301
309
  #
@@ -311,6 +319,9 @@ module Aws::IoT
311
319
  # disables this behaviour. This value can safely be set per
312
320
  # request on the session.
313
321
  #
322
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
323
+ # in seconds.
324
+ #
314
325
  # @option options [Boolean] :http_wire_trace (false) When `true`,
315
326
  # HTTP debug output will be sent to the `:logger`.
316
327
  #
@@ -383,6 +394,11 @@ module Aws::IoT
383
394
  # @option params [String] :billing_group_name
384
395
  # The name of the billing group.
385
396
  #
397
+ # <note markdown="1"> This call is asynchronous. It might take several seconds for the
398
+ # detachment to propagate.
399
+ #
400
+ # </note>
401
+ #
386
402
  # @option params [String] :billing_group_arn
387
403
  # The ARN of the billing group.
388
404
  #
@@ -1056,6 +1072,15 @@ module Aws::IoT
1056
1072
  # Specifies whether IoT validates the token signature in an
1057
1073
  # authorization request.
1058
1074
  #
1075
+ # @option params [Boolean] :enable_caching_for_http
1076
+ # When `true`, the result from the authorizer’s Lambda function is
1077
+ # cached for clients that use persistent HTTP connections. The results
1078
+ # are cached for the time specified by the Lambda function in
1079
+ # `refreshAfterInSeconds`. This value does not affect authorization of
1080
+ # clients that use MQTT connections.
1081
+ #
1082
+ # The default value is `false`.
1083
+ #
1059
1084
  # @return [Types::CreateAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1060
1085
  #
1061
1086
  # * {Types::CreateAuthorizerResponse#authorizer_name #authorizer_name} => String
@@ -1078,6 +1103,7 @@ module Aws::IoT
1078
1103
  # },
1079
1104
  # ],
1080
1105
  # signing_disabled: false,
1106
+ # enable_caching_for_http: false,
1081
1107
  # })
1082
1108
  #
1083
1109
  # @example Response structure
@@ -1147,13 +1173,14 @@ module Aws::IoT
1147
1173
  # request.
1148
1174
  #
1149
1175
  # **Note:** The CSR must include a public key that is either an RSA key
1150
- # with a length of at least 2048 bits or an ECC key from NIST P-256 or
1151
- # NIST P-384 curves.
1176
+ # with a length of at least 2048 bits or an ECC key from NIST P-256,
1177
+ # NIST P-384, or NIST P-512 curves. For supported certificates, consult
1178
+ # [ Certificate signing algorithms supported by IoT][1].
1152
1179
  #
1153
1180
  # **Note:** Reusing the same certificate signing request (CSR) results
1154
1181
  # in a distinct certificate.
1155
1182
  #
1156
- # Requires permission to access the [CreateCertificateFromCsr][1]
1183
+ # Requires permission to access the [CreateCertificateFromCsr][2]
1157
1184
  # action.
1158
1185
  #
1159
1186
  # You can create multiple certificates in a batch by creating a
@@ -1198,7 +1225,8 @@ module Aws::IoT
1198
1225
  #
1199
1226
  #
1200
1227
  #
1201
- # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
1228
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html#x509-cert-algorithms
1229
+ # [2]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
1202
1230
  #
1203
1231
  # @option params [required, String] :certificate_signing_request
1204
1232
  # The certificate signing request (CSR).
@@ -1712,6 +1740,10 @@ module Aws::IoT
1712
1740
  # @option params [String] :job_template_arn
1713
1741
  # The ARN of the job template used to create the job.
1714
1742
  #
1743
+ # @option params [Hash<String,String>] :document_parameters
1744
+ # Parameters of a managed template that you can specify to create the
1745
+ # job document.
1746
+ #
1715
1747
  # @return [Types::CreateJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1716
1748
  #
1717
1749
  # * {Types::CreateJobResponse#job_arn #job_arn} => String
@@ -1763,6 +1795,9 @@ module Aws::IoT
1763
1795
  # ],
1764
1796
  # namespace_id: "NamespaceId",
1765
1797
  # job_template_arn: "JobTemplateArn",
1798
+ # document_parameters: {
1799
+ # "ParameterKey" => "ParameterValue",
1800
+ # },
1766
1801
  # })
1767
1802
  #
1768
1803
  # @example Response structure
@@ -2767,8 +2802,8 @@ module Aws::IoT
2767
2802
  # The files to stream.
2768
2803
  #
2769
2804
  # @option params [required, String] :role_arn
2770
- # An IAM role that allows the IoT service principal assumes to access
2771
- # your S3 files.
2805
+ # An IAM role that allows the IoT service principal to access your S3
2806
+ # files.
2772
2807
  #
2773
2808
  # @option params [Array<Types::Tag>] :tags
2774
2809
  # Metadata which can be used to manage streams.
@@ -4829,6 +4864,7 @@ module Aws::IoT
4829
4864
  # resp.authorizer_description.creation_date #=> Time
4830
4865
  # resp.authorizer_description.last_modified_date #=> Time
4831
4866
  # resp.authorizer_description.signing_disabled #=> Boolean
4867
+ # resp.authorizer_description.enable_caching_for_http #=> Boolean
4832
4868
  #
4833
4869
  # @overload describe_authorizer(params = {})
4834
4870
  # @param [Hash] params ({})
@@ -5043,6 +5079,7 @@ module Aws::IoT
5043
5079
  # resp.authorizer_description.creation_date #=> Time
5044
5080
  # resp.authorizer_description.last_modified_date #=> Time
5045
5081
  # resp.authorizer_description.signing_disabled #=> Boolean
5082
+ # resp.authorizer_description.enable_caching_for_http #=> Boolean
5046
5083
  #
5047
5084
  # @overload describe_default_authorizer(params = {})
5048
5085
  # @param [Hash] params ({})
@@ -5451,6 +5488,8 @@ module Aws::IoT
5451
5488
  # resp.job.timeout_config.in_progress_timeout_in_minutes #=> Integer
5452
5489
  # resp.job.namespace_id #=> String
5453
5490
  # resp.job.job_template_arn #=> String
5491
+ # resp.job.document_parameters #=> Hash
5492
+ # resp.job.document_parameters["ParameterKey"] #=> String
5454
5493
  #
5455
5494
  # @overload describe_job(params = {})
5456
5495
  # @param [Hash] params ({})
@@ -5564,6 +5603,55 @@ module Aws::IoT
5564
5603
  req.send_request(options)
5565
5604
  end
5566
5605
 
5606
+ # View details of a managed job template.
5607
+ #
5608
+ # @option params [required, String] :template_name
5609
+ # The unique name of a managed job template, which is required.
5610
+ #
5611
+ # @option params [String] :template_version
5612
+ # An optional parameter to specify version of a managed template. If not
5613
+ # specified, the pre-defined default version is returned.
5614
+ #
5615
+ # @return [Types::DescribeManagedJobTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5616
+ #
5617
+ # * {Types::DescribeManagedJobTemplateResponse#template_name #template_name} => String
5618
+ # * {Types::DescribeManagedJobTemplateResponse#template_arn #template_arn} => String
5619
+ # * {Types::DescribeManagedJobTemplateResponse#description #description} => String
5620
+ # * {Types::DescribeManagedJobTemplateResponse#template_version #template_version} => String
5621
+ # * {Types::DescribeManagedJobTemplateResponse#environments #environments} => Array&lt;String&gt;
5622
+ # * {Types::DescribeManagedJobTemplateResponse#document_parameters #document_parameters} => Array&lt;Types::DocumentParameter&gt;
5623
+ # * {Types::DescribeManagedJobTemplateResponse#document #document} => String
5624
+ #
5625
+ # @example Request syntax with placeholder values
5626
+ #
5627
+ # resp = client.describe_managed_job_template({
5628
+ # template_name: "ManagedJobTemplateName", # required
5629
+ # template_version: "ManagedTemplateVersion",
5630
+ # })
5631
+ #
5632
+ # @example Response structure
5633
+ #
5634
+ # resp.template_name #=> String
5635
+ # resp.template_arn #=> String
5636
+ # resp.description #=> String
5637
+ # resp.template_version #=> String
5638
+ # resp.environments #=> Array
5639
+ # resp.environments[0] #=> String
5640
+ # resp.document_parameters #=> Array
5641
+ # resp.document_parameters[0].key #=> String
5642
+ # resp.document_parameters[0].description #=> String
5643
+ # resp.document_parameters[0].regex #=> String
5644
+ # resp.document_parameters[0].example #=> String
5645
+ # resp.document_parameters[0].optional #=> Boolean
5646
+ # resp.document #=> String
5647
+ #
5648
+ # @overload describe_managed_job_template(params = {})
5649
+ # @param [Hash] params ({})
5650
+ def describe_managed_job_template(params = {}, options = {})
5651
+ req = build_request(:describe_managed_job_template, params)
5652
+ req.send_request(options)
5653
+ end
5654
+
5567
5655
  # Gets information about a mitigation action.
5568
5656
  #
5569
5657
  # Requires permission to access the [DescribeMitigationAction][1]
@@ -6539,6 +6627,8 @@ module Aws::IoT
6539
6627
  #
6540
6628
  # resp.thing_indexing_configuration.thing_indexing_mode #=> String, one of "OFF", "REGISTRY", "REGISTRY_AND_SHADOW"
6541
6629
  # resp.thing_indexing_configuration.thing_connectivity_indexing_mode #=> String, one of "OFF", "STATUS"
6630
+ # resp.thing_indexing_configuration.device_defender_indexing_mode #=> String, one of "OFF", "VIOLATIONS"
6631
+ # resp.thing_indexing_configuration.named_shadow_indexing_mode #=> String, one of "OFF", "ON"
6542
6632
  # resp.thing_indexing_configuration.managed_fields #=> Array
6543
6633
  # resp.thing_indexing_configuration.managed_fields[0].name #=> String
6544
6634
  # resp.thing_indexing_configuration.managed_fields[0].type #=> String, one of "Number", "String", "Boolean"
@@ -8699,6 +8789,50 @@ module Aws::IoT
8699
8789
  req.send_request(options)
8700
8790
  end
8701
8791
 
8792
+ # Returns a list of managed job templates.
8793
+ #
8794
+ # @option params [String] :template_name
8795
+ # An optional parameter for template name. If specified, only the
8796
+ # versions of the managed job templates that have the specified template
8797
+ # name will be returned.
8798
+ #
8799
+ # @option params [Integer] :max_results
8800
+ # Maximum number of entries that can be returned.
8801
+ #
8802
+ # @option params [String] :next_token
8803
+ # The token to retrieve the next set of results.
8804
+ #
8805
+ # @return [Types::ListManagedJobTemplatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8806
+ #
8807
+ # * {Types::ListManagedJobTemplatesResponse#managed_job_templates #managed_job_templates} => Array&lt;Types::ManagedJobTemplateSummary&gt;
8808
+ # * {Types::ListManagedJobTemplatesResponse#next_token #next_token} => String
8809
+ #
8810
+ # @example Request syntax with placeholder values
8811
+ #
8812
+ # resp = client.list_managed_job_templates({
8813
+ # template_name: "ManagedJobTemplateName",
8814
+ # max_results: 1,
8815
+ # next_token: "NextToken",
8816
+ # })
8817
+ #
8818
+ # @example Response structure
8819
+ #
8820
+ # resp.managed_job_templates #=> Array
8821
+ # resp.managed_job_templates[0].template_arn #=> String
8822
+ # resp.managed_job_templates[0].template_name #=> String
8823
+ # resp.managed_job_templates[0].description #=> String
8824
+ # resp.managed_job_templates[0].environments #=> Array
8825
+ # resp.managed_job_templates[0].environments[0] #=> String
8826
+ # resp.managed_job_templates[0].template_version #=> String
8827
+ # resp.next_token #=> String
8828
+ #
8829
+ # @overload list_managed_job_templates(params = {})
8830
+ # @param [Hash] params ({})
8831
+ def list_managed_job_templates(params = {}, options = {})
8832
+ req = build_request(:list_managed_job_templates, params)
8833
+ req.send_request(options)
8834
+ end
8835
+
8702
8836
  # Gets a list of all mitigation actions that match the specified filter
8703
8837
  # criteria.
8704
8838
  #
@@ -10494,7 +10628,12 @@ module Aws::IoT
10494
10628
  end
10495
10629
 
10496
10630
  # Register a certificate that does not have a certificate authority
10497
- # (CA).
10631
+ # (CA). For supported certificates, consult [ Certificate signing
10632
+ # algorithms supported by IoT][1].
10633
+ #
10634
+ #
10635
+ #
10636
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html#x509-cert-algorithms
10498
10637
  #
10499
10638
  # @option params [required, String] :certificate_pem
10500
10639
  # The certificate data, in PEM format.
@@ -10629,6 +10768,11 @@ module Aws::IoT
10629
10768
  # Requires permission to access the [RemoveThingFromBillingGroup][1]
10630
10769
  # action.
10631
10770
  #
10771
+ # <note markdown="1"> This call is asynchronous. It might take several seconds for the
10772
+ # detachment to propagate.
10773
+ #
10774
+ # </note>
10775
+ #
10632
10776
  #
10633
10777
  #
10634
10778
  # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
@@ -11148,6 +11292,7 @@ module Aws::IoT
11148
11292
  # resp.things[0].attributes #=> Hash
11149
11293
  # resp.things[0].attributes["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
11150
11294
  # resp.things[0].shadow #=> String
11295
+ # resp.things[0].device_defender #=> String
11151
11296
  # resp.things[0].connectivity.connected #=> Boolean
11152
11297
  # resp.things[0].connectivity.timestamp #=> Integer
11153
11298
  # resp.things[0].connectivity.disconnect_reason #=> String
@@ -11991,6 +12136,11 @@ module Aws::IoT
11991
12136
  # @option params [String] :status
11992
12137
  # The status of the update authorizer request.
11993
12138
  #
12139
+ # @option params [Boolean] :enable_caching_for_http
12140
+ # When `true`, the result from the authorizer’s Lambda function is
12141
+ # cached for the time specified in `refreshAfterInSeconds`. The cached
12142
+ # result is used while the device reuses the same HTTP connection.
12143
+ #
11994
12144
  # @return [Types::UpdateAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11995
12145
  #
11996
12146
  # * {Types::UpdateAuthorizerResponse#authorizer_name #authorizer_name} => String
@@ -12006,6 +12156,7 @@ module Aws::IoT
12006
12156
  # "KeyName" => "KeyValue",
12007
12157
  # },
12008
12158
  # status: "ACTIVE", # accepts ACTIVE, INACTIVE
12159
+ # enable_caching_for_http: false,
12009
12160
  # })
12010
12161
  #
12011
12162
  # @example Response structure
@@ -12451,7 +12602,7 @@ module Aws::IoT
12451
12602
  #
12452
12603
  #
12453
12604
  #
12454
- # [1]: https://docs.aws.amazon.com/https:/docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
12605
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
12455
12606
  #
12456
12607
  # @option params [Integer] :expected_version
12457
12608
  # The expected version of the fleet metric record in the registry.
@@ -12506,6 +12657,8 @@ module Aws::IoT
12506
12657
  # thing_indexing_configuration: {
12507
12658
  # thing_indexing_mode: "OFF", # required, accepts OFF, REGISTRY, REGISTRY_AND_SHADOW
12508
12659
  # thing_connectivity_indexing_mode: "OFF", # accepts OFF, STATUS
12660
+ # device_defender_indexing_mode: "OFF", # accepts OFF, VIOLATIONS
12661
+ # named_shadow_indexing_mode: "OFF", # accepts OFF, ON
12509
12662
  # managed_fields: [
12510
12663
  # {
12511
12664
  # name: "FieldName",
@@ -13382,7 +13535,7 @@ module Aws::IoT
13382
13535
  params: params,
13383
13536
  config: config)
13384
13537
  context[:gem_name] = 'aws-sdk-iot'
13385
- context[:gem_version] = '1.78.0'
13538
+ context[:gem_version] = '1.82.0'
13386
13539
  Seahorse::Client::Request.new(handlers, context)
13387
13540
  end
13388
13541
 
@@ -405,6 +405,8 @@ module Aws::IoT
405
405
  DescribeJobResponse = Shapes::StructureShape.new(name: 'DescribeJobResponse')
406
406
  DescribeJobTemplateRequest = Shapes::StructureShape.new(name: 'DescribeJobTemplateRequest')
407
407
  DescribeJobTemplateResponse = Shapes::StructureShape.new(name: 'DescribeJobTemplateResponse')
408
+ DescribeManagedJobTemplateRequest = Shapes::StructureShape.new(name: 'DescribeManagedJobTemplateRequest')
409
+ DescribeManagedJobTemplateResponse = Shapes::StructureShape.new(name: 'DescribeManagedJobTemplateResponse')
408
410
  DescribeMitigationActionRequest = Shapes::StructureShape.new(name: 'DescribeMitigationActionRequest')
409
411
  DescribeMitigationActionResponse = Shapes::StructureShape.new(name: 'DescribeMitigationActionResponse')
410
412
  DescribeProvisioningTemplateRequest = Shapes::StructureShape.new(name: 'DescribeProvisioningTemplateRequest')
@@ -449,6 +451,7 @@ module Aws::IoT
449
451
  DetectMitigationActionsTaskTarget = Shapes::StructureShape.new(name: 'DetectMitigationActionsTaskTarget')
450
452
  DetectMitigationActionsToExecuteList = Shapes::ListShape.new(name: 'DetectMitigationActionsToExecuteList')
451
453
  DeviceCertificateUpdateAction = Shapes::StringShape.new(name: 'DeviceCertificateUpdateAction')
454
+ DeviceDefenderIndexingMode = Shapes::StringShape.new(name: 'DeviceDefenderIndexingMode')
452
455
  DeviceDefenderThingName = Shapes::StringShape.new(name: 'DeviceDefenderThingName')
453
456
  DimensionArn = Shapes::StringShape.new(name: 'DimensionArn')
454
457
  DimensionName = Shapes::StringShape.new(name: 'DimensionName')
@@ -460,6 +463,8 @@ module Aws::IoT
460
463
  DisableAllLogs = Shapes::BooleanShape.new(name: 'DisableAllLogs')
461
464
  DisableTopicRuleRequest = Shapes::StructureShape.new(name: 'DisableTopicRuleRequest')
462
465
  DisconnectReason = Shapes::StringShape.new(name: 'DisconnectReason')
466
+ DocumentParameter = Shapes::StructureShape.new(name: 'DocumentParameter')
467
+ DocumentParameters = Shapes::ListShape.new(name: 'DocumentParameters')
463
468
  DomainConfigurationArn = Shapes::StringShape.new(name: 'DomainConfigurationArn')
464
469
  DomainConfigurationName = Shapes::StringShape.new(name: 'DomainConfigurationName')
465
470
  DomainConfigurationStatus = Shapes::StringShape.new(name: 'DomainConfigurationStatus')
@@ -480,17 +485,21 @@ module Aws::IoT
480
485
  ElasticsearchId = Shapes::StringShape.new(name: 'ElasticsearchId')
481
486
  ElasticsearchIndex = Shapes::StringShape.new(name: 'ElasticsearchIndex')
482
487
  ElasticsearchType = Shapes::StringShape.new(name: 'ElasticsearchType')
488
+ EnableCachingForHttp = Shapes::BooleanShape.new(name: 'EnableCachingForHttp')
483
489
  EnableIoTLoggingParams = Shapes::StructureShape.new(name: 'EnableIoTLoggingParams')
484
490
  EnableTopicRuleRequest = Shapes::StructureShape.new(name: 'EnableTopicRuleRequest')
485
491
  Enabled = Shapes::BooleanShape.new(name: 'Enabled')
486
492
  EndpointAddress = Shapes::StringShape.new(name: 'EndpointAddress')
487
493
  EndpointType = Shapes::StringShape.new(name: 'EndpointType')
494
+ Environment = Shapes::StringShape.new(name: 'Environment')
495
+ Environments = Shapes::ListShape.new(name: 'Environments')
488
496
  ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
489
497
  ErrorInfo = Shapes::StructureShape.new(name: 'ErrorInfo')
490
498
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
491
499
  EvaluationStatistic = Shapes::StringShape.new(name: 'EvaluationStatistic')
492
500
  EventConfigurations = Shapes::MapShape.new(name: 'EventConfigurations')
493
501
  EventType = Shapes::StringShape.new(name: 'EventType')
502
+ Example = Shapes::StringShape.new(name: 'Example')
494
503
  ExecutionNamePrefix = Shapes::StringShape.new(name: 'ExecutionNamePrefix')
495
504
  ExecutionNumber = Shapes::IntegerShape.new(name: 'ExecutionNumber')
496
505
  ExpectedVersion = Shapes::IntegerShape.new(name: 'ExpectedVersion')
@@ -592,6 +601,7 @@ module Aws::IoT
592
601
  InputName = Shapes::StringShape.new(name: 'InputName')
593
602
  InternalException = Shapes::StructureShape.new(name: 'InternalException')
594
603
  InternalFailureException = Shapes::StructureShape.new(name: 'InternalFailureException')
604
+ InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
595
605
  InvalidAggregationException = Shapes::StructureShape.new(name: 'InvalidAggregationException')
596
606
  InvalidQueryException = Shapes::StructureShape.new(name: 'InvalidQueryException')
597
607
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
@@ -687,6 +697,8 @@ module Aws::IoT
687
697
  ListJobTemplatesResponse = Shapes::StructureShape.new(name: 'ListJobTemplatesResponse')
688
698
  ListJobsRequest = Shapes::StructureShape.new(name: 'ListJobsRequest')
689
699
  ListJobsResponse = Shapes::StructureShape.new(name: 'ListJobsResponse')
700
+ ListManagedJobTemplatesRequest = Shapes::StructureShape.new(name: 'ListManagedJobTemplatesRequest')
701
+ ListManagedJobTemplatesResponse = Shapes::StructureShape.new(name: 'ListManagedJobTemplatesResponse')
690
702
  ListMitigationActionsRequest = Shapes::StructureShape.new(name: 'ListMitigationActionsRequest')
691
703
  ListMitigationActionsResponse = Shapes::StructureShape.new(name: 'ListMitigationActionsResponse')
692
704
  ListOTAUpdatesRequest = Shapes::StructureShape.new(name: 'ListOTAUpdatesRequest')
@@ -761,6 +773,10 @@ module Aws::IoT
761
773
  LoggingOptionsPayload = Shapes::StructureShape.new(name: 'LoggingOptionsPayload')
762
774
  MachineLearningDetectionConfig = Shapes::StructureShape.new(name: 'MachineLearningDetectionConfig')
763
775
  MalformedPolicyException = Shapes::StructureShape.new(name: 'MalformedPolicyException')
776
+ ManagedJobTemplateName = Shapes::StringShape.new(name: 'ManagedJobTemplateName')
777
+ ManagedJobTemplateSummary = Shapes::StructureShape.new(name: 'ManagedJobTemplateSummary')
778
+ ManagedJobTemplatesSummaryList = Shapes::ListShape.new(name: 'ManagedJobTemplatesSummaryList')
779
+ ManagedTemplateVersion = Shapes::StringShape.new(name: 'ManagedTemplateVersion')
764
780
  Marker = Shapes::StringShape.new(name: 'Marker')
765
781
  MaxBuckets = Shapes::IntegerShape.new(name: 'MaxBuckets')
766
782
  MaxJobExecutionsPerMin = Shapes::IntegerShape.new(name: 'MaxJobExecutionsPerMin')
@@ -795,6 +811,7 @@ module Aws::IoT
795
811
  MqttContext = Shapes::StructureShape.new(name: 'MqttContext')
796
812
  MqttPassword = Shapes::BlobShape.new(name: 'MqttPassword')
797
813
  MqttUsername = Shapes::StringShape.new(name: 'MqttUsername')
814
+ NamedShadowIndexingMode = Shapes::StringShape.new(name: 'NamedShadowIndexingMode')
798
815
  NamespaceId = Shapes::StringShape.new(name: 'NamespaceId')
799
816
  NextToken = Shapes::StringShape.new(name: 'NextToken')
800
817
  NonCompliantChecksCount = Shapes::IntegerShape.new(name: 'NonCompliantChecksCount')
@@ -817,12 +834,16 @@ module Aws::IoT
817
834
  OTAUpdateSummary = Shapes::StructureShape.new(name: 'OTAUpdateSummary')
818
835
  OTAUpdatesSummary = Shapes::ListShape.new(name: 'OTAUpdatesSummary')
819
836
  OpenSearchAction = Shapes::StructureShape.new(name: 'OpenSearchAction')
837
+ Optional = Shapes::BooleanShape.new(name: 'Optional')
820
838
  OptionalVersion = Shapes::IntegerShape.new(name: 'OptionalVersion')
821
839
  OutgoingCertificate = Shapes::StructureShape.new(name: 'OutgoingCertificate')
822
840
  OutgoingCertificates = Shapes::ListShape.new(name: 'OutgoingCertificates')
823
841
  OverrideDynamicGroups = Shapes::BooleanShape.new(name: 'OverrideDynamicGroups')
824
842
  PageSize = Shapes::IntegerShape.new(name: 'PageSize')
825
843
  Parameter = Shapes::StringShape.new(name: 'Parameter')
844
+ ParameterKey = Shapes::StringShape.new(name: 'ParameterKey')
845
+ ParameterMap = Shapes::MapShape.new(name: 'ParameterMap')
846
+ ParameterValue = Shapes::StringShape.new(name: 'ParameterValue')
826
847
  Parameters = Shapes::MapShape.new(name: 'Parameters')
827
848
  PartitionKey = Shapes::StringShape.new(name: 'PartitionKey')
828
849
  PayloadField = Shapes::StringShape.new(name: 'PayloadField')
@@ -890,6 +911,7 @@ module Aws::IoT
890
911
  ReasonForNonComplianceCodes = Shapes::ListShape.new(name: 'ReasonForNonComplianceCodes')
891
912
  Recursive = Shapes::BooleanShape.new(name: 'Recursive')
892
913
  RecursiveWithoutDefault = Shapes::BooleanShape.new(name: 'RecursiveWithoutDefault')
914
+ Regex = Shapes::StringShape.new(name: 'Regex')
893
915
  RegisterCACertificateRequest = Shapes::StructureShape.new(name: 'RegisterCACertificateRequest')
894
916
  RegisterCACertificateResponse = Shapes::StructureShape.new(name: 'RegisterCACertificateResponse')
895
917
  RegisterCertificateRequest = Shapes::StructureShape.new(name: 'RegisterCertificateRequest')
@@ -1507,6 +1529,7 @@ module Aws::IoT
1507
1529
  AuthorizerDescription.add_member(:creation_date, Shapes::ShapeRef.new(shape: DateType, location_name: "creationDate"))
1508
1530
  AuthorizerDescription.add_member(:last_modified_date, Shapes::ShapeRef.new(shape: DateType, location_name: "lastModifiedDate"))
1509
1531
  AuthorizerDescription.add_member(:signing_disabled, Shapes::ShapeRef.new(shape: BooleanKey, location_name: "signingDisabled"))
1532
+ AuthorizerDescription.add_member(:enable_caching_for_http, Shapes::ShapeRef.new(shape: EnableCachingForHttp, location_name: "enableCachingForHttp"))
1510
1533
  AuthorizerDescription.struct_class = Types::AuthorizerDescription
1511
1534
 
1512
1535
  AuthorizerSummary.add_member(:authorizer_name, Shapes::ShapeRef.new(shape: AuthorizerName, location_name: "authorizerName"))
@@ -1755,6 +1778,7 @@ module Aws::IoT
1755
1778
  CreateAuthorizerRequest.add_member(:status, Shapes::ShapeRef.new(shape: AuthorizerStatus, location_name: "status"))
1756
1779
  CreateAuthorizerRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
1757
1780
  CreateAuthorizerRequest.add_member(:signing_disabled, Shapes::ShapeRef.new(shape: BooleanKey, location_name: "signingDisabled"))
1781
+ CreateAuthorizerRequest.add_member(:enable_caching_for_http, Shapes::ShapeRef.new(shape: EnableCachingForHttp, location_name: "enableCachingForHttp"))
1758
1782
  CreateAuthorizerRequest.struct_class = Types::CreateAuthorizerRequest
1759
1783
 
1760
1784
  CreateAuthorizerResponse.add_member(:authorizer_name, Shapes::ShapeRef.new(shape: AuthorizerName, location_name: "authorizerName"))
@@ -1860,6 +1884,7 @@ module Aws::IoT
1860
1884
  CreateJobRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
1861
1885
  CreateJobRequest.add_member(:namespace_id, Shapes::ShapeRef.new(shape: NamespaceId, location_name: "namespaceId"))
1862
1886
  CreateJobRequest.add_member(:job_template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "jobTemplateArn"))
1887
+ CreateJobRequest.add_member(:document_parameters, Shapes::ShapeRef.new(shape: ParameterMap, location_name: "documentParameters"))
1863
1888
  CreateJobRequest.struct_class = Types::CreateJobRequest
1864
1889
 
1865
1890
  CreateJobResponse.add_member(:job_arn, Shapes::ShapeRef.new(shape: JobArn, location_name: "jobArn"))
@@ -2439,6 +2464,19 @@ module Aws::IoT
2439
2464
  DescribeJobTemplateResponse.add_member(:timeout_config, Shapes::ShapeRef.new(shape: TimeoutConfig, location_name: "timeoutConfig"))
2440
2465
  DescribeJobTemplateResponse.struct_class = Types::DescribeJobTemplateResponse
2441
2466
 
2467
+ DescribeManagedJobTemplateRequest.add_member(:template_name, Shapes::ShapeRef.new(shape: ManagedJobTemplateName, required: true, location: "uri", location_name: "templateName"))
2468
+ DescribeManagedJobTemplateRequest.add_member(:template_version, Shapes::ShapeRef.new(shape: ManagedTemplateVersion, location: "querystring", location_name: "templateVersion"))
2469
+ DescribeManagedJobTemplateRequest.struct_class = Types::DescribeManagedJobTemplateRequest
2470
+
2471
+ DescribeManagedJobTemplateResponse.add_member(:template_name, Shapes::ShapeRef.new(shape: ManagedJobTemplateName, location_name: "templateName"))
2472
+ DescribeManagedJobTemplateResponse.add_member(:template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "templateArn"))
2473
+ DescribeManagedJobTemplateResponse.add_member(:description, Shapes::ShapeRef.new(shape: JobDescription, location_name: "description"))
2474
+ DescribeManagedJobTemplateResponse.add_member(:template_version, Shapes::ShapeRef.new(shape: ManagedTemplateVersion, location_name: "templateVersion"))
2475
+ DescribeManagedJobTemplateResponse.add_member(:environments, Shapes::ShapeRef.new(shape: Environments, location_name: "environments"))
2476
+ DescribeManagedJobTemplateResponse.add_member(:document_parameters, Shapes::ShapeRef.new(shape: DocumentParameters, location_name: "documentParameters"))
2477
+ DescribeManagedJobTemplateResponse.add_member(:document, Shapes::ShapeRef.new(shape: JobDocument, location_name: "document"))
2478
+ DescribeManagedJobTemplateResponse.struct_class = Types::DescribeManagedJobTemplateResponse
2479
+
2442
2480
  DescribeMitigationActionRequest.add_member(:action_name, Shapes::ShapeRef.new(shape: MitigationActionName, required: true, location: "uri", location_name: "actionName"))
2443
2481
  DescribeMitigationActionRequest.struct_class = Types::DescribeMitigationActionRequest
2444
2482
 
@@ -2642,6 +2680,15 @@ module Aws::IoT
2642
2680
  DisableTopicRuleRequest.add_member(:rule_name, Shapes::ShapeRef.new(shape: RuleName, required: true, location: "uri", location_name: "ruleName"))
2643
2681
  DisableTopicRuleRequest.struct_class = Types::DisableTopicRuleRequest
2644
2682
 
2683
+ DocumentParameter.add_member(:key, Shapes::ShapeRef.new(shape: ParameterKey, location_name: "key"))
2684
+ DocumentParameter.add_member(:description, Shapes::ShapeRef.new(shape: JobDescription, location_name: "description"))
2685
+ DocumentParameter.add_member(:regex, Shapes::ShapeRef.new(shape: Regex, location_name: "regex"))
2686
+ DocumentParameter.add_member(:example, Shapes::ShapeRef.new(shape: Example, location_name: "example"))
2687
+ DocumentParameter.add_member(:optional, Shapes::ShapeRef.new(shape: Optional, location_name: "optional"))
2688
+ DocumentParameter.struct_class = Types::DocumentParameter
2689
+
2690
+ DocumentParameters.member = Shapes::ShapeRef.new(shape: DocumentParameter)
2691
+
2645
2692
  DomainConfigurationSummary.add_member(:domain_configuration_name, Shapes::ShapeRef.new(shape: ReservedDomainConfigurationName, location_name: "domainConfigurationName"))
2646
2693
  DomainConfigurationSummary.add_member(:domain_configuration_arn, Shapes::ShapeRef.new(shape: DomainConfigurationArn, location_name: "domainConfigurationArn"))
2647
2694
  DomainConfigurationSummary.add_member(:service_type, Shapes::ShapeRef.new(shape: ServiceType, location_name: "serviceType"))
@@ -2686,6 +2733,8 @@ module Aws::IoT
2686
2733
  EnableTopicRuleRequest.add_member(:rule_name, Shapes::ShapeRef.new(shape: RuleName, required: true, location: "uri", location_name: "ruleName"))
2687
2734
  EnableTopicRuleRequest.struct_class = Types::EnableTopicRuleRequest
2688
2735
 
2736
+ Environments.member = Shapes::ShapeRef.new(shape: Environment)
2737
+
2689
2738
  ErrorInfo.add_member(:code, Shapes::ShapeRef.new(shape: Code, location_name: "code"))
2690
2739
  ErrorInfo.add_member(:message, Shapes::ShapeRef.new(shape: OTAUpdateErrorMessage, location_name: "message"))
2691
2740
  ErrorInfo.struct_class = Types::ErrorInfo
@@ -2905,6 +2954,9 @@ module Aws::IoT
2905
2954
  InternalFailureException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
2906
2955
  InternalFailureException.struct_class = Types::InternalFailureException
2907
2956
 
2957
+ InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
2958
+ InternalServerException.struct_class = Types::InternalServerException
2959
+
2908
2960
  InvalidAggregationException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
2909
2961
  InvalidAggregationException.struct_class = Types::InvalidAggregationException
2910
2962
 
@@ -2955,6 +3007,7 @@ module Aws::IoT
2955
3007
  Job.add_member(:timeout_config, Shapes::ShapeRef.new(shape: TimeoutConfig, location_name: "timeoutConfig"))
2956
3008
  Job.add_member(:namespace_id, Shapes::ShapeRef.new(shape: NamespaceId, location_name: "namespaceId"))
2957
3009
  Job.add_member(:job_template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "jobTemplateArn"))
3010
+ Job.add_member(:document_parameters, Shapes::ShapeRef.new(shape: ParameterMap, location_name: "documentParameters"))
2958
3011
  Job.struct_class = Types::Job
2959
3012
 
2960
3013
  JobExecution.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "jobId"))
@@ -3288,6 +3341,15 @@ module Aws::IoT
3288
3341
  ListJobsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3289
3342
  ListJobsResponse.struct_class = Types::ListJobsResponse
3290
3343
 
3344
+ ListManagedJobTemplatesRequest.add_member(:template_name, Shapes::ShapeRef.new(shape: ManagedJobTemplateName, location: "querystring", location_name: "templateName"))
3345
+ ListManagedJobTemplatesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: LaserMaxResults, location: "querystring", location_name: "maxResults"))
3346
+ ListManagedJobTemplatesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
3347
+ ListManagedJobTemplatesRequest.struct_class = Types::ListManagedJobTemplatesRequest
3348
+
3349
+ ListManagedJobTemplatesResponse.add_member(:managed_job_templates, Shapes::ShapeRef.new(shape: ManagedJobTemplatesSummaryList, location_name: "managedJobTemplates"))
3350
+ ListManagedJobTemplatesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3351
+ ListManagedJobTemplatesResponse.struct_class = Types::ListManagedJobTemplatesResponse
3352
+
3291
3353
  ListMitigationActionsRequest.add_member(:action_type, Shapes::ShapeRef.new(shape: MitigationActionType, location: "querystring", location_name: "actionType"))
3292
3354
  ListMitigationActionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
3293
3355
  ListMitigationActionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
@@ -3599,6 +3661,15 @@ module Aws::IoT
3599
3661
  MalformedPolicyException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
3600
3662
  MalformedPolicyException.struct_class = Types::MalformedPolicyException
3601
3663
 
3664
+ ManagedJobTemplateSummary.add_member(:template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "templateArn"))
3665
+ ManagedJobTemplateSummary.add_member(:template_name, Shapes::ShapeRef.new(shape: ManagedJobTemplateName, location_name: "templateName"))
3666
+ ManagedJobTemplateSummary.add_member(:description, Shapes::ShapeRef.new(shape: JobDescription, location_name: "description"))
3667
+ ManagedJobTemplateSummary.add_member(:environments, Shapes::ShapeRef.new(shape: Environments, location_name: "environments"))
3668
+ ManagedJobTemplateSummary.add_member(:template_version, Shapes::ShapeRef.new(shape: ManagedTemplateVersion, location_name: "templateVersion"))
3669
+ ManagedJobTemplateSummary.struct_class = Types::ManagedJobTemplateSummary
3670
+
3671
+ ManagedJobTemplatesSummaryList.member = Shapes::ShapeRef.new(shape: ManagedJobTemplateSummary)
3672
+
3602
3673
  MetricDimension.add_member(:dimension_name, Shapes::ShapeRef.new(shape: DimensionName, required: true, location_name: "dimensionName"))
3603
3674
  MetricDimension.add_member(:operator, Shapes::ShapeRef.new(shape: DimensionValueOperator, location_name: "operator"))
3604
3675
  MetricDimension.struct_class = Types::MetricDimension
@@ -3711,6 +3782,9 @@ module Aws::IoT
3711
3782
 
3712
3783
  OutgoingCertificates.member = Shapes::ShapeRef.new(shape: OutgoingCertificate)
3713
3784
 
3785
+ ParameterMap.key = Shapes::ShapeRef.new(shape: ParameterKey)
3786
+ ParameterMap.value = Shapes::ShapeRef.new(shape: ParameterValue)
3787
+
3714
3788
  Parameters.key = Shapes::ShapeRef.new(shape: Parameter)
3715
3789
  Parameters.value = Shapes::ShapeRef.new(shape: Value)
3716
3790
 
@@ -4244,6 +4318,7 @@ module Aws::IoT
4244
4318
  ThingDocument.add_member(:thing_group_names, Shapes::ShapeRef.new(shape: ThingGroupNameList, location_name: "thingGroupNames"))
4245
4319
  ThingDocument.add_member(:attributes, Shapes::ShapeRef.new(shape: Attributes, location_name: "attributes"))
4246
4320
  ThingDocument.add_member(:shadow, Shapes::ShapeRef.new(shape: JsonDocument, location_name: "shadow"))
4321
+ ThingDocument.add_member(:device_defender, Shapes::ShapeRef.new(shape: JsonDocument, location_name: "deviceDefender"))
4247
4322
  ThingDocument.add_member(:connectivity, Shapes::ShapeRef.new(shape: ThingConnectivity, location_name: "connectivity"))
4248
4323
  ThingDocument.struct_class = Types::ThingDocument
4249
4324
 
@@ -4282,6 +4357,8 @@ module Aws::IoT
4282
4357
 
4283
4358
  ThingIndexingConfiguration.add_member(:thing_indexing_mode, Shapes::ShapeRef.new(shape: ThingIndexingMode, required: true, location_name: "thingIndexingMode"))
4284
4359
  ThingIndexingConfiguration.add_member(:thing_connectivity_indexing_mode, Shapes::ShapeRef.new(shape: ThingConnectivityIndexingMode, location_name: "thingConnectivityIndexingMode"))
4360
+ ThingIndexingConfiguration.add_member(:device_defender_indexing_mode, Shapes::ShapeRef.new(shape: DeviceDefenderIndexingMode, location_name: "deviceDefenderIndexingMode"))
4361
+ ThingIndexingConfiguration.add_member(:named_shadow_indexing_mode, Shapes::ShapeRef.new(shape: NamedShadowIndexingMode, location_name: "namedShadowIndexingMode"))
4285
4362
  ThingIndexingConfiguration.add_member(:managed_fields, Shapes::ShapeRef.new(shape: Fields, location_name: "managedFields"))
4286
4363
  ThingIndexingConfiguration.add_member(:custom_fields, Shapes::ShapeRef.new(shape: Fields, location_name: "customFields"))
4287
4364
  ThingIndexingConfiguration.struct_class = Types::ThingIndexingConfiguration
@@ -4433,6 +4510,7 @@ module Aws::IoT
4433
4510
  UpdateAuthorizerRequest.add_member(:token_key_name, Shapes::ShapeRef.new(shape: TokenKeyName, location_name: "tokenKeyName"))
4434
4511
  UpdateAuthorizerRequest.add_member(:token_signing_public_keys, Shapes::ShapeRef.new(shape: PublicKeyMap, location_name: "tokenSigningPublicKeys"))
4435
4512
  UpdateAuthorizerRequest.add_member(:status, Shapes::ShapeRef.new(shape: AuthorizerStatus, location_name: "status"))
4513
+ UpdateAuthorizerRequest.add_member(:enable_caching_for_http, Shapes::ShapeRef.new(shape: EnableCachingForHttp, location_name: "enableCachingForHttp"))
4436
4514
  UpdateAuthorizerRequest.struct_class = Types::UpdateAuthorizerRequest
4437
4515
 
4438
4516
  UpdateAuthorizerResponse.add_member(:authorizer_name, Shapes::ShapeRef.new(shape: AuthorizerName, location_name: "authorizerName"))
@@ -6022,6 +6100,18 @@ module Aws::IoT
6022
6100
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
6023
6101
  end)
6024
6102
 
6103
+ api.add_operation(:describe_managed_job_template, Seahorse::Model::Operation.new.tap do |o|
6104
+ o.name = "DescribeManagedJobTemplate"
6105
+ o.http_method = "GET"
6106
+ o.http_request_uri = "/managed-job-templates/{templateName}"
6107
+ o.input = Shapes::ShapeRef.new(shape: DescribeManagedJobTemplateRequest)
6108
+ o.output = Shapes::ShapeRef.new(shape: DescribeManagedJobTemplateResponse)
6109
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
6110
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
6111
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
6112
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
6113
+ end)
6114
+
6025
6115
  api.add_operation(:describe_mitigation_action, Seahorse::Model::Operation.new.tap do |o|
6026
6116
  o.name = "DescribeMitigationAction"
6027
6117
  o.http_method = "GET"
@@ -6887,6 +6977,18 @@ module Aws::IoT
6887
6977
  )
6888
6978
  end)
6889
6979
 
6980
+ api.add_operation(:list_managed_job_templates, Seahorse::Model::Operation.new.tap do |o|
6981
+ o.name = "ListManagedJobTemplates"
6982
+ o.http_method = "GET"
6983
+ o.http_request_uri = "/managed-job-templates"
6984
+ o.input = Shapes::ShapeRef.new(shape: ListManagedJobTemplatesRequest)
6985
+ o.output = Shapes::ShapeRef.new(shape: ListManagedJobTemplatesResponse)
6986
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
6987
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
6988
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
6989
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
6990
+ end)
6991
+
6890
6992
  api.add_operation(:list_mitigation_actions, Seahorse::Model::Operation.new.tap do |o|
6891
6993
  o.name = "ListMitigationActions"
6892
6994
  o.http_method = "GET"
@@ -36,6 +36,7 @@ module Aws::IoT
36
36
  # * {IndexNotReadyException}
37
37
  # * {InternalException}
38
38
  # * {InternalFailureException}
39
+ # * {InternalServerException}
39
40
  # * {InvalidAggregationException}
40
41
  # * {InvalidQueryException}
41
42
  # * {InvalidRequestException}
@@ -199,6 +200,21 @@ module Aws::IoT
199
200
  end
200
201
  end
201
202
 
203
+ class InternalServerException < ServiceError
204
+
205
+ # @param [Seahorse::Client::RequestContext] context
206
+ # @param [String] message
207
+ # @param [Aws::IoT::Types::InternalServerException] data
208
+ def initialize(context, message, data = Aws::EmptyStructure.new)
209
+ super(context, message, data)
210
+ end
211
+
212
+ # @return [String]
213
+ def message
214
+ @message || @data[:message]
215
+ end
216
+ end
217
+
202
218
  class InvalidAggregationException < ServiceError
203
219
 
204
220
  # @param [Seahorse::Client::RequestContext] context
@@ -492,6 +492,11 @@ module Aws::IoT
492
492
  #
493
493
  # @!attribute [rw] billing_group_name
494
494
  # The name of the billing group.
495
+ #
496
+ # <note markdown="1"> This call is asynchronous. It might take several seconds for the
497
+ # detachment to propagate.
498
+ #
499
+ # </note>
495
500
  # @return [String]
496
501
  #
497
502
  # @!attribute [rw] billing_group_arn
@@ -1458,6 +1463,12 @@ module Aws::IoT
1458
1463
  # authorization request.
1459
1464
  # @return [Boolean]
1460
1465
  #
1466
+ # @!attribute [rw] enable_caching_for_http
1467
+ # When `true`, the result from the authorizer’s Lambda function is
1468
+ # cached for the time specified in `refreshAfterInSeconds`. The cached
1469
+ # result is used while the device reuses the same HTTP connection.
1470
+ # @return [Boolean]
1471
+ #
1461
1472
  class AuthorizerDescription < Struct.new(
1462
1473
  :authorizer_name,
1463
1474
  :authorizer_arn,
@@ -1467,7 +1478,8 @@ module Aws::IoT
1467
1478
  :status,
1468
1479
  :creation_date,
1469
1480
  :last_modified_date,
1470
- :signing_disabled)
1481
+ :signing_disabled,
1482
+ :enable_caching_for_http)
1471
1483
  SENSITIVE = []
1472
1484
  include Aws::Structure
1473
1485
  end
@@ -2823,6 +2835,7 @@ module Aws::IoT
2823
2835
  # },
2824
2836
  # ],
2825
2837
  # signing_disabled: false,
2838
+ # enable_caching_for_http: false,
2826
2839
  # }
2827
2840
  #
2828
2841
  # @!attribute [rw] authorizer_name
@@ -2867,6 +2880,16 @@ module Aws::IoT
2867
2880
  # authorization request.
2868
2881
  # @return [Boolean]
2869
2882
  #
2883
+ # @!attribute [rw] enable_caching_for_http
2884
+ # When `true`, the result from the authorizer’s Lambda function is
2885
+ # cached for clients that use persistent HTTP connections. The results
2886
+ # are cached for the time specified by the Lambda function in
2887
+ # `refreshAfterInSeconds`. This value does not affect authorization of
2888
+ # clients that use MQTT connections.
2889
+ #
2890
+ # The default value is `false`.
2891
+ # @return [Boolean]
2892
+ #
2870
2893
  class CreateAuthorizerRequest < Struct.new(
2871
2894
  :authorizer_name,
2872
2895
  :authorizer_function_arn,
@@ -2874,7 +2897,8 @@ module Aws::IoT
2874
2897
  :token_signing_public_keys,
2875
2898
  :status,
2876
2899
  :tags,
2877
- :signing_disabled)
2900
+ :signing_disabled,
2901
+ :enable_caching_for_http)
2878
2902
  SENSITIVE = []
2879
2903
  include Aws::Structure
2880
2904
  end
@@ -3501,6 +3525,9 @@ module Aws::IoT
3501
3525
  # ],
3502
3526
  # namespace_id: "NamespaceId",
3503
3527
  # job_template_arn: "JobTemplateArn",
3528
+ # document_parameters: {
3529
+ # "ParameterKey" => "ParameterValue",
3530
+ # },
3504
3531
  # }
3505
3532
  #
3506
3533
  # @!attribute [rw] job_id
@@ -3590,6 +3617,11 @@ module Aws::IoT
3590
3617
  # The ARN of the job template used to create the job.
3591
3618
  # @return [String]
3592
3619
  #
3620
+ # @!attribute [rw] document_parameters
3621
+ # Parameters of a managed template that you can specify to create the
3622
+ # job document.
3623
+ # @return [Hash<String,String>]
3624
+ #
3593
3625
  class CreateJobRequest < Struct.new(
3594
3626
  :job_id,
3595
3627
  :targets,
@@ -3603,7 +3635,8 @@ module Aws::IoT
3603
3635
  :timeout_config,
3604
3636
  :tags,
3605
3637
  :namespace_id,
3606
- :job_template_arn)
3638
+ :job_template_arn,
3639
+ :document_parameters)
3607
3640
  SENSITIVE = []
3608
3641
  include Aws::Structure
3609
3642
  end
@@ -4745,8 +4778,8 @@ module Aws::IoT
4745
4778
  # @return [Array<Types::StreamFile>]
4746
4779
  #
4747
4780
  # @!attribute [rw] role_arn
4748
- # An IAM role that allows the IoT service principal assumes to access
4749
- # your S3 files.
4781
+ # An IAM role that allows the IoT service principal to access your S3
4782
+ # files.
4750
4783
  # @return [String]
4751
4784
  #
4752
4785
  # @!attribute [rw] tags
@@ -7141,6 +7174,13 @@ module Aws::IoT
7141
7174
  # * REGISTRY\_AND\_SHADOW\_AND\_CONNECTIVITY\_STATUS - Your thing
7142
7175
  # index contains registry data, shadow data, and thing connectivity
7143
7176
  # status data.
7177
+ #
7178
+ # * MULTI\_INDEXING\_MODE - Your thing index contains multiple data
7179
+ # sources. For more information, see [GetIndexingConfiguration][1].
7180
+ #
7181
+ #
7182
+ #
7183
+ # [1]: https://docs.aws.amazon.com/iot/latest/apireference/API_GetIndexingConfiguration.html
7144
7184
  # @return [String]
7145
7185
  #
7146
7186
  class DescribeIndexResponse < Struct.new(
@@ -7300,6 +7340,72 @@ module Aws::IoT
7300
7340
  include Aws::Structure
7301
7341
  end
7302
7342
 
7343
+ # @note When making an API call, you may pass DescribeManagedJobTemplateRequest
7344
+ # data as a hash:
7345
+ #
7346
+ # {
7347
+ # template_name: "ManagedJobTemplateName", # required
7348
+ # template_version: "ManagedTemplateVersion",
7349
+ # }
7350
+ #
7351
+ # @!attribute [rw] template_name
7352
+ # The unique name of a managed job template, which is required.
7353
+ # @return [String]
7354
+ #
7355
+ # @!attribute [rw] template_version
7356
+ # An optional parameter to specify version of a managed template. If
7357
+ # not specified, the pre-defined default version is returned.
7358
+ # @return [String]
7359
+ #
7360
+ class DescribeManagedJobTemplateRequest < Struct.new(
7361
+ :template_name,
7362
+ :template_version)
7363
+ SENSITIVE = []
7364
+ include Aws::Structure
7365
+ end
7366
+
7367
+ # @!attribute [rw] template_name
7368
+ # The unique name of a managed template, such as `AWS-Reboot`.
7369
+ # @return [String]
7370
+ #
7371
+ # @!attribute [rw] template_arn
7372
+ # The unique Amazon Resource Name (ARN) of the managed template.
7373
+ # @return [String]
7374
+ #
7375
+ # @!attribute [rw] description
7376
+ # The unique description of a managed template.
7377
+ # @return [String]
7378
+ #
7379
+ # @!attribute [rw] template_version
7380
+ # The version for a managed template.
7381
+ # @return [String]
7382
+ #
7383
+ # @!attribute [rw] environments
7384
+ # A list of environments that are supported with the managed job
7385
+ # template.
7386
+ # @return [Array<String>]
7387
+ #
7388
+ # @!attribute [rw] document_parameters
7389
+ # A map of key-value pairs that you can use as guidance to specify the
7390
+ # inputs for creating a job from a managed template.
7391
+ # @return [Array<Types::DocumentParameter>]
7392
+ #
7393
+ # @!attribute [rw] document
7394
+ # The document schema for a managed job template.
7395
+ # @return [String]
7396
+ #
7397
+ class DescribeManagedJobTemplateResponse < Struct.new(
7398
+ :template_name,
7399
+ :template_arn,
7400
+ :description,
7401
+ :template_version,
7402
+ :environments,
7403
+ :document_parameters,
7404
+ :document)
7405
+ SENSITIVE = []
7406
+ include Aws::Structure
7407
+ end
7408
+
7303
7409
  # @note When making an API call, you may pass DescribeMitigationActionRequest
7304
7410
  # data as a hash:
7305
7411
  #
@@ -8294,6 +8400,46 @@ module Aws::IoT
8294
8400
  include Aws::Structure
8295
8401
  end
8296
8402
 
8403
+ # A map of key-value pairs containing the patterns that need to be
8404
+ # replaced in a managed template job document schema. You can use the
8405
+ # description of each key as a guidance to specify the inputs during
8406
+ # runtime when creating a job.
8407
+ #
8408
+ # @!attribute [rw] key
8409
+ # Key of the map field containing the patterns that need to be
8410
+ # replaced in a managed template job document schema.
8411
+ # @return [String]
8412
+ #
8413
+ # @!attribute [rw] description
8414
+ # Description of the map field containing the patterns that need to be
8415
+ # replaced in a managed template job document schema.
8416
+ # @return [String]
8417
+ #
8418
+ # @!attribute [rw] regex
8419
+ # A regular expression of the patterns that need to be replaced in a
8420
+ # managed template job document schema.
8421
+ # @return [String]
8422
+ #
8423
+ # @!attribute [rw] example
8424
+ # An example illustrating a pattern that need to be replaced in a
8425
+ # managed template job document schema.
8426
+ # @return [String]
8427
+ #
8428
+ # @!attribute [rw] optional
8429
+ # Specifies whether a pattern that needs to be replaced in a managed
8430
+ # template job document schema is optional or required.
8431
+ # @return [Boolean]
8432
+ #
8433
+ class DocumentParameter < Struct.new(
8434
+ :key,
8435
+ :description,
8436
+ :regex,
8437
+ :example,
8438
+ :optional)
8439
+ SENSITIVE = []
8440
+ include Aws::Structure
8441
+ end
8442
+
8297
8443
  # The summary of a domain configuration. A domain configuration
8298
8444
  # specifies custom IoT-specific information about a domain. A domain
8299
8445
  # configuration can be associated with an Amazon Web Services-managed
@@ -8865,8 +9011,7 @@ module Aws::IoT
8865
9011
  end
8866
9012
 
8867
9013
  # @!attribute [rw] total_count
8868
- # The total number of documents that fit the query string criteria and
8869
- # contain a value for the Aggregation field targeted in the request.
9014
+ # The total number of things that fit the query string criteria.
8870
9015
  # @return [Integer]
8871
9016
  #
8872
9017
  # @!attribute [rw] buckets
@@ -9658,6 +9803,18 @@ module Aws::IoT
9658
9803
  include Aws::Structure
9659
9804
  end
9660
9805
 
9806
+ # Internal error from the service that indicates an unexpected error or
9807
+ # that the service is unavailable.
9808
+ #
9809
+ # @!attribute [rw] message
9810
+ # @return [String]
9811
+ #
9812
+ class InternalServerException < Struct.new(
9813
+ :message)
9814
+ SENSITIVE = []
9815
+ include Aws::Structure
9816
+ end
9817
+
9661
9818
  # The aggregation is invalid.
9662
9819
  #
9663
9820
  # @!attribute [rw] message
@@ -9980,6 +10137,13 @@ module Aws::IoT
9980
10137
  # The ARN of the job template used to create the job.
9981
10138
  # @return [String]
9982
10139
  #
10140
+ # @!attribute [rw] document_parameters
10141
+ # A key-value map that pairs the patterns that need to be replaced in
10142
+ # a managed template job document schema. You can use the description
10143
+ # of each key as a guidance to specify the inputs during runtime when
10144
+ # creating a job.
10145
+ # @return [Hash<String,String>]
10146
+ #
9983
10147
  class Job < Struct.new(
9984
10148
  :job_arn,
9985
10149
  :job_id,
@@ -9999,7 +10163,8 @@ module Aws::IoT
9999
10163
  :job_process_details,
10000
10164
  :timeout_config,
10001
10165
  :namespace_id,
10002
- :job_template_arn)
10166
+ :job_template_arn,
10167
+ :document_parameters)
10003
10168
  SENSITIVE = []
10004
10169
  include Aws::Structure
10005
10170
  end
@@ -11803,6 +11968,52 @@ module Aws::IoT
11803
11968
  include Aws::Structure
11804
11969
  end
11805
11970
 
11971
+ # @note When making an API call, you may pass ListManagedJobTemplatesRequest
11972
+ # data as a hash:
11973
+ #
11974
+ # {
11975
+ # template_name: "ManagedJobTemplateName",
11976
+ # max_results: 1,
11977
+ # next_token: "NextToken",
11978
+ # }
11979
+ #
11980
+ # @!attribute [rw] template_name
11981
+ # An optional parameter for template name. If specified, only the
11982
+ # versions of the managed job templates that have the specified
11983
+ # template name will be returned.
11984
+ # @return [String]
11985
+ #
11986
+ # @!attribute [rw] max_results
11987
+ # Maximum number of entries that can be returned.
11988
+ # @return [Integer]
11989
+ #
11990
+ # @!attribute [rw] next_token
11991
+ # The token to retrieve the next set of results.
11992
+ # @return [String]
11993
+ #
11994
+ class ListManagedJobTemplatesRequest < Struct.new(
11995
+ :template_name,
11996
+ :max_results,
11997
+ :next_token)
11998
+ SENSITIVE = []
11999
+ include Aws::Structure
12000
+ end
12001
+
12002
+ # @!attribute [rw] managed_job_templates
12003
+ # A list of managed job templates that are returned.
12004
+ # @return [Array<Types::ManagedJobTemplateSummary>]
12005
+ #
12006
+ # @!attribute [rw] next_token
12007
+ # The token to retrieve the next set of results.
12008
+ # @return [String]
12009
+ #
12010
+ class ListManagedJobTemplatesResponse < Struct.new(
12011
+ :managed_job_templates,
12012
+ :next_token)
12013
+ SENSITIVE = []
12014
+ include Aws::Structure
12015
+ end
12016
+
11806
12017
  # @note When making an API call, you may pass ListMitigationActionsRequest
11807
12018
  # data as a hash:
11808
12019
  #
@@ -13454,6 +13665,39 @@ module Aws::IoT
13454
13665
  include Aws::Structure
13455
13666
  end
13456
13667
 
13668
+ # An object that contains information about the managed template.
13669
+ #
13670
+ # @!attribute [rw] template_arn
13671
+ # The Amazon Resource Name (ARN) for a managed template.
13672
+ # @return [String]
13673
+ #
13674
+ # @!attribute [rw] template_name
13675
+ # The unique Name for a managed template.
13676
+ # @return [String]
13677
+ #
13678
+ # @!attribute [rw] description
13679
+ # The description for a managed template.
13680
+ # @return [String]
13681
+ #
13682
+ # @!attribute [rw] environments
13683
+ # A list of environments that are supported with the managed job
13684
+ # template.
13685
+ # @return [Array<String>]
13686
+ #
13687
+ # @!attribute [rw] template_version
13688
+ # The version for a managed template.
13689
+ # @return [String]
13690
+ #
13691
+ class ManagedJobTemplateSummary < Struct.new(
13692
+ :template_arn,
13693
+ :template_name,
13694
+ :description,
13695
+ :environments,
13696
+ :template_version)
13697
+ SENSITIVE = []
13698
+ include Aws::Structure
13699
+ end
13700
+
13457
13701
  # The dimension of a metric.
13458
13702
  #
13459
13703
  # @note When making an API call, you may pass MetricDimension
@@ -16280,11 +16524,17 @@ module Aws::IoT
16280
16524
  include Aws::Structure
16281
16525
  end
16282
16526
 
16283
- # A map of key-value pairs for all supported statistics. Currently, only
16284
- # count is supported.
16527
+ # A map of key-value pairs for all supported statistics. For issues with
16528
+ # missing or unexpected values for this API, consult [ Fleet indexing
16529
+ # troubleshooting guide][1].
16530
+ #
16531
+ #
16532
+ #
16533
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/fleet-indexing-troubleshooting.html
16285
16534
  #
16286
16535
  # @!attribute [rw] count
16287
- # The count of things that match the query.
16536
+ # The count of things that match the query string criteria and contain
16537
+ # a valid aggregation field value.
16288
16538
  # @return [Integer]
16289
16539
  #
16290
16540
  # @!attribute [rw] average
@@ -16924,7 +17174,25 @@ module Aws::IoT
16924
17174
  # @return [Hash<String,String>]
16925
17175
  #
16926
17176
  # @!attribute [rw] shadow
16927
- # The shadow.
17177
+ # The unnamed shadow and named shadow.
17178
+ #
17179
+ # For more information about shadows, see [IoT Device Shadow
17180
+ # service.][1]
17181
+ #
17182
+ #
17183
+ #
17184
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/iot-device-shadows.html
17185
+ # @return [String]
17186
+ #
17187
+ # @!attribute [rw] device_defender
17188
+ # Contains Device Defender data.
17189
+ #
17190
+ # For more information about Device Defender, see [Device
17191
+ # Defender][1].
17192
+ #
17193
+ #
17194
+ #
17195
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/device-defender.html
16928
17196
  # @return [String]
16929
17197
  #
16930
17198
  # @!attribute [rw] connectivity
@@ -16939,6 +17207,7 @@ module Aws::IoT
16939
17207
  :thing_group_names,
16940
17208
  :attributes,
16941
17209
  :shadow,
17210
+ :device_defender,
16942
17211
  :connectivity)
16943
17212
  SENSITIVE = []
16944
17213
  include Aws::Structure
@@ -17087,6 +17356,8 @@ module Aws::IoT
17087
17356
  # {
17088
17357
  # thing_indexing_mode: "OFF", # required, accepts OFF, REGISTRY, REGISTRY_AND_SHADOW
17089
17358
  # thing_connectivity_indexing_mode: "OFF", # accepts OFF, STATUS
17359
+ # device_defender_indexing_mode: "OFF", # accepts OFF, VIOLATIONS
17360
+ # named_shadow_indexing_mode: "OFF", # accepts OFF, ON
17090
17361
  # managed_fields: [
17091
17362
  # {
17092
17363
  # name: "FieldName",
@@ -17122,6 +17393,39 @@ module Aws::IoT
17122
17393
  # * OFF - Thing connectivity status indexing is disabled.
17123
17394
  # @return [String]
17124
17395
  #
17396
+ # @!attribute [rw] device_defender_indexing_mode
17397
+ # Device Defender indexing mode. Valid values are:
17398
+ #
17399
+ # * VIOLATIONS – Your thing index contains Device Defender violations.
17400
+ # To enable Device Defender indexing, *deviceDefenderIndexingMode*
17401
+ # must not be set to OFF.
17402
+ #
17403
+ # * OFF - Device Defender indexing is disabled.
17404
+ #
17405
+ # For more information about Device Defender violations, see [Device
17406
+ # Defender Detect.][1]
17407
+ #
17408
+ #
17409
+ #
17410
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html
17411
+ # @return [String]
17412
+ #
17413
+ # @!attribute [rw] named_shadow_indexing_mode
17414
+ # Named shadow indexing mode. Valid values are:
17415
+ #
17416
+ # * ON – Your thing index contains named shadow. To enable thing named
17417
+ # shadow indexing, *namedShadowIndexingMode* must not be set to OFF.
17418
+ #
17419
+ # * OFF - Named shadow indexing is disabled.
17420
+ #
17421
+ # For more information about Shadows, see [IoT Device Shadow
17422
+ # service.][1]
17423
+ #
17424
+ #
17425
+ #
17426
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/iot-device-shadows.html
17427
+ # @return [String]
17428
+ #
17125
17429
  # @!attribute [rw] managed_fields
17126
17430
  # Contains fields that are indexed and whose types are already known
17127
17431
  # by the Fleet Indexing service.
@@ -17134,6 +17438,8 @@ module Aws::IoT
17134
17438
  class ThingIndexingConfiguration < Struct.new(
17135
17439
  :thing_indexing_mode,
17136
17440
  :thing_connectivity_indexing_mode,
17441
+ :device_defender_indexing_mode,
17442
+ :named_shadow_indexing_mode,
17137
17443
  :managed_fields,
17138
17444
  :custom_fields)
17139
17445
  SENSITIVE = []
@@ -18339,6 +18645,7 @@ module Aws::IoT
18339
18645
  # "KeyName" => "KeyValue",
18340
18646
  # },
18341
18647
  # status: "ACTIVE", # accepts ACTIVE, INACTIVE
18648
+ # enable_caching_for_http: false,
18342
18649
  # }
18343
18650
  #
18344
18651
  # @!attribute [rw] authorizer_name
@@ -18361,12 +18668,19 @@ module Aws::IoT
18361
18668
  # The status of the update authorizer request.
18362
18669
  # @return [String]
18363
18670
  #
18671
+ # @!attribute [rw] enable_caching_for_http
18672
+ # When `true`, the result from the authorizer’s Lambda function is
18673
+ # cached for the time specified in `refreshAfterInSeconds`. The cached
18674
+ # result is used while the device reuses the same HTTP connection.
18675
+ # @return [Boolean]
18676
+ #
18364
18677
  class UpdateAuthorizerRequest < Struct.new(
18365
18678
  :authorizer_name,
18366
18679
  :authorizer_function_arn,
18367
18680
  :token_key_name,
18368
18681
  :token_signing_public_keys,
18369
- :status)
18682
+ :status,
18683
+ :enable_caching_for_http)
18370
18684
  SENSITIVE = []
18371
18685
  include Aws::Structure
18372
18686
  end
@@ -18892,7 +19206,7 @@ module Aws::IoT
18892
19206
  #
18893
19207
  #
18894
19208
  #
18895
- # [1]: https://docs.aws.amazon.com/https:/docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
19209
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
18896
19210
  # @return [String]
18897
19211
  #
18898
19212
  # @!attribute [rw] expected_version
@@ -18921,6 +19235,8 @@ module Aws::IoT
18921
19235
  # thing_indexing_configuration: {
18922
19236
  # thing_indexing_mode: "OFF", # required, accepts OFF, REGISTRY, REGISTRY_AND_SHADOW
18923
19237
  # thing_connectivity_indexing_mode: "OFF", # accepts OFF, STATUS
19238
+ # device_defender_indexing_mode: "OFF", # accepts OFF, VIOLATIONS
19239
+ # named_shadow_indexing_mode: "OFF", # accepts OFF, ON
18924
19240
  # managed_fields: [
18925
19241
  # {
18926
19242
  # name: "FieldName",
data/lib/aws-sdk-iot.rb CHANGED
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-iot/customizations'
48
48
  # @!group service
49
49
  module Aws::IoT
50
50
 
51
- GEM_VERSION = '1.78.0'
51
+ GEM_VERSION = '1.82.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iot
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.78.0
4
+ version: 1.82.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-04 00:00:00.000000000 Z
11
+ date: 2021-12-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.122.0
22
+ version: 3.125.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.122.0
32
+ version: 3.125.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement