aws-sdk-iot 1.76.0 → 1.80.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: a5775a8d8d9df11921ef1514c92e01ab967f296a45e9d7432bb6c44f6ac11045
4
- data.tar.gz: 20cee15e7d5575401c5ace2df264c53ff0015220953403c3e7dcda0b9e95bcc2
3
+ metadata.gz: 99180939c760040c4b2a57cd344c3ffcf2d7ef7c4db67cc4ce431e3eefddef4d
4
+ data.tar.gz: ac8101a6a0eecd480f0e4780c1f4ce91192136c1a5bead7d641c26d1c5a25ef8
5
5
  SHA512:
6
- metadata.gz: '03795a0eb460723bcb13aed53846f09bfb6b35f7db434905a1800bb29cf1e9963298248ebdf8c19ff70f2ef7e5329b19fa219b72ce1824f79b3523a3c0617c81'
7
- data.tar.gz: d67db06013a512f5ef65e01e5b18c59a06793d2702922e85e3ff21282b3f3b018f833047405a17e4afdeb24df850c27ae025f153e3d28f773c9e16c0f8930802
6
+ metadata.gz: 89db1fe535c5e329fe927c835efa29c5c5546ee16578242cd72c73b0fdda33de013fc765037d8379a99539ff444cbbf02c2cb93bfa3779f886f11a9eb1d07910
7
+ data.tar.gz: dc7611ec8edb674aa99c84c87be38e4e6fcf530d046c60665b38d3a0b3f64eb82cb45d7320ce620b1d113863b4a65fbfe6fec9523e1c3681c01489a7a66cc311
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.80.0 (2021-11-30)
5
+ ------------------
6
+
7
+ * 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.
8
+
9
+ 1.79.0 (2021-11-23)
10
+ ------------------
11
+
12
+ * 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.
13
+
14
+ 1.78.0 (2021-11-04)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
19
+ 1.77.0 (2021-10-18)
20
+ ------------------
21
+
22
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
23
+
4
24
  1.76.0 (2021-09-21)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.76.0
1
+ 1.80.0
@@ -119,7 +119,9 @@ module Aws::IoT
119
119
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
120
  # are very aggressive. Construct and pass an instance of
121
121
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
122
+ # enable retries and extended timeouts. Instance profile credential
123
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
124
+ # to true.
123
125
  #
124
126
  # @option options [required, String] :region
125
127
  # The AWS region to connect to. The configured `:region` is
@@ -275,6 +277,15 @@ module Aws::IoT
275
277
  # ** Please note ** When response stubbing is enabled, no HTTP
276
278
  # requests are made, and retries are disabled.
277
279
  #
280
+ # @option options [Boolean] :use_dualstack_endpoint
281
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
282
+ # will be used if available.
283
+ #
284
+ # @option options [Boolean] :use_fips_endpoint
285
+ # When set to `true`, fips compatible endpoints will be used if available.
286
+ # When a `fips` region is used, the region is normalized and this config
287
+ # is set to `true`.
288
+ #
278
289
  # @option options [Boolean] :validate_params (true)
279
290
  # When `true`, request parameters are validated before
280
291
  # sending the request.
@@ -374,6 +385,11 @@ module Aws::IoT
374
385
  # @option params [String] :billing_group_name
375
386
  # The name of the billing group.
376
387
  #
388
+ # <note markdown="1"> This call is asynchronous. It might take several seconds for the
389
+ # detachment to propagate.
390
+ #
391
+ # </note>
392
+ #
377
393
  # @option params [String] :billing_group_arn
378
394
  # The ARN of the billing group.
379
395
  #
@@ -1138,13 +1154,14 @@ module Aws::IoT
1138
1154
  # request.
1139
1155
  #
1140
1156
  # **Note:** The CSR must include a public key that is either an RSA key
1141
- # with a length of at least 2048 bits or an ECC key from NIST P-256 or
1142
- # NIST P-384 curves.
1157
+ # with a length of at least 2048 bits or an ECC key from NIST P-256,
1158
+ # NIST P-384, or NIST P-512 curves. For supported certificates, consult
1159
+ # [ Certificate signing algorithms supported by IoT][1].
1143
1160
  #
1144
1161
  # **Note:** Reusing the same certificate signing request (CSR) results
1145
1162
  # in a distinct certificate.
1146
1163
  #
1147
- # Requires permission to access the [CreateCertificateFromCsr][1]
1164
+ # Requires permission to access the [CreateCertificateFromCsr][2]
1148
1165
  # action.
1149
1166
  #
1150
1167
  # You can create multiple certificates in a batch by creating a
@@ -1189,7 +1206,8 @@ module Aws::IoT
1189
1206
  #
1190
1207
  #
1191
1208
  #
1192
- # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
1209
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html#x509-cert-algorithms
1210
+ # [2]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
1193
1211
  #
1194
1212
  # @option params [required, String] :certificate_signing_request
1195
1213
  # The certificate signing request (CSR).
@@ -1703,6 +1721,10 @@ module Aws::IoT
1703
1721
  # @option params [String] :job_template_arn
1704
1722
  # The ARN of the job template used to create the job.
1705
1723
  #
1724
+ # @option params [Hash<String,String>] :document_parameters
1725
+ # Parameters of a managed template that you can specify to create the
1726
+ # job document.
1727
+ #
1706
1728
  # @return [Types::CreateJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1707
1729
  #
1708
1730
  # * {Types::CreateJobResponse#job_arn #job_arn} => String
@@ -1754,6 +1776,9 @@ module Aws::IoT
1754
1776
  # ],
1755
1777
  # namespace_id: "NamespaceId",
1756
1778
  # job_template_arn: "JobTemplateArn",
1779
+ # document_parameters: {
1780
+ # "ParameterKey" => "ParameterValue",
1781
+ # },
1757
1782
  # })
1758
1783
  #
1759
1784
  # @example Response structure
@@ -2758,8 +2783,8 @@ module Aws::IoT
2758
2783
  # The files to stream.
2759
2784
  #
2760
2785
  # @option params [required, String] :role_arn
2761
- # An IAM role that allows the IoT service principal assumes to access
2762
- # your S3 files.
2786
+ # An IAM role that allows the IoT service principal to access your S3
2787
+ # files.
2763
2788
  #
2764
2789
  # @option params [Array<Types::Tag>] :tags
2765
2790
  # Metadata which can be used to manage streams.
@@ -5442,6 +5467,8 @@ module Aws::IoT
5442
5467
  # resp.job.timeout_config.in_progress_timeout_in_minutes #=> Integer
5443
5468
  # resp.job.namespace_id #=> String
5444
5469
  # resp.job.job_template_arn #=> String
5470
+ # resp.job.document_parameters #=> Hash
5471
+ # resp.job.document_parameters["ParameterKey"] #=> String
5445
5472
  #
5446
5473
  # @overload describe_job(params = {})
5447
5474
  # @param [Hash] params ({})
@@ -5555,6 +5582,55 @@ module Aws::IoT
5555
5582
  req.send_request(options)
5556
5583
  end
5557
5584
 
5585
+ # View details of a managed job template.
5586
+ #
5587
+ # @option params [required, String] :template_name
5588
+ # The unique name of a managed job template, which is required.
5589
+ #
5590
+ # @option params [String] :template_version
5591
+ # An optional parameter to specify version of a managed template. If not
5592
+ # specified, the pre-defined default version is returned.
5593
+ #
5594
+ # @return [Types::DescribeManagedJobTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5595
+ #
5596
+ # * {Types::DescribeManagedJobTemplateResponse#template_name #template_name} => String
5597
+ # * {Types::DescribeManagedJobTemplateResponse#template_arn #template_arn} => String
5598
+ # * {Types::DescribeManagedJobTemplateResponse#description #description} => String
5599
+ # * {Types::DescribeManagedJobTemplateResponse#template_version #template_version} => String
5600
+ # * {Types::DescribeManagedJobTemplateResponse#environments #environments} => Array&lt;String&gt;
5601
+ # * {Types::DescribeManagedJobTemplateResponse#document_parameters #document_parameters} => Array&lt;Types::DocumentParameter&gt;
5602
+ # * {Types::DescribeManagedJobTemplateResponse#document #document} => String
5603
+ #
5604
+ # @example Request syntax with placeholder values
5605
+ #
5606
+ # resp = client.describe_managed_job_template({
5607
+ # template_name: "ManagedJobTemplateName", # required
5608
+ # template_version: "ManagedTemplateVersion",
5609
+ # })
5610
+ #
5611
+ # @example Response structure
5612
+ #
5613
+ # resp.template_name #=> String
5614
+ # resp.template_arn #=> String
5615
+ # resp.description #=> String
5616
+ # resp.template_version #=> String
5617
+ # resp.environments #=> Array
5618
+ # resp.environments[0] #=> String
5619
+ # resp.document_parameters #=> Array
5620
+ # resp.document_parameters[0].key #=> String
5621
+ # resp.document_parameters[0].description #=> String
5622
+ # resp.document_parameters[0].regex #=> String
5623
+ # resp.document_parameters[0].example #=> String
5624
+ # resp.document_parameters[0].optional #=> Boolean
5625
+ # resp.document #=> String
5626
+ #
5627
+ # @overload describe_managed_job_template(params = {})
5628
+ # @param [Hash] params ({})
5629
+ def describe_managed_job_template(params = {}, options = {})
5630
+ req = build_request(:describe_managed_job_template, params)
5631
+ req.send_request(options)
5632
+ end
5633
+
5558
5634
  # Gets information about a mitigation action.
5559
5635
  #
5560
5636
  # Requires permission to access the [DescribeMitigationAction][1]
@@ -6530,6 +6606,8 @@ module Aws::IoT
6530
6606
  #
6531
6607
  # resp.thing_indexing_configuration.thing_indexing_mode #=> String, one of "OFF", "REGISTRY", "REGISTRY_AND_SHADOW"
6532
6608
  # resp.thing_indexing_configuration.thing_connectivity_indexing_mode #=> String, one of "OFF", "STATUS"
6609
+ # resp.thing_indexing_configuration.device_defender_indexing_mode #=> String, one of "OFF", "VIOLATIONS"
6610
+ # resp.thing_indexing_configuration.named_shadow_indexing_mode #=> String, one of "OFF", "ON"
6533
6611
  # resp.thing_indexing_configuration.managed_fields #=> Array
6534
6612
  # resp.thing_indexing_configuration.managed_fields[0].name #=> String
6535
6613
  # resp.thing_indexing_configuration.managed_fields[0].type #=> String, one of "Number", "String", "Boolean"
@@ -8690,6 +8768,50 @@ module Aws::IoT
8690
8768
  req.send_request(options)
8691
8769
  end
8692
8770
 
8771
+ # Returns a list of managed job templates.
8772
+ #
8773
+ # @option params [String] :template_name
8774
+ # An optional parameter for template name. If specified, only the
8775
+ # versions of the managed job templates that have the specified template
8776
+ # name will be returned.
8777
+ #
8778
+ # @option params [Integer] :max_results
8779
+ # Maximum number of entries that can be returned.
8780
+ #
8781
+ # @option params [String] :next_token
8782
+ # The token to retrieve the next set of results.
8783
+ #
8784
+ # @return [Types::ListManagedJobTemplatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8785
+ #
8786
+ # * {Types::ListManagedJobTemplatesResponse#managed_job_templates #managed_job_templates} => Array&lt;Types::ManagedJobTemplateSummary&gt;
8787
+ # * {Types::ListManagedJobTemplatesResponse#next_token #next_token} => String
8788
+ #
8789
+ # @example Request syntax with placeholder values
8790
+ #
8791
+ # resp = client.list_managed_job_templates({
8792
+ # template_name: "ManagedJobTemplateName",
8793
+ # max_results: 1,
8794
+ # next_token: "NextToken",
8795
+ # })
8796
+ #
8797
+ # @example Response structure
8798
+ #
8799
+ # resp.managed_job_templates #=> Array
8800
+ # resp.managed_job_templates[0].template_arn #=> String
8801
+ # resp.managed_job_templates[0].template_name #=> String
8802
+ # resp.managed_job_templates[0].description #=> String
8803
+ # resp.managed_job_templates[0].environments #=> Array
8804
+ # resp.managed_job_templates[0].environments[0] #=> String
8805
+ # resp.managed_job_templates[0].template_version #=> String
8806
+ # resp.next_token #=> String
8807
+ #
8808
+ # @overload list_managed_job_templates(params = {})
8809
+ # @param [Hash] params ({})
8810
+ def list_managed_job_templates(params = {}, options = {})
8811
+ req = build_request(:list_managed_job_templates, params)
8812
+ req.send_request(options)
8813
+ end
8814
+
8693
8815
  # Gets a list of all mitigation actions that match the specified filter
8694
8816
  # criteria.
8695
8817
  #
@@ -10485,7 +10607,12 @@ module Aws::IoT
10485
10607
  end
10486
10608
 
10487
10609
  # Register a certificate that does not have a certificate authority
10488
- # (CA).
10610
+ # (CA). For supported certificates, consult [ Certificate signing
10611
+ # algorithms supported by IoT][1].
10612
+ #
10613
+ #
10614
+ #
10615
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html#x509-cert-algorithms
10489
10616
  #
10490
10617
  # @option params [required, String] :certificate_pem
10491
10618
  # The certificate data, in PEM format.
@@ -10620,6 +10747,11 @@ module Aws::IoT
10620
10747
  # Requires permission to access the [RemoveThingFromBillingGroup][1]
10621
10748
  # action.
10622
10749
  #
10750
+ # <note markdown="1"> This call is asynchronous. It might take several seconds for the
10751
+ # detachment to propagate.
10752
+ #
10753
+ # </note>
10754
+ #
10623
10755
  #
10624
10756
  #
10625
10757
  # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
@@ -11139,6 +11271,7 @@ module Aws::IoT
11139
11271
  # resp.things[0].attributes #=> Hash
11140
11272
  # resp.things[0].attributes["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
11141
11273
  # resp.things[0].shadow #=> String
11274
+ # resp.things[0].device_defender #=> String
11142
11275
  # resp.things[0].connectivity.connected #=> Boolean
11143
11276
  # resp.things[0].connectivity.timestamp #=> Integer
11144
11277
  # resp.things[0].connectivity.disconnect_reason #=> String
@@ -12442,7 +12575,7 @@ module Aws::IoT
12442
12575
  #
12443
12576
  #
12444
12577
  #
12445
- # [1]: https://docs.aws.amazon.com/https:/docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
12578
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
12446
12579
  #
12447
12580
  # @option params [Integer] :expected_version
12448
12581
  # The expected version of the fleet metric record in the registry.
@@ -12497,6 +12630,8 @@ module Aws::IoT
12497
12630
  # thing_indexing_configuration: {
12498
12631
  # thing_indexing_mode: "OFF", # required, accepts OFF, REGISTRY, REGISTRY_AND_SHADOW
12499
12632
  # thing_connectivity_indexing_mode: "OFF", # accepts OFF, STATUS
12633
+ # device_defender_indexing_mode: "OFF", # accepts OFF, VIOLATIONS
12634
+ # named_shadow_indexing_mode: "OFF", # accepts OFF, ON
12500
12635
  # managed_fields: [
12501
12636
  # {
12502
12637
  # name: "FieldName",
@@ -13373,7 +13508,7 @@ module Aws::IoT
13373
13508
  params: params,
13374
13509
  config: config)
13375
13510
  context[:gem_name] = 'aws-sdk-iot'
13376
- context[:gem_version] = '1.76.0'
13511
+ context[:gem_version] = '1.80.0'
13377
13512
  Seahorse::Client::Request.new(handlers, context)
13378
13513
  end
13379
13514
 
@@ -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')
@@ -485,12 +490,15 @@ module Aws::IoT
485
490
  Enabled = Shapes::BooleanShape.new(name: 'Enabled')
486
491
  EndpointAddress = Shapes::StringShape.new(name: 'EndpointAddress')
487
492
  EndpointType = Shapes::StringShape.new(name: 'EndpointType')
493
+ Environment = Shapes::StringShape.new(name: 'Environment')
494
+ Environments = Shapes::ListShape.new(name: 'Environments')
488
495
  ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
489
496
  ErrorInfo = Shapes::StructureShape.new(name: 'ErrorInfo')
490
497
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
491
498
  EvaluationStatistic = Shapes::StringShape.new(name: 'EvaluationStatistic')
492
499
  EventConfigurations = Shapes::MapShape.new(name: 'EventConfigurations')
493
500
  EventType = Shapes::StringShape.new(name: 'EventType')
501
+ Example = Shapes::StringShape.new(name: 'Example')
494
502
  ExecutionNamePrefix = Shapes::StringShape.new(name: 'ExecutionNamePrefix')
495
503
  ExecutionNumber = Shapes::IntegerShape.new(name: 'ExecutionNumber')
496
504
  ExpectedVersion = Shapes::IntegerShape.new(name: 'ExpectedVersion')
@@ -592,6 +600,7 @@ module Aws::IoT
592
600
  InputName = Shapes::StringShape.new(name: 'InputName')
593
601
  InternalException = Shapes::StructureShape.new(name: 'InternalException')
594
602
  InternalFailureException = Shapes::StructureShape.new(name: 'InternalFailureException')
603
+ InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
595
604
  InvalidAggregationException = Shapes::StructureShape.new(name: 'InvalidAggregationException')
596
605
  InvalidQueryException = Shapes::StructureShape.new(name: 'InvalidQueryException')
597
606
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
@@ -687,6 +696,8 @@ module Aws::IoT
687
696
  ListJobTemplatesResponse = Shapes::StructureShape.new(name: 'ListJobTemplatesResponse')
688
697
  ListJobsRequest = Shapes::StructureShape.new(name: 'ListJobsRequest')
689
698
  ListJobsResponse = Shapes::StructureShape.new(name: 'ListJobsResponse')
699
+ ListManagedJobTemplatesRequest = Shapes::StructureShape.new(name: 'ListManagedJobTemplatesRequest')
700
+ ListManagedJobTemplatesResponse = Shapes::StructureShape.new(name: 'ListManagedJobTemplatesResponse')
690
701
  ListMitigationActionsRequest = Shapes::StructureShape.new(name: 'ListMitigationActionsRequest')
691
702
  ListMitigationActionsResponse = Shapes::StructureShape.new(name: 'ListMitigationActionsResponse')
692
703
  ListOTAUpdatesRequest = Shapes::StructureShape.new(name: 'ListOTAUpdatesRequest')
@@ -761,6 +772,10 @@ module Aws::IoT
761
772
  LoggingOptionsPayload = Shapes::StructureShape.new(name: 'LoggingOptionsPayload')
762
773
  MachineLearningDetectionConfig = Shapes::StructureShape.new(name: 'MachineLearningDetectionConfig')
763
774
  MalformedPolicyException = Shapes::StructureShape.new(name: 'MalformedPolicyException')
775
+ ManagedJobTemplateName = Shapes::StringShape.new(name: 'ManagedJobTemplateName')
776
+ ManagedJobTemplateSummary = Shapes::StructureShape.new(name: 'ManagedJobTemplateSummary')
777
+ ManagedJobTemplatesSummaryList = Shapes::ListShape.new(name: 'ManagedJobTemplatesSummaryList')
778
+ ManagedTemplateVersion = Shapes::StringShape.new(name: 'ManagedTemplateVersion')
764
779
  Marker = Shapes::StringShape.new(name: 'Marker')
765
780
  MaxBuckets = Shapes::IntegerShape.new(name: 'MaxBuckets')
766
781
  MaxJobExecutionsPerMin = Shapes::IntegerShape.new(name: 'MaxJobExecutionsPerMin')
@@ -795,6 +810,7 @@ module Aws::IoT
795
810
  MqttContext = Shapes::StructureShape.new(name: 'MqttContext')
796
811
  MqttPassword = Shapes::BlobShape.new(name: 'MqttPassword')
797
812
  MqttUsername = Shapes::StringShape.new(name: 'MqttUsername')
813
+ NamedShadowIndexingMode = Shapes::StringShape.new(name: 'NamedShadowIndexingMode')
798
814
  NamespaceId = Shapes::StringShape.new(name: 'NamespaceId')
799
815
  NextToken = Shapes::StringShape.new(name: 'NextToken')
800
816
  NonCompliantChecksCount = Shapes::IntegerShape.new(name: 'NonCompliantChecksCount')
@@ -817,12 +833,16 @@ module Aws::IoT
817
833
  OTAUpdateSummary = Shapes::StructureShape.new(name: 'OTAUpdateSummary')
818
834
  OTAUpdatesSummary = Shapes::ListShape.new(name: 'OTAUpdatesSummary')
819
835
  OpenSearchAction = Shapes::StructureShape.new(name: 'OpenSearchAction')
836
+ Optional = Shapes::BooleanShape.new(name: 'Optional')
820
837
  OptionalVersion = Shapes::IntegerShape.new(name: 'OptionalVersion')
821
838
  OutgoingCertificate = Shapes::StructureShape.new(name: 'OutgoingCertificate')
822
839
  OutgoingCertificates = Shapes::ListShape.new(name: 'OutgoingCertificates')
823
840
  OverrideDynamicGroups = Shapes::BooleanShape.new(name: 'OverrideDynamicGroups')
824
841
  PageSize = Shapes::IntegerShape.new(name: 'PageSize')
825
842
  Parameter = Shapes::StringShape.new(name: 'Parameter')
843
+ ParameterKey = Shapes::StringShape.new(name: 'ParameterKey')
844
+ ParameterMap = Shapes::MapShape.new(name: 'ParameterMap')
845
+ ParameterValue = Shapes::StringShape.new(name: 'ParameterValue')
826
846
  Parameters = Shapes::MapShape.new(name: 'Parameters')
827
847
  PartitionKey = Shapes::StringShape.new(name: 'PartitionKey')
828
848
  PayloadField = Shapes::StringShape.new(name: 'PayloadField')
@@ -890,6 +910,7 @@ module Aws::IoT
890
910
  ReasonForNonComplianceCodes = Shapes::ListShape.new(name: 'ReasonForNonComplianceCodes')
891
911
  Recursive = Shapes::BooleanShape.new(name: 'Recursive')
892
912
  RecursiveWithoutDefault = Shapes::BooleanShape.new(name: 'RecursiveWithoutDefault')
913
+ Regex = Shapes::StringShape.new(name: 'Regex')
893
914
  RegisterCACertificateRequest = Shapes::StructureShape.new(name: 'RegisterCACertificateRequest')
894
915
  RegisterCACertificateResponse = Shapes::StructureShape.new(name: 'RegisterCACertificateResponse')
895
916
  RegisterCertificateRequest = Shapes::StructureShape.new(name: 'RegisterCertificateRequest')
@@ -1860,6 +1881,7 @@ module Aws::IoT
1860
1881
  CreateJobRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
1861
1882
  CreateJobRequest.add_member(:namespace_id, Shapes::ShapeRef.new(shape: NamespaceId, location_name: "namespaceId"))
1862
1883
  CreateJobRequest.add_member(:job_template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "jobTemplateArn"))
1884
+ CreateJobRequest.add_member(:document_parameters, Shapes::ShapeRef.new(shape: ParameterMap, location_name: "documentParameters"))
1863
1885
  CreateJobRequest.struct_class = Types::CreateJobRequest
1864
1886
 
1865
1887
  CreateJobResponse.add_member(:job_arn, Shapes::ShapeRef.new(shape: JobArn, location_name: "jobArn"))
@@ -2439,6 +2461,19 @@ module Aws::IoT
2439
2461
  DescribeJobTemplateResponse.add_member(:timeout_config, Shapes::ShapeRef.new(shape: TimeoutConfig, location_name: "timeoutConfig"))
2440
2462
  DescribeJobTemplateResponse.struct_class = Types::DescribeJobTemplateResponse
2441
2463
 
2464
+ DescribeManagedJobTemplateRequest.add_member(:template_name, Shapes::ShapeRef.new(shape: ManagedJobTemplateName, required: true, location: "uri", location_name: "templateName"))
2465
+ DescribeManagedJobTemplateRequest.add_member(:template_version, Shapes::ShapeRef.new(shape: ManagedTemplateVersion, location: "querystring", location_name: "templateVersion"))
2466
+ DescribeManagedJobTemplateRequest.struct_class = Types::DescribeManagedJobTemplateRequest
2467
+
2468
+ DescribeManagedJobTemplateResponse.add_member(:template_name, Shapes::ShapeRef.new(shape: ManagedJobTemplateName, location_name: "templateName"))
2469
+ DescribeManagedJobTemplateResponse.add_member(:template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "templateArn"))
2470
+ DescribeManagedJobTemplateResponse.add_member(:description, Shapes::ShapeRef.new(shape: JobDescription, location_name: "description"))
2471
+ DescribeManagedJobTemplateResponse.add_member(:template_version, Shapes::ShapeRef.new(shape: ManagedTemplateVersion, location_name: "templateVersion"))
2472
+ DescribeManagedJobTemplateResponse.add_member(:environments, Shapes::ShapeRef.new(shape: Environments, location_name: "environments"))
2473
+ DescribeManagedJobTemplateResponse.add_member(:document_parameters, Shapes::ShapeRef.new(shape: DocumentParameters, location_name: "documentParameters"))
2474
+ DescribeManagedJobTemplateResponse.add_member(:document, Shapes::ShapeRef.new(shape: JobDocument, location_name: "document"))
2475
+ DescribeManagedJobTemplateResponse.struct_class = Types::DescribeManagedJobTemplateResponse
2476
+
2442
2477
  DescribeMitigationActionRequest.add_member(:action_name, Shapes::ShapeRef.new(shape: MitigationActionName, required: true, location: "uri", location_name: "actionName"))
2443
2478
  DescribeMitigationActionRequest.struct_class = Types::DescribeMitigationActionRequest
2444
2479
 
@@ -2642,6 +2677,15 @@ module Aws::IoT
2642
2677
  DisableTopicRuleRequest.add_member(:rule_name, Shapes::ShapeRef.new(shape: RuleName, required: true, location: "uri", location_name: "ruleName"))
2643
2678
  DisableTopicRuleRequest.struct_class = Types::DisableTopicRuleRequest
2644
2679
 
2680
+ DocumentParameter.add_member(:key, Shapes::ShapeRef.new(shape: ParameterKey, location_name: "key"))
2681
+ DocumentParameter.add_member(:description, Shapes::ShapeRef.new(shape: JobDescription, location_name: "description"))
2682
+ DocumentParameter.add_member(:regex, Shapes::ShapeRef.new(shape: Regex, location_name: "regex"))
2683
+ DocumentParameter.add_member(:example, Shapes::ShapeRef.new(shape: Example, location_name: "example"))
2684
+ DocumentParameter.add_member(:optional, Shapes::ShapeRef.new(shape: Optional, location_name: "optional"))
2685
+ DocumentParameter.struct_class = Types::DocumentParameter
2686
+
2687
+ DocumentParameters.member = Shapes::ShapeRef.new(shape: DocumentParameter)
2688
+
2645
2689
  DomainConfigurationSummary.add_member(:domain_configuration_name, Shapes::ShapeRef.new(shape: ReservedDomainConfigurationName, location_name: "domainConfigurationName"))
2646
2690
  DomainConfigurationSummary.add_member(:domain_configuration_arn, Shapes::ShapeRef.new(shape: DomainConfigurationArn, location_name: "domainConfigurationArn"))
2647
2691
  DomainConfigurationSummary.add_member(:service_type, Shapes::ShapeRef.new(shape: ServiceType, location_name: "serviceType"))
@@ -2686,6 +2730,8 @@ module Aws::IoT
2686
2730
  EnableTopicRuleRequest.add_member(:rule_name, Shapes::ShapeRef.new(shape: RuleName, required: true, location: "uri", location_name: "ruleName"))
2687
2731
  EnableTopicRuleRequest.struct_class = Types::EnableTopicRuleRequest
2688
2732
 
2733
+ Environments.member = Shapes::ShapeRef.new(shape: Environment)
2734
+
2689
2735
  ErrorInfo.add_member(:code, Shapes::ShapeRef.new(shape: Code, location_name: "code"))
2690
2736
  ErrorInfo.add_member(:message, Shapes::ShapeRef.new(shape: OTAUpdateErrorMessage, location_name: "message"))
2691
2737
  ErrorInfo.struct_class = Types::ErrorInfo
@@ -2905,6 +2951,9 @@ module Aws::IoT
2905
2951
  InternalFailureException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
2906
2952
  InternalFailureException.struct_class = Types::InternalFailureException
2907
2953
 
2954
+ InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
2955
+ InternalServerException.struct_class = Types::InternalServerException
2956
+
2908
2957
  InvalidAggregationException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
2909
2958
  InvalidAggregationException.struct_class = Types::InvalidAggregationException
2910
2959
 
@@ -2955,6 +3004,7 @@ module Aws::IoT
2955
3004
  Job.add_member(:timeout_config, Shapes::ShapeRef.new(shape: TimeoutConfig, location_name: "timeoutConfig"))
2956
3005
  Job.add_member(:namespace_id, Shapes::ShapeRef.new(shape: NamespaceId, location_name: "namespaceId"))
2957
3006
  Job.add_member(:job_template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "jobTemplateArn"))
3007
+ Job.add_member(:document_parameters, Shapes::ShapeRef.new(shape: ParameterMap, location_name: "documentParameters"))
2958
3008
  Job.struct_class = Types::Job
2959
3009
 
2960
3010
  JobExecution.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "jobId"))
@@ -3288,6 +3338,15 @@ module Aws::IoT
3288
3338
  ListJobsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3289
3339
  ListJobsResponse.struct_class = Types::ListJobsResponse
3290
3340
 
3341
+ ListManagedJobTemplatesRequest.add_member(:template_name, Shapes::ShapeRef.new(shape: ManagedJobTemplateName, location: "querystring", location_name: "templateName"))
3342
+ ListManagedJobTemplatesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: LaserMaxResults, location: "querystring", location_name: "maxResults"))
3343
+ ListManagedJobTemplatesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
3344
+ ListManagedJobTemplatesRequest.struct_class = Types::ListManagedJobTemplatesRequest
3345
+
3346
+ ListManagedJobTemplatesResponse.add_member(:managed_job_templates, Shapes::ShapeRef.new(shape: ManagedJobTemplatesSummaryList, location_name: "managedJobTemplates"))
3347
+ ListManagedJobTemplatesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3348
+ ListManagedJobTemplatesResponse.struct_class = Types::ListManagedJobTemplatesResponse
3349
+
3291
3350
  ListMitigationActionsRequest.add_member(:action_type, Shapes::ShapeRef.new(shape: MitigationActionType, location: "querystring", location_name: "actionType"))
3292
3351
  ListMitigationActionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
3293
3352
  ListMitigationActionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
@@ -3599,6 +3658,15 @@ module Aws::IoT
3599
3658
  MalformedPolicyException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
3600
3659
  MalformedPolicyException.struct_class = Types::MalformedPolicyException
3601
3660
 
3661
+ ManagedJobTemplateSummary.add_member(:template_arn, Shapes::ShapeRef.new(shape: JobTemplateArn, location_name: "templateArn"))
3662
+ ManagedJobTemplateSummary.add_member(:template_name, Shapes::ShapeRef.new(shape: ManagedJobTemplateName, location_name: "templateName"))
3663
+ ManagedJobTemplateSummary.add_member(:description, Shapes::ShapeRef.new(shape: JobDescription, location_name: "description"))
3664
+ ManagedJobTemplateSummary.add_member(:environments, Shapes::ShapeRef.new(shape: Environments, location_name: "environments"))
3665
+ ManagedJobTemplateSummary.add_member(:template_version, Shapes::ShapeRef.new(shape: ManagedTemplateVersion, location_name: "templateVersion"))
3666
+ ManagedJobTemplateSummary.struct_class = Types::ManagedJobTemplateSummary
3667
+
3668
+ ManagedJobTemplatesSummaryList.member = Shapes::ShapeRef.new(shape: ManagedJobTemplateSummary)
3669
+
3602
3670
  MetricDimension.add_member(:dimension_name, Shapes::ShapeRef.new(shape: DimensionName, required: true, location_name: "dimensionName"))
3603
3671
  MetricDimension.add_member(:operator, Shapes::ShapeRef.new(shape: DimensionValueOperator, location_name: "operator"))
3604
3672
  MetricDimension.struct_class = Types::MetricDimension
@@ -3711,6 +3779,9 @@ module Aws::IoT
3711
3779
 
3712
3780
  OutgoingCertificates.member = Shapes::ShapeRef.new(shape: OutgoingCertificate)
3713
3781
 
3782
+ ParameterMap.key = Shapes::ShapeRef.new(shape: ParameterKey)
3783
+ ParameterMap.value = Shapes::ShapeRef.new(shape: ParameterValue)
3784
+
3714
3785
  Parameters.key = Shapes::ShapeRef.new(shape: Parameter)
3715
3786
  Parameters.value = Shapes::ShapeRef.new(shape: Value)
3716
3787
 
@@ -4244,6 +4315,7 @@ module Aws::IoT
4244
4315
  ThingDocument.add_member(:thing_group_names, Shapes::ShapeRef.new(shape: ThingGroupNameList, location_name: "thingGroupNames"))
4245
4316
  ThingDocument.add_member(:attributes, Shapes::ShapeRef.new(shape: Attributes, location_name: "attributes"))
4246
4317
  ThingDocument.add_member(:shadow, Shapes::ShapeRef.new(shape: JsonDocument, location_name: "shadow"))
4318
+ ThingDocument.add_member(:device_defender, Shapes::ShapeRef.new(shape: JsonDocument, location_name: "deviceDefender"))
4247
4319
  ThingDocument.add_member(:connectivity, Shapes::ShapeRef.new(shape: ThingConnectivity, location_name: "connectivity"))
4248
4320
  ThingDocument.struct_class = Types::ThingDocument
4249
4321
 
@@ -4282,6 +4354,8 @@ module Aws::IoT
4282
4354
 
4283
4355
  ThingIndexingConfiguration.add_member(:thing_indexing_mode, Shapes::ShapeRef.new(shape: ThingIndexingMode, required: true, location_name: "thingIndexingMode"))
4284
4356
  ThingIndexingConfiguration.add_member(:thing_connectivity_indexing_mode, Shapes::ShapeRef.new(shape: ThingConnectivityIndexingMode, location_name: "thingConnectivityIndexingMode"))
4357
+ ThingIndexingConfiguration.add_member(:device_defender_indexing_mode, Shapes::ShapeRef.new(shape: DeviceDefenderIndexingMode, location_name: "deviceDefenderIndexingMode"))
4358
+ ThingIndexingConfiguration.add_member(:named_shadow_indexing_mode, Shapes::ShapeRef.new(shape: NamedShadowIndexingMode, location_name: "namedShadowIndexingMode"))
4285
4359
  ThingIndexingConfiguration.add_member(:managed_fields, Shapes::ShapeRef.new(shape: Fields, location_name: "managedFields"))
4286
4360
  ThingIndexingConfiguration.add_member(:custom_fields, Shapes::ShapeRef.new(shape: Fields, location_name: "customFields"))
4287
4361
  ThingIndexingConfiguration.struct_class = Types::ThingIndexingConfiguration
@@ -6022,6 +6096,18 @@ module Aws::IoT
6022
6096
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
6023
6097
  end)
6024
6098
 
6099
+ api.add_operation(:describe_managed_job_template, Seahorse::Model::Operation.new.tap do |o|
6100
+ o.name = "DescribeManagedJobTemplate"
6101
+ o.http_method = "GET"
6102
+ o.http_request_uri = "/managed-job-templates/{templateName}"
6103
+ o.input = Shapes::ShapeRef.new(shape: DescribeManagedJobTemplateRequest)
6104
+ o.output = Shapes::ShapeRef.new(shape: DescribeManagedJobTemplateResponse)
6105
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
6106
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
6107
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
6108
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
6109
+ end)
6110
+
6025
6111
  api.add_operation(:describe_mitigation_action, Seahorse::Model::Operation.new.tap do |o|
6026
6112
  o.name = "DescribeMitigationAction"
6027
6113
  o.http_method = "GET"
@@ -6887,6 +6973,18 @@ module Aws::IoT
6887
6973
  )
6888
6974
  end)
6889
6975
 
6976
+ api.add_operation(:list_managed_job_templates, Seahorse::Model::Operation.new.tap do |o|
6977
+ o.name = "ListManagedJobTemplates"
6978
+ o.http_method = "GET"
6979
+ o.http_request_uri = "/managed-job-templates"
6980
+ o.input = Shapes::ShapeRef.new(shape: ListManagedJobTemplatesRequest)
6981
+ o.output = Shapes::ShapeRef.new(shape: ListManagedJobTemplatesResponse)
6982
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
6983
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
6984
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
6985
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
6986
+ end)
6987
+
6890
6988
  api.add_operation(:list_mitigation_actions, Seahorse::Model::Operation.new.tap do |o|
6891
6989
  o.name = "ListMitigationActions"
6892
6990
  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
@@ -3501,6 +3506,9 @@ module Aws::IoT
3501
3506
  # ],
3502
3507
  # namespace_id: "NamespaceId",
3503
3508
  # job_template_arn: "JobTemplateArn",
3509
+ # document_parameters: {
3510
+ # "ParameterKey" => "ParameterValue",
3511
+ # },
3504
3512
  # }
3505
3513
  #
3506
3514
  # @!attribute [rw] job_id
@@ -3590,6 +3598,11 @@ module Aws::IoT
3590
3598
  # The ARN of the job template used to create the job.
3591
3599
  # @return [String]
3592
3600
  #
3601
+ # @!attribute [rw] document_parameters
3602
+ # Parameters of a managed template that you can specify to create the
3603
+ # job document.
3604
+ # @return [Hash<String,String>]
3605
+ #
3593
3606
  class CreateJobRequest < Struct.new(
3594
3607
  :job_id,
3595
3608
  :targets,
@@ -3603,7 +3616,8 @@ module Aws::IoT
3603
3616
  :timeout_config,
3604
3617
  :tags,
3605
3618
  :namespace_id,
3606
- :job_template_arn)
3619
+ :job_template_arn,
3620
+ :document_parameters)
3607
3621
  SENSITIVE = []
3608
3622
  include Aws::Structure
3609
3623
  end
@@ -4745,8 +4759,8 @@ module Aws::IoT
4745
4759
  # @return [Array<Types::StreamFile>]
4746
4760
  #
4747
4761
  # @!attribute [rw] role_arn
4748
- # An IAM role that allows the IoT service principal assumes to access
4749
- # your S3 files.
4762
+ # An IAM role that allows the IoT service principal to access your S3
4763
+ # files.
4750
4764
  # @return [String]
4751
4765
  #
4752
4766
  # @!attribute [rw] tags
@@ -7141,6 +7155,13 @@ module Aws::IoT
7141
7155
  # * REGISTRY\_AND\_SHADOW\_AND\_CONNECTIVITY\_STATUS - Your thing
7142
7156
  # index contains registry data, shadow data, and thing connectivity
7143
7157
  # status data.
7158
+ #
7159
+ # * MULTI\_INDEXING\_MODE - Your thing index contains multiple data
7160
+ # sources. For more information, see [GetIndexingConfiguration][1].
7161
+ #
7162
+ #
7163
+ #
7164
+ # [1]: https://docs.aws.amazon.com/iot/latest/apireference/API_GetIndexingConfiguration.html
7144
7165
  # @return [String]
7145
7166
  #
7146
7167
  class DescribeIndexResponse < Struct.new(
@@ -7300,6 +7321,72 @@ module Aws::IoT
7300
7321
  include Aws::Structure
7301
7322
  end
7302
7323
 
7324
+ # @note When making an API call, you may pass DescribeManagedJobTemplateRequest
7325
+ # data as a hash:
7326
+ #
7327
+ # {
7328
+ # template_name: "ManagedJobTemplateName", # required
7329
+ # template_version: "ManagedTemplateVersion",
7330
+ # }
7331
+ #
7332
+ # @!attribute [rw] template_name
7333
+ # The unique name of a managed job template, which is required.
7334
+ # @return [String]
7335
+ #
7336
+ # @!attribute [rw] template_version
7337
+ # An optional parameter to specify version of a managed template. If
7338
+ # not specified, the pre-defined default version is returned.
7339
+ # @return [String]
7340
+ #
7341
+ class DescribeManagedJobTemplateRequest < Struct.new(
7342
+ :template_name,
7343
+ :template_version)
7344
+ SENSITIVE = []
7345
+ include Aws::Structure
7346
+ end
7347
+
7348
+ # @!attribute [rw] template_name
7349
+ # The unique name of a managed template, such as `AWS-Reboot`.
7350
+ # @return [String]
7351
+ #
7352
+ # @!attribute [rw] template_arn
7353
+ # The unique Amazon Resource Name (ARN) of the managed template.
7354
+ # @return [String]
7355
+ #
7356
+ # @!attribute [rw] description
7357
+ # The unique description of a managed template.
7358
+ # @return [String]
7359
+ #
7360
+ # @!attribute [rw] template_version
7361
+ # The version for a managed template.
7362
+ # @return [String]
7363
+ #
7364
+ # @!attribute [rw] environments
7365
+ # A list of environments that are supported with the managed job
7366
+ # template.
7367
+ # @return [Array<String>]
7368
+ #
7369
+ # @!attribute [rw] document_parameters
7370
+ # A map of key-value pairs that you can use as guidance to specify the
7371
+ # inputs for creating a job from a managed template.
7372
+ # @return [Array<Types::DocumentParameter>]
7373
+ #
7374
+ # @!attribute [rw] document
7375
+ # The document schema for a managed job template.
7376
+ # @return [String]
7377
+ #
7378
+ class DescribeManagedJobTemplateResponse < Struct.new(
7379
+ :template_name,
7380
+ :template_arn,
7381
+ :description,
7382
+ :template_version,
7383
+ :environments,
7384
+ :document_parameters,
7385
+ :document)
7386
+ SENSITIVE = []
7387
+ include Aws::Structure
7388
+ end
7389
+
7303
7390
  # @note When making an API call, you may pass DescribeMitigationActionRequest
7304
7391
  # data as a hash:
7305
7392
  #
@@ -8294,6 +8381,46 @@ module Aws::IoT
8294
8381
  include Aws::Structure
8295
8382
  end
8296
8383
 
8384
+ # A map of key-value pairs containing the patterns that need to be
8385
+ # replaced in a managed template job document schema. You can use the
8386
+ # description of each key as a guidance to specify the inputs during
8387
+ # runtime when creating a job.
8388
+ #
8389
+ # @!attribute [rw] key
8390
+ # Key of the map field containing the patterns that need to be
8391
+ # replaced in a managed template job document schema.
8392
+ # @return [String]
8393
+ #
8394
+ # @!attribute [rw] description
8395
+ # Description of the map field containing the patterns that need to be
8396
+ # replaced in a managed template job document schema.
8397
+ # @return [String]
8398
+ #
8399
+ # @!attribute [rw] regex
8400
+ # A regular expression of the patterns that need to be replaced in a
8401
+ # managed template job document schema.
8402
+ # @return [String]
8403
+ #
8404
+ # @!attribute [rw] example
8405
+ # An example illustrating a pattern that need to be replaced in a
8406
+ # managed template job document schema.
8407
+ # @return [String]
8408
+ #
8409
+ # @!attribute [rw] optional
8410
+ # Specifies whether a pattern that needs to be replaced in a managed
8411
+ # template job document schema is optional or required.
8412
+ # @return [Boolean]
8413
+ #
8414
+ class DocumentParameter < Struct.new(
8415
+ :key,
8416
+ :description,
8417
+ :regex,
8418
+ :example,
8419
+ :optional)
8420
+ SENSITIVE = []
8421
+ include Aws::Structure
8422
+ end
8423
+
8297
8424
  # The summary of a domain configuration. A domain configuration
8298
8425
  # specifies custom IoT-specific information about a domain. A domain
8299
8426
  # configuration can be associated with an Amazon Web Services-managed
@@ -8865,8 +8992,7 @@ module Aws::IoT
8865
8992
  end
8866
8993
 
8867
8994
  # @!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.
8995
+ # The total number of things that fit the query string criteria.
8870
8996
  # @return [Integer]
8871
8997
  #
8872
8998
  # @!attribute [rw] buckets
@@ -9658,6 +9784,18 @@ module Aws::IoT
9658
9784
  include Aws::Structure
9659
9785
  end
9660
9786
 
9787
+ # Internal error from the service that indicates an unexpected error or
9788
+ # that the service is unavailable.
9789
+ #
9790
+ # @!attribute [rw] message
9791
+ # @return [String]
9792
+ #
9793
+ class InternalServerException < Struct.new(
9794
+ :message)
9795
+ SENSITIVE = []
9796
+ include Aws::Structure
9797
+ end
9798
+
9661
9799
  # The aggregation is invalid.
9662
9800
  #
9663
9801
  # @!attribute [rw] message
@@ -9980,6 +10118,13 @@ module Aws::IoT
9980
10118
  # The ARN of the job template used to create the job.
9981
10119
  # @return [String]
9982
10120
  #
10121
+ # @!attribute [rw] document_parameters
10122
+ # A key-value map that pairs the patterns that need to be replaced in
10123
+ # a managed template job document schema. You can use the description
10124
+ # of each key as a guidance to specify the inputs during runtime when
10125
+ # creating a job.
10126
+ # @return [Hash<String,String>]
10127
+ #
9983
10128
  class Job < Struct.new(
9984
10129
  :job_arn,
9985
10130
  :job_id,
@@ -9999,7 +10144,8 @@ module Aws::IoT
9999
10144
  :job_process_details,
10000
10145
  :timeout_config,
10001
10146
  :namespace_id,
10002
- :job_template_arn)
10147
+ :job_template_arn,
10148
+ :document_parameters)
10003
10149
  SENSITIVE = []
10004
10150
  include Aws::Structure
10005
10151
  end
@@ -11803,6 +11949,52 @@ module Aws::IoT
11803
11949
  include Aws::Structure
11804
11950
  end
11805
11951
 
11952
+ # @note When making an API call, you may pass ListManagedJobTemplatesRequest
11953
+ # data as a hash:
11954
+ #
11955
+ # {
11956
+ # template_name: "ManagedJobTemplateName",
11957
+ # max_results: 1,
11958
+ # next_token: "NextToken",
11959
+ # }
11960
+ #
11961
+ # @!attribute [rw] template_name
11962
+ # An optional parameter for template name. If specified, only the
11963
+ # versions of the managed job templates that have the specified
11964
+ # template name will be returned.
11965
+ # @return [String]
11966
+ #
11967
+ # @!attribute [rw] max_results
11968
+ # Maximum number of entries that can be returned.
11969
+ # @return [Integer]
11970
+ #
11971
+ # @!attribute [rw] next_token
11972
+ # The token to retrieve the next set of results.
11973
+ # @return [String]
11974
+ #
11975
+ class ListManagedJobTemplatesRequest < Struct.new(
11976
+ :template_name,
11977
+ :max_results,
11978
+ :next_token)
11979
+ SENSITIVE = []
11980
+ include Aws::Structure
11981
+ end
11982
+
11983
+ # @!attribute [rw] managed_job_templates
11984
+ # A list of managed job templates that are returned.
11985
+ # @return [Array<Types::ManagedJobTemplateSummary>]
11986
+ #
11987
+ # @!attribute [rw] next_token
11988
+ # The token to retrieve the next set of results.
11989
+ # @return [String]
11990
+ #
11991
+ class ListManagedJobTemplatesResponse < Struct.new(
11992
+ :managed_job_templates,
11993
+ :next_token)
11994
+ SENSITIVE = []
11995
+ include Aws::Structure
11996
+ end
11997
+
11806
11998
  # @note When making an API call, you may pass ListMitigationActionsRequest
11807
11999
  # data as a hash:
11808
12000
  #
@@ -13454,6 +13646,39 @@ module Aws::IoT
13454
13646
  include Aws::Structure
13455
13647
  end
13456
13648
 
13649
+ # An object that contains information about the managed template.
13650
+ #
13651
+ # @!attribute [rw] template_arn
13652
+ # The Amazon Resource Name (ARN) for a managed template.
13653
+ # @return [String]
13654
+ #
13655
+ # @!attribute [rw] template_name
13656
+ # The unique Name for a managed template.
13657
+ # @return [String]
13658
+ #
13659
+ # @!attribute [rw] description
13660
+ # The description for a managed template.
13661
+ # @return [String]
13662
+ #
13663
+ # @!attribute [rw] environments
13664
+ # A list of environments that are supported with the managed job
13665
+ # template.
13666
+ # @return [Array<String>]
13667
+ #
13668
+ # @!attribute [rw] template_version
13669
+ # The version for a managed template.
13670
+ # @return [String]
13671
+ #
13672
+ class ManagedJobTemplateSummary < Struct.new(
13673
+ :template_arn,
13674
+ :template_name,
13675
+ :description,
13676
+ :environments,
13677
+ :template_version)
13678
+ SENSITIVE = []
13679
+ include Aws::Structure
13680
+ end
13681
+
13457
13682
  # The dimension of a metric.
13458
13683
  #
13459
13684
  # @note When making an API call, you may pass MetricDimension
@@ -16280,11 +16505,17 @@ module Aws::IoT
16280
16505
  include Aws::Structure
16281
16506
  end
16282
16507
 
16283
- # A map of key-value pairs for all supported statistics. Currently, only
16284
- # count is supported.
16508
+ # A map of key-value pairs for all supported statistics. For issues with
16509
+ # missing or unexpected values for this API, consult [ Fleet indexing
16510
+ # troubleshooting guide][1].
16511
+ #
16512
+ #
16513
+ #
16514
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/fleet-indexing-troubleshooting.html
16285
16515
  #
16286
16516
  # @!attribute [rw] count
16287
- # The count of things that match the query.
16517
+ # The count of things that match the query string criteria and contain
16518
+ # a valid aggregation field value.
16288
16519
  # @return [Integer]
16289
16520
  #
16290
16521
  # @!attribute [rw] average
@@ -16924,7 +17155,25 @@ module Aws::IoT
16924
17155
  # @return [Hash<String,String>]
16925
17156
  #
16926
17157
  # @!attribute [rw] shadow
16927
- # The shadow.
17158
+ # The unnamed shadow and named shadow.
17159
+ #
17160
+ # For more information about shadows, see [IoT Device Shadow
17161
+ # service.][1]
17162
+ #
17163
+ #
17164
+ #
17165
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/iot-device-shadows.html
17166
+ # @return [String]
17167
+ #
17168
+ # @!attribute [rw] device_defender
17169
+ # Contains Device Defender data.
17170
+ #
17171
+ # For more information about Device Defender, see [Device
17172
+ # Defender][1].
17173
+ #
17174
+ #
17175
+ #
17176
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/device-defender.html
16928
17177
  # @return [String]
16929
17178
  #
16930
17179
  # @!attribute [rw] connectivity
@@ -16939,6 +17188,7 @@ module Aws::IoT
16939
17188
  :thing_group_names,
16940
17189
  :attributes,
16941
17190
  :shadow,
17191
+ :device_defender,
16942
17192
  :connectivity)
16943
17193
  SENSITIVE = []
16944
17194
  include Aws::Structure
@@ -17087,6 +17337,8 @@ module Aws::IoT
17087
17337
  # {
17088
17338
  # thing_indexing_mode: "OFF", # required, accepts OFF, REGISTRY, REGISTRY_AND_SHADOW
17089
17339
  # thing_connectivity_indexing_mode: "OFF", # accepts OFF, STATUS
17340
+ # device_defender_indexing_mode: "OFF", # accepts OFF, VIOLATIONS
17341
+ # named_shadow_indexing_mode: "OFF", # accepts OFF, ON
17090
17342
  # managed_fields: [
17091
17343
  # {
17092
17344
  # name: "FieldName",
@@ -17122,6 +17374,39 @@ module Aws::IoT
17122
17374
  # * OFF - Thing connectivity status indexing is disabled.
17123
17375
  # @return [String]
17124
17376
  #
17377
+ # @!attribute [rw] device_defender_indexing_mode
17378
+ # Device Defender indexing mode. Valid values are:
17379
+ #
17380
+ # * VIOLATIONS – Your thing index contains Device Defender violations.
17381
+ # To enable Device Defender indexing, *deviceDefenderIndexingMode*
17382
+ # must not be set to OFF.
17383
+ #
17384
+ # * OFF - Device Defender indexing is disabled.
17385
+ #
17386
+ # For more information about Device Defender violations, see [Device
17387
+ # Defender Detect.][1]
17388
+ #
17389
+ #
17390
+ #
17391
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html
17392
+ # @return [String]
17393
+ #
17394
+ # @!attribute [rw] named_shadow_indexing_mode
17395
+ # Named shadow indexing mode. Valid values are:
17396
+ #
17397
+ # * ON – Your thing index contains named shadow. To enable thing named
17398
+ # shadow indexing, *namedShadowIndexingMode* must not be set to OFF.
17399
+ #
17400
+ # * OFF - Named shadow indexing is disabled.
17401
+ #
17402
+ # For more information about Shadows, see [IoT Device Shadow
17403
+ # service.][1]
17404
+ #
17405
+ #
17406
+ #
17407
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/iot-device-shadows.html
17408
+ # @return [String]
17409
+ #
17125
17410
  # @!attribute [rw] managed_fields
17126
17411
  # Contains fields that are indexed and whose types are already known
17127
17412
  # by the Fleet Indexing service.
@@ -17134,6 +17419,8 @@ module Aws::IoT
17134
17419
  class ThingIndexingConfiguration < Struct.new(
17135
17420
  :thing_indexing_mode,
17136
17421
  :thing_connectivity_indexing_mode,
17422
+ :device_defender_indexing_mode,
17423
+ :named_shadow_indexing_mode,
17137
17424
  :managed_fields,
17138
17425
  :custom_fields)
17139
17426
  SENSITIVE = []
@@ -18892,7 +19179,7 @@ module Aws::IoT
18892
19179
  #
18893
19180
  #
18894
19181
  #
18895
- # [1]: https://docs.aws.amazon.com/https:/docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
19182
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
18896
19183
  # @return [String]
18897
19184
  #
18898
19185
  # @!attribute [rw] expected_version
@@ -18921,6 +19208,8 @@ module Aws::IoT
18921
19208
  # thing_indexing_configuration: {
18922
19209
  # thing_indexing_mode: "OFF", # required, accepts OFF, REGISTRY, REGISTRY_AND_SHADOW
18923
19210
  # thing_connectivity_indexing_mode: "OFF", # accepts OFF, STATUS
19211
+ # device_defender_indexing_mode: "OFF", # accepts OFF, VIOLATIONS
19212
+ # named_shadow_indexing_mode: "OFF", # accepts OFF, ON
18924
19213
  # managed_fields: [
18925
19214
  # {
18926
19215
  # 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.76.0'
51
+ GEM_VERSION = '1.80.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.76.0
4
+ version: 1.80.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-09-21 00:00:00.000000000 Z
11
+ date: 2021-11-30 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.120.0
22
+ version: 3.122.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.120.0
32
+ version: 3.122.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement