aws-sdk-iot 1.0.0 → 1.1.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
  SHA1:
3
- metadata.gz: 9cdeb15e614571f525d9b8f1d111800e70753b67
4
- data.tar.gz: 263a090db907210468767bf4be7da7f00091aeac
3
+ metadata.gz: a7dd8d2573b1823f82af719af47b23962214eca0
4
+ data.tar.gz: dcb4f3cd320c14884dfc891dd94f7a006f5943a2
5
5
  SHA512:
6
- metadata.gz: 70ac65312e4ab1401c16a30b52b852406937df3ab449d754ea903f6f1323000d8b6824a1dca0dbe25c9ad52aa86ee9c24e2e2701af79dca09e0a7cb0e1ca9917
7
- data.tar.gz: f1909b63fb53600687811d07e406da49a2617d821220bcd79d087ccf9eb29b0e0949f504ca9be6ce593028600cbc6421f96b7365285de7e101b81ec04dcf6aa5
6
+ metadata.gz: b678233ac88bd095d5dddf4b0576ac29d5710a2e3e686103de36d6fc2ebe13d4d1fc482ff0be88dc396b3d17dd5e860030c42c0e10ab940abb986663a8cfbf1c
7
+ data.tar.gz: b0b0ae92352a9f441dad9b5ed88cf31c289fdf3c249ba07633d95f5844b18f5426874e1d8db8be1727267a1741f3cb0ddfd906e6a53ab1cd493d687d9a48d2d7
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-iot/customizations'
42
42
  # @service
43
43
  module Aws::IoT
44
44
 
45
- GEM_VERSION = '1.0.0'
45
+ GEM_VERSION = '1.1.0'
46
46
 
47
47
  end
@@ -173,9 +173,115 @@ module Aws::IoT
173
173
  req.send_request(options)
174
174
  end
175
175
 
176
+ # Adds a thing to a thing group.
177
+ #
178
+ # @option params [String] :thing_group_name
179
+ # The name of the group to which you are adding a thing.
180
+ #
181
+ # @option params [String] :thing_group_arn
182
+ # The ARN of the group to which you are adding a thing.
183
+ #
184
+ # @option params [String] :thing_name
185
+ # The name of the thing to add to a group.
186
+ #
187
+ # @option params [String] :thing_arn
188
+ # The ARN of the thing to add to a group.
189
+ #
190
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
191
+ #
192
+ # @example Request syntax with placeholder values
193
+ #
194
+ # resp = client.add_thing_to_thing_group({
195
+ # thing_group_name: "ThingGroupName",
196
+ # thing_group_arn: "ThingGroupArn",
197
+ # thing_name: "ThingName",
198
+ # thing_arn: "ThingArn",
199
+ # })
200
+ #
201
+ # @overload add_thing_to_thing_group(params = {})
202
+ # @param [Hash] params ({})
203
+ def add_thing_to_thing_group(params = {}, options = {})
204
+ req = build_request(:add_thing_to_thing_group, params)
205
+ req.send_request(options)
206
+ end
207
+
208
+ # Associates a group with a continuous job. The following criteria must
209
+ # be met:
210
+ #
211
+ # * The job must have been created with the `targetSelection` field set
212
+ # to "CONTINUOUS".
213
+ #
214
+ # * The job status must currently be "IN\_PROGRESS".
215
+ #
216
+ # * The total number of targets associated with a job must not exceed
217
+ # 100.
218
+ #
219
+ # @option params [required, Array<String>] :targets
220
+ # A list of thing group ARNs that define the targets of the job.
221
+ #
222
+ # @option params [required, String] :job_id
223
+ # The unique identifier you assigned to this job when it was created.
224
+ #
225
+ # @option params [String] :comment
226
+ # An optional comment string describing why the job was associated with
227
+ # the targets.
228
+ #
229
+ # @return [Types::AssociateTargetsWithJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
230
+ #
231
+ # * {Types::AssociateTargetsWithJobResponse#job_arn #job_arn} => String
232
+ # * {Types::AssociateTargetsWithJobResponse#job_id #job_id} => String
233
+ # * {Types::AssociateTargetsWithJobResponse#description #description} => String
234
+ #
235
+ # @example Request syntax with placeholder values
236
+ #
237
+ # resp = client.associate_targets_with_job({
238
+ # targets: ["TargetArn"], # required
239
+ # job_id: "JobId", # required
240
+ # comment: "Comment",
241
+ # })
242
+ #
243
+ # @example Response structure
244
+ #
245
+ # resp.job_arn #=> String
246
+ # resp.job_id #=> String
247
+ # resp.description #=> String
248
+ #
249
+ # @overload associate_targets_with_job(params = {})
250
+ # @param [Hash] params ({})
251
+ def associate_targets_with_job(params = {}, options = {})
252
+ req = build_request(:associate_targets_with_job, params)
253
+ req.send_request(options)
254
+ end
255
+
256
+ # Attaches a policy to the specified target.
257
+ #
258
+ # @option params [required, String] :policy_name
259
+ # The name of the policy to attach.
260
+ #
261
+ # @option params [required, String] :target
262
+ # The identity to which the policy is attached.
263
+ #
264
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
265
+ #
266
+ # @example Request syntax with placeholder values
267
+ #
268
+ # resp = client.attach_policy({
269
+ # policy_name: "PolicyName", # required
270
+ # target: "PolicyTarget", # required
271
+ # })
272
+ #
273
+ # @overload attach_policy(params = {})
274
+ # @param [Hash] params ({})
275
+ def attach_policy(params = {}, options = {})
276
+ req = build_request(:attach_policy, params)
277
+ req.send_request(options)
278
+ end
279
+
176
280
  # Attaches the specified policy to the specified principal (certificate
177
281
  # or other credential).
178
282
  #
283
+ # **Note:** This API is deprecated. Please use AttachPolicy instead.
284
+ #
179
285
  # @option params [required, String] :policy_name
180
286
  # The policy name.
181
287
  #
@@ -253,6 +359,99 @@ module Aws::IoT
253
359
  req.send_request(options)
254
360
  end
255
361
 
362
+ # Cancels a job.
363
+ #
364
+ # @option params [required, String] :job_id
365
+ # The unique identifier you assigned to this job when it was created.
366
+ #
367
+ # @option params [String] :comment
368
+ # An optional comment string describing why the job was canceled.
369
+ #
370
+ # @return [Types::CancelJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
371
+ #
372
+ # * {Types::CancelJobResponse#job_arn #job_arn} => String
373
+ # * {Types::CancelJobResponse#job_id #job_id} => String
374
+ # * {Types::CancelJobResponse#description #description} => String
375
+ #
376
+ # @example Request syntax with placeholder values
377
+ #
378
+ # resp = client.cancel_job({
379
+ # job_id: "JobId", # required
380
+ # comment: "Comment",
381
+ # })
382
+ #
383
+ # @example Response structure
384
+ #
385
+ # resp.job_arn #=> String
386
+ # resp.job_id #=> String
387
+ # resp.description #=> String
388
+ #
389
+ # @overload cancel_job(params = {})
390
+ # @param [Hash] params ({})
391
+ def cancel_job(params = {}, options = {})
392
+ req = build_request(:cancel_job, params)
393
+ req.send_request(options)
394
+ end
395
+
396
+ # Clears the default authorizer.
397
+ #
398
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
399
+ #
400
+ # @overload clear_default_authorizer(params = {})
401
+ # @param [Hash] params ({})
402
+ def clear_default_authorizer(params = {}, options = {})
403
+ req = build_request(:clear_default_authorizer, params)
404
+ req.send_request(options)
405
+ end
406
+
407
+ # Creates an authorizer.
408
+ #
409
+ # @option params [required, String] :authorizer_name
410
+ # The authorizer name.
411
+ #
412
+ # @option params [required, String] :authorizer_function_arn
413
+ # The ARN of the authorizer's Lambda function.
414
+ #
415
+ # @option params [required, String] :token_key_name
416
+ # The name of the token key used to extract the token from the HTTP
417
+ # headers.
418
+ #
419
+ # @option params [required, Hash<String,String>] :token_signing_public_keys
420
+ # The public keys used to verify the digital signature returned by your
421
+ # custom authentication service.
422
+ #
423
+ # @option params [String] :status
424
+ # The status of the create authorizer request.
425
+ #
426
+ # @return [Types::CreateAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
427
+ #
428
+ # * {Types::CreateAuthorizerResponse#authorizer_name #authorizer_name} => String
429
+ # * {Types::CreateAuthorizerResponse#authorizer_arn #authorizer_arn} => String
430
+ #
431
+ # @example Request syntax with placeholder values
432
+ #
433
+ # resp = client.create_authorizer({
434
+ # authorizer_name: "AuthorizerName", # required
435
+ # authorizer_function_arn: "AuthorizerFunctionArn", # required
436
+ # token_key_name: "TokenKeyName", # required
437
+ # token_signing_public_keys: { # required
438
+ # "KeyName" => "KeyValue",
439
+ # },
440
+ # status: "ACTIVE", # accepts ACTIVE, INACTIVE
441
+ # })
442
+ #
443
+ # @example Response structure
444
+ #
445
+ # resp.authorizer_name #=> String
446
+ # resp.authorizer_arn #=> String
447
+ #
448
+ # @overload create_authorizer(params = {})
449
+ # @param [Hash] params ({})
450
+ def create_authorizer(params = {}, options = {})
451
+ req = build_request(:create_authorizer, params)
452
+ req.send_request(options)
453
+ end
454
+
256
455
  # Creates an X.509 certificate using the specified certificate signing
257
456
  # request.
258
457
  #
@@ -334,6 +533,82 @@ module Aws::IoT
334
533
  req.send_request(options)
335
534
  end
336
535
 
536
+ # Creates a job.
537
+ #
538
+ # @option params [required, String] :job_id
539
+ # A job identifier which must be unique for your AWS account. We
540
+ # recommend using a UUID. Alpha-numeric characters, "-" and "\_" are
541
+ # valid for use here.
542
+ #
543
+ # @option params [required, Array<String>] :targets
544
+ # A list of things and thing groups to which the job should be sent.
545
+ #
546
+ # @option params [String] :document_source
547
+ # An S3 link to the job document.
548
+ #
549
+ # @option params [String] :document
550
+ # The job document.
551
+ #
552
+ # @option params [String] :description
553
+ # A short text description of the job.
554
+ #
555
+ # @option params [Types::PresignedUrlConfig] :presigned_url_config
556
+ # Configuration information for pre-signed S3 URLs.
557
+ #
558
+ # @option params [String] :target_selection
559
+ # Specifies whether the job will continue to run (CONTINUOUS), or will
560
+ # be complete after all those things specified as targets have completed
561
+ # the job (SNAPSHOT). If continuous, the job may also be run on a thing
562
+ # when a change is detected in a target. For example, a job will run on
563
+ # a thing when the thing is added to a target group, even after the job
564
+ # was completed by all things originally in the group.
565
+ #
566
+ # @option params [Types::JobExecutionsRolloutConfig] :job_executions_rollout_config
567
+ # Allows you to create a staged rollout of the job.
568
+ #
569
+ # @option params [Hash<String,String>] :document_parameters
570
+ # Parameters for the job document.
571
+ #
572
+ # @return [Types::CreateJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
573
+ #
574
+ # * {Types::CreateJobResponse#job_arn #job_arn} => String
575
+ # * {Types::CreateJobResponse#job_id #job_id} => String
576
+ # * {Types::CreateJobResponse#description #description} => String
577
+ #
578
+ # @example Request syntax with placeholder values
579
+ #
580
+ # resp = client.create_job({
581
+ # job_id: "JobId", # required
582
+ # targets: ["TargetArn"], # required
583
+ # document_source: "JobDocumentSource",
584
+ # document: "JobDocument",
585
+ # description: "JobDescription",
586
+ # presigned_url_config: {
587
+ # role_arn: "RoleArn",
588
+ # expires_in_sec: 1,
589
+ # },
590
+ # target_selection: "CONTINUOUS", # accepts CONTINUOUS, SNAPSHOT
591
+ # job_executions_rollout_config: {
592
+ # maximum_per_minute: 1,
593
+ # },
594
+ # document_parameters: {
595
+ # "ParameterKey" => "ParameterValue",
596
+ # },
597
+ # })
598
+ #
599
+ # @example Response structure
600
+ #
601
+ # resp.job_arn #=> String
602
+ # resp.job_id #=> String
603
+ # resp.description #=> String
604
+ #
605
+ # @overload create_job(params = {})
606
+ # @param [Hash] params ({})
607
+ def create_job(params = {}, options = {})
608
+ req = build_request(:create_job, params)
609
+ req.send_request(options)
610
+ end
611
+
337
612
  # Creates a 2048-bit RSA key pair and issues an X.509 certificate using
338
613
  # the issued public key.
339
614
  #
@@ -429,7 +704,7 @@ module Aws::IoT
429
704
  #
430
705
  # @option params [required, String] :policy_document
431
706
  # The JSON document that describes the policy. Minimum length of 1.
432
- # Maximum length of 2048, excluding whitespaces
707
+ # Maximum length of 2048, excluding whitespace.
433
708
  #
434
709
  # @option params [Boolean] :set_as_default
435
710
  # Specifies whether the policy version is set as the default. When this
@@ -466,6 +741,43 @@ module Aws::IoT
466
741
  req.send_request(options)
467
742
  end
468
743
 
744
+ # Creates a role alias.
745
+ #
746
+ # @option params [required, String] :role_alias
747
+ # The role alias that points to a role ARN. This allows you to change
748
+ # the role without having to update the device.
749
+ #
750
+ # @option params [required, String] :role_arn
751
+ # The role ARN.
752
+ #
753
+ # @option params [Integer] :credential_duration_seconds
754
+ # How long (in seconds) the credentials will be valid.
755
+ #
756
+ # @return [Types::CreateRoleAliasResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
757
+ #
758
+ # * {Types::CreateRoleAliasResponse#role_alias #role_alias} => String
759
+ # * {Types::CreateRoleAliasResponse#role_alias_arn #role_alias_arn} => String
760
+ #
761
+ # @example Request syntax with placeholder values
762
+ #
763
+ # resp = client.create_role_alias({
764
+ # role_alias: "RoleAlias", # required
765
+ # role_arn: "RoleArn", # required
766
+ # credential_duration_seconds: 1,
767
+ # })
768
+ #
769
+ # @example Response structure
770
+ #
771
+ # resp.role_alias #=> String
772
+ # resp.role_alias_arn #=> String
773
+ #
774
+ # @overload create_role_alias(params = {})
775
+ # @param [Hash] params ({})
776
+ def create_role_alias(params = {}, options = {})
777
+ req = build_request(:create_role_alias, params)
778
+ req.send_request(options)
779
+ end
780
+
469
781
  # Creates a thing record in the thing registry.
470
782
  #
471
783
  # @option params [required, String] :thing_name
@@ -484,6 +796,7 @@ module Aws::IoT
484
796
  #
485
797
  # * {Types::CreateThingResponse#thing_name #thing_name} => String
486
798
  # * {Types::CreateThingResponse#thing_arn #thing_arn} => String
799
+ # * {Types::CreateThingResponse#thing_id #thing_id} => String
487
800
  #
488
801
  # @example Request syntax with placeholder values
489
802
  #
@@ -502,6 +815,7 @@ module Aws::IoT
502
815
  #
503
816
  # resp.thing_name #=> String
504
817
  # resp.thing_arn #=> String
818
+ # resp.thing_id #=> String
505
819
  #
506
820
  # @overload create_thing(params = {})
507
821
  # @param [Hash] params ({})
@@ -510,6 +824,52 @@ module Aws::IoT
510
824
  req.send_request(options)
511
825
  end
512
826
 
827
+ # Create a thing group.
828
+ #
829
+ # @option params [required, String] :thing_group_name
830
+ # The thing group name to create.
831
+ #
832
+ # @option params [String] :parent_group_name
833
+ # The name of the parent thing group.
834
+ #
835
+ # @option params [Types::ThingGroupProperties] :thing_group_properties
836
+ # The thing group properties.
837
+ #
838
+ # @return [Types::CreateThingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
839
+ #
840
+ # * {Types::CreateThingGroupResponse#thing_group_name #thing_group_name} => String
841
+ # * {Types::CreateThingGroupResponse#thing_group_arn #thing_group_arn} => String
842
+ # * {Types::CreateThingGroupResponse#thing_group_id #thing_group_id} => String
843
+ #
844
+ # @example Request syntax with placeholder values
845
+ #
846
+ # resp = client.create_thing_group({
847
+ # thing_group_name: "ThingGroupName", # required
848
+ # parent_group_name: "ThingGroupName",
849
+ # thing_group_properties: {
850
+ # thing_group_description: "ThingGroupDescription",
851
+ # attribute_payload: {
852
+ # attributes: {
853
+ # "AttributeName" => "AttributeValue",
854
+ # },
855
+ # merge: false,
856
+ # },
857
+ # },
858
+ # })
859
+ #
860
+ # @example Response structure
861
+ #
862
+ # resp.thing_group_name #=> String
863
+ # resp.thing_group_arn #=> String
864
+ # resp.thing_group_id #=> String
865
+ #
866
+ # @overload create_thing_group(params = {})
867
+ # @param [Hash] params ({})
868
+ def create_thing_group(params = {}, options = {})
869
+ req = build_request(:create_thing_group, params)
870
+ req.send_request(options)
871
+ end
872
+
513
873
  # Creates a new thing type.
514
874
  #
515
875
  # @option params [required, String] :thing_type_name
@@ -524,6 +884,7 @@ module Aws::IoT
524
884
  #
525
885
  # * {Types::CreateThingTypeResponse#thing_type_name #thing_type_name} => String
526
886
  # * {Types::CreateThingTypeResponse#thing_type_arn #thing_type_arn} => String
887
+ # * {Types::CreateThingTypeResponse#thing_type_id #thing_type_id} => String
527
888
  #
528
889
  # @example Request syntax with placeholder values
529
890
  #
@@ -539,6 +900,7 @@ module Aws::IoT
539
900
  #
540
901
  # resp.thing_type_name #=> String
541
902
  # resp.thing_type_arn #=> String
903
+ # resp.thing_type_id #=> String
542
904
  #
543
905
  # @overload create_thing_type(params = {})
544
906
  # @param [Hash] params ({})
@@ -658,6 +1020,26 @@ module Aws::IoT
658
1020
  req.send_request(options)
659
1021
  end
660
1022
 
1023
+ # Deletes an authorizer.
1024
+ #
1025
+ # @option params [required, String] :authorizer_name
1026
+ # The name of the authorizer to delete.
1027
+ #
1028
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1029
+ #
1030
+ # @example Request syntax with placeholder values
1031
+ #
1032
+ # resp = client.delete_authorizer({
1033
+ # authorizer_name: "AuthorizerName", # required
1034
+ # })
1035
+ #
1036
+ # @overload delete_authorizer(params = {})
1037
+ # @param [Hash] params ({})
1038
+ def delete_authorizer(params = {}, options = {})
1039
+ req = build_request(:delete_authorizer, params)
1040
+ req.send_request(options)
1041
+ end
1042
+
661
1043
  # Deletes a registered CA certificate.
662
1044
  #
663
1045
  # @option params [required, String] :certificate_id
@@ -688,12 +1070,16 @@ module Aws::IoT
688
1070
  # @option params [required, String] :certificate_id
689
1071
  # The ID of the certificate.
690
1072
  #
1073
+ # @option params [Boolean] :force_delete
1074
+ # Forces a certificate request to be deleted.
1075
+ #
691
1076
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
692
1077
  #
693
1078
  # @example Request syntax with placeholder values
694
1079
  #
695
1080
  # resp = client.delete_certificate({
696
1081
  # certificate_id: "CertificateId", # required
1082
+ # force_delete: false,
697
1083
  # })
698
1084
  #
699
1085
  # @overload delete_certificate(params = {})
@@ -773,6 +1159,26 @@ module Aws::IoT
773
1159
  req.send_request(options)
774
1160
  end
775
1161
 
1162
+ # Deletes a role alias
1163
+ #
1164
+ # @option params [required, String] :role_alias
1165
+ # The role alias to delete.
1166
+ #
1167
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1168
+ #
1169
+ # @example Request syntax with placeholder values
1170
+ #
1171
+ # resp = client.delete_role_alias({
1172
+ # role_alias: "RoleAlias", # required
1173
+ # })
1174
+ #
1175
+ # @overload delete_role_alias(params = {})
1176
+ # @param [Hash] params ({})
1177
+ def delete_role_alias(params = {}, options = {})
1178
+ req = build_request(:delete_role_alias, params)
1179
+ req.send_request(options)
1180
+ end
1181
+
776
1182
  # Deletes the specified thing.
777
1183
  #
778
1184
  # @option params [required, String] :thing_name
@@ -800,6 +1206,30 @@ module Aws::IoT
800
1206
  req.send_request(options)
801
1207
  end
802
1208
 
1209
+ # Deletes a thing group.
1210
+ #
1211
+ # @option params [required, String] :thing_group_name
1212
+ # The name of the thing group to delete.
1213
+ #
1214
+ # @option params [Integer] :expected_version
1215
+ # The expected version of the thing group to delete.
1216
+ #
1217
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1218
+ #
1219
+ # @example Request syntax with placeholder values
1220
+ #
1221
+ # resp = client.delete_thing_group({
1222
+ # thing_group_name: "ThingGroupName", # required
1223
+ # expected_version: 1,
1224
+ # })
1225
+ #
1226
+ # @overload delete_thing_group(params = {})
1227
+ # @param [Hash] params ({})
1228
+ def delete_thing_group(params = {}, options = {})
1229
+ req = build_request(:delete_thing_group, params)
1230
+ req.send_request(options)
1231
+ end
1232
+
803
1233
  # Deletes the specified thing type . You cannot delete a thing type if
804
1234
  # it has things associated with it. To delete a thing type, first mark
805
1235
  # it as deprecated by calling DeprecateThingType, then remove any
@@ -825,7 +1255,7 @@ module Aws::IoT
825
1255
  req.send_request(options)
826
1256
  end
827
1257
 
828
- # Deletes the specified rule.
1258
+ # Deletes the rule.
829
1259
  #
830
1260
  # @option params [required, String] :rule_name
831
1261
  # The name of the rule.
@@ -845,6 +1275,31 @@ module Aws::IoT
845
1275
  req.send_request(options)
846
1276
  end
847
1277
 
1278
+ # Deletes a logging level.
1279
+ #
1280
+ # @option params [required, String] :target_type
1281
+ # The type of resource for which you are configuring logging. Must be
1282
+ # `THING_Group`.
1283
+ #
1284
+ # @option params [required, String] :target_name
1285
+ # The name of the resource for which you are configuring logging.
1286
+ #
1287
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1288
+ #
1289
+ # @example Request syntax with placeholder values
1290
+ #
1291
+ # resp = client.delete_v2_logging_level({
1292
+ # target_type: "DEFAULT", # required, accepts DEFAULT, THING_GROUP
1293
+ # target_name: "LogTargetName", # required
1294
+ # })
1295
+ #
1296
+ # @overload delete_v2_logging_level(params = {})
1297
+ # @param [Hash] params ({})
1298
+ def delete_v2_logging_level(params = {}, options = {})
1299
+ req = build_request(:delete_v2_logging_level, params)
1300
+ req.send_request(options)
1301
+ end
1302
+
848
1303
  # Deprecates a thing type. You can not associate new things with
849
1304
  # deprecated thing type.
850
1305
  #
@@ -872,6 +1327,40 @@ module Aws::IoT
872
1327
  req.send_request(options)
873
1328
  end
874
1329
 
1330
+ # Describes an authorizer.
1331
+ #
1332
+ # @option params [required, String] :authorizer_name
1333
+ # The name of the authorizer to describe.
1334
+ #
1335
+ # @return [Types::DescribeAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1336
+ #
1337
+ # * {Types::DescribeAuthorizerResponse#authorizer_description #authorizer_description} => Types::AuthorizerDescription
1338
+ #
1339
+ # @example Request syntax with placeholder values
1340
+ #
1341
+ # resp = client.describe_authorizer({
1342
+ # authorizer_name: "AuthorizerName", # required
1343
+ # })
1344
+ #
1345
+ # @example Response structure
1346
+ #
1347
+ # resp.authorizer_description.authorizer_name #=> String
1348
+ # resp.authorizer_description.authorizer_arn #=> String
1349
+ # resp.authorizer_description.authorizer_function_arn #=> String
1350
+ # resp.authorizer_description.token_key_name #=> String
1351
+ # resp.authorizer_description.token_signing_public_keys #=> Hash
1352
+ # resp.authorizer_description.token_signing_public_keys["KeyName"] #=> String
1353
+ # resp.authorizer_description.status #=> String, one of "ACTIVE", "INACTIVE"
1354
+ # resp.authorizer_description.creation_date #=> Time
1355
+ # resp.authorizer_description.last_modified_date #=> Time
1356
+ #
1357
+ # @overload describe_authorizer(params = {})
1358
+ # @param [Hash] params ({})
1359
+ def describe_authorizer(params = {}, options = {})
1360
+ req = build_request(:describe_authorizer, params)
1361
+ req.send_request(options)
1362
+ end
1363
+
875
1364
  # Describes a registered CA certificate.
876
1365
  #
877
1366
  # @option params [required, String] :certificate_id
@@ -880,6 +1369,7 @@ module Aws::IoT
880
1369
  # @return [Types::DescribeCACertificateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
881
1370
  #
882
1371
  # * {Types::DescribeCACertificateResponse#certificate_description #certificate_description} => Types::CACertificateDescription
1372
+ # * {Types::DescribeCACertificateResponse#registration_config #registration_config} => Types::RegistrationConfig
883
1373
  #
884
1374
  # @example Request syntax with placeholder values
885
1375
  #
@@ -896,6 +1386,8 @@ module Aws::IoT
896
1386
  # resp.certificate_description.owned_by #=> String
897
1387
  # resp.certificate_description.creation_date #=> Time
898
1388
  # resp.certificate_description.auto_registration_status #=> String, one of "ENABLE", "DISABLE"
1389
+ # resp.registration_config.template_body #=> String
1390
+ # resp.registration_config.role_arn #=> String
899
1391
  #
900
1392
  # @overload describe_ca_certificate(params = {})
901
1393
  # @param [Hash] params ({})
@@ -904,7 +1396,8 @@ module Aws::IoT
904
1396
  req.send_request(options)
905
1397
  end
906
1398
 
907
- # Gets information about the specified certificate.
1399
+ # Gets information about the specified certificate. You may specify the
1400
+ # certificate using either its ID or PEM.
908
1401
  #
909
1402
  # @option params [required, String] :certificate_id
910
1403
  # The ID of the certificate.
@@ -943,12 +1436,46 @@ module Aws::IoT
943
1436
  req.send_request(options)
944
1437
  end
945
1438
 
1439
+ # Describes the default authorizer.
1440
+ #
1441
+ # @return [Types::DescribeDefaultAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1442
+ #
1443
+ # * {Types::DescribeDefaultAuthorizerResponse#authorizer_description #authorizer_description} => Types::AuthorizerDescription
1444
+ #
1445
+ # @example Response structure
1446
+ #
1447
+ # resp.authorizer_description.authorizer_name #=> String
1448
+ # resp.authorizer_description.authorizer_arn #=> String
1449
+ # resp.authorizer_description.authorizer_function_arn #=> String
1450
+ # resp.authorizer_description.token_key_name #=> String
1451
+ # resp.authorizer_description.token_signing_public_keys #=> Hash
1452
+ # resp.authorizer_description.token_signing_public_keys["KeyName"] #=> String
1453
+ # resp.authorizer_description.status #=> String, one of "ACTIVE", "INACTIVE"
1454
+ # resp.authorizer_description.creation_date #=> Time
1455
+ # resp.authorizer_description.last_modified_date #=> Time
1456
+ #
1457
+ # @overload describe_default_authorizer(params = {})
1458
+ # @param [Hash] params ({})
1459
+ def describe_default_authorizer(params = {}, options = {})
1460
+ req = build_request(:describe_default_authorizer, params)
1461
+ req.send_request(options)
1462
+ end
1463
+
946
1464
  # Returns a unique endpoint specific to the AWS account making the call.
947
1465
  #
1466
+ # @option params [String] :endpoint_type
1467
+ # The endpoint type.
1468
+ #
948
1469
  # @return [Types::DescribeEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
949
1470
  #
950
1471
  # * {Types::DescribeEndpointResponse#endpoint_address #endpoint_address} => String
951
1472
  #
1473
+ # @example Request syntax with placeholder values
1474
+ #
1475
+ # resp = client.describe_endpoint({
1476
+ # endpoint_type: "EndpointType",
1477
+ # })
1478
+ #
952
1479
  # @example Response structure
953
1480
  #
954
1481
  # resp.endpoint_address #=> String
@@ -960,29 +1487,211 @@ module Aws::IoT
960
1487
  req.send_request(options)
961
1488
  end
962
1489
 
963
- # Gets information about the specified thing.
1490
+ # Describes event configurations.
964
1491
  #
965
- # @option params [required, String] :thing_name
966
- # The name of the thing.
967
- #
968
- # @return [Types::DescribeThingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
969
- #
970
- # * {Types::DescribeThingResponse#default_client_id #default_client_id} => String
971
- # * {Types::DescribeThingResponse#thing_name #thing_name} => String
972
- # * {Types::DescribeThingResponse#thing_type_name #thing_type_name} => String
973
- # * {Types::DescribeThingResponse#attributes #attributes} => Hash&lt;String,String&gt;
974
- # * {Types::DescribeThingResponse#version #version} => Integer
975
- #
976
- # @example Request syntax with placeholder values
1492
+ # @return [Types::DescribeEventConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
977
1493
  #
978
- # resp = client.describe_thing({
979
- # thing_name: "ThingName", # required
980
- # })
1494
+ # * {Types::DescribeEventConfigurationsResponse#event_configurations #event_configurations} => Hash&lt;String,Types::Configuration&gt;
1495
+ # * {Types::DescribeEventConfigurationsResponse#creation_date #creation_date} => Time
1496
+ # * {Types::DescribeEventConfigurationsResponse#last_modified_date #last_modified_date} => Time
981
1497
  #
982
1498
  # @example Response structure
983
1499
  #
984
- # resp.default_client_id #=> String
1500
+ # resp.event_configurations #=> Hash
1501
+ # resp.event_configurations["EventType"].enabled #=> Boolean
1502
+ # resp.creation_date #=> Time
1503
+ # resp.last_modified_date #=> Time
1504
+ #
1505
+ # @overload describe_event_configurations(params = {})
1506
+ # @param [Hash] params ({})
1507
+ def describe_event_configurations(params = {}, options = {})
1508
+ req = build_request(:describe_event_configurations, params)
1509
+ req.send_request(options)
1510
+ end
1511
+
1512
+ # Describes a search index.
1513
+ #
1514
+ # @option params [required, String] :index_name
1515
+ # The index name.
1516
+ #
1517
+ # @return [Types::DescribeIndexResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1518
+ #
1519
+ # * {Types::DescribeIndexResponse#index_name #index_name} => String
1520
+ # * {Types::DescribeIndexResponse#index_status #index_status} => String
1521
+ # * {Types::DescribeIndexResponse#schema #schema} => String
1522
+ #
1523
+ # @example Request syntax with placeholder values
1524
+ #
1525
+ # resp = client.describe_index({
1526
+ # index_name: "IndexName", # required
1527
+ # })
1528
+ #
1529
+ # @example Response structure
1530
+ #
1531
+ # resp.index_name #=> String
1532
+ # resp.index_status #=> String, one of "ACTIVE", "BUILDING", "REBUILDING"
1533
+ # resp.schema #=> String
1534
+ #
1535
+ # @overload describe_index(params = {})
1536
+ # @param [Hash] params ({})
1537
+ def describe_index(params = {}, options = {})
1538
+ req = build_request(:describe_index, params)
1539
+ req.send_request(options)
1540
+ end
1541
+
1542
+ # Describes a job.
1543
+ #
1544
+ # @option params [required, String] :job_id
1545
+ # The unique identifier you assigned to this job when it was created.
1546
+ #
1547
+ # @return [Types::DescribeJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1548
+ #
1549
+ # * {Types::DescribeJobResponse#document_source #document_source} => String
1550
+ # * {Types::DescribeJobResponse#job #job} => Types::Job
1551
+ #
1552
+ # @example Request syntax with placeholder values
1553
+ #
1554
+ # resp = client.describe_job({
1555
+ # job_id: "JobId", # required
1556
+ # })
1557
+ #
1558
+ # @example Response structure
1559
+ #
1560
+ # resp.document_source #=> String
1561
+ # resp.job.job_arn #=> String
1562
+ # resp.job.job_id #=> String
1563
+ # resp.job.target_selection #=> String, one of "CONTINUOUS", "SNAPSHOT"
1564
+ # resp.job.status #=> String, one of "IN_PROGRESS", "CANCELED", "COMPLETED"
1565
+ # resp.job.comment #=> String
1566
+ # resp.job.targets #=> Array
1567
+ # resp.job.targets[0] #=> String
1568
+ # resp.job.description #=> String
1569
+ # resp.job.presigned_url_config.role_arn #=> String
1570
+ # resp.job.presigned_url_config.expires_in_sec #=> Integer
1571
+ # resp.job.job_executions_rollout_config.maximum_per_minute #=> Integer
1572
+ # resp.job.created_at #=> Time
1573
+ # resp.job.last_updated_at #=> Time
1574
+ # resp.job.completed_at #=> Time
1575
+ # resp.job.job_process_details.processing_targets #=> Array
1576
+ # resp.job.job_process_details.processing_targets[0] #=> String
1577
+ # resp.job.job_process_details.number_of_canceled_things #=> Integer
1578
+ # resp.job.job_process_details.number_of_succeeded_things #=> Integer
1579
+ # resp.job.job_process_details.number_of_failed_things #=> Integer
1580
+ # resp.job.job_process_details.number_of_rejected_things #=> Integer
1581
+ # resp.job.job_process_details.number_of_queued_things #=> Integer
1582
+ # resp.job.job_process_details.number_of_in_progress_things #=> Integer
1583
+ # resp.job.job_process_details.number_of_removed_things #=> Integer
1584
+ # resp.job.document_parameters #=> Hash
1585
+ # resp.job.document_parameters["ParameterKey"] #=> String
1586
+ #
1587
+ # @overload describe_job(params = {})
1588
+ # @param [Hash] params ({})
1589
+ def describe_job(params = {}, options = {})
1590
+ req = build_request(:describe_job, params)
1591
+ req.send_request(options)
1592
+ end
1593
+
1594
+ # Describes a job execution.
1595
+ #
1596
+ # @option params [required, String] :job_id
1597
+ # The unique identifier you assigned to this job when it was created.
1598
+ #
1599
+ # @option params [required, String] :thing_name
1600
+ # The name of the thing on which the job execution is running.
1601
+ #
1602
+ # @option params [Integer] :execution_number
1603
+ # A string (consisting of the digits "0" through "9" which is used
1604
+ # to specify a particular job execution on a particular device.
1605
+ #
1606
+ # @return [Types::DescribeJobExecutionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1607
+ #
1608
+ # * {Types::DescribeJobExecutionResponse#execution #execution} => Types::JobExecution
1609
+ #
1610
+ # @example Request syntax with placeholder values
1611
+ #
1612
+ # resp = client.describe_job_execution({
1613
+ # job_id: "JobId", # required
1614
+ # thing_name: "ThingName", # required
1615
+ # execution_number: 1,
1616
+ # })
1617
+ #
1618
+ # @example Response structure
1619
+ #
1620
+ # resp.execution.job_id #=> String
1621
+ # resp.execution.status #=> String, one of "QUEUED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "REJECTED", "REMOVED", "CANCELED"
1622
+ # resp.execution.status_details.details_map #=> Hash
1623
+ # resp.execution.status_details.details_map["DetailsKey"] #=> String
1624
+ # resp.execution.thing_arn #=> String
1625
+ # resp.execution.queued_at #=> Time
1626
+ # resp.execution.started_at #=> Time
1627
+ # resp.execution.last_updated_at #=> Time
1628
+ # resp.execution.execution_number #=> Integer
1629
+ #
1630
+ # @overload describe_job_execution(params = {})
1631
+ # @param [Hash] params ({})
1632
+ def describe_job_execution(params = {}, options = {})
1633
+ req = build_request(:describe_job_execution, params)
1634
+ req.send_request(options)
1635
+ end
1636
+
1637
+ # Describes a role alias.
1638
+ #
1639
+ # @option params [required, String] :role_alias
1640
+ # The role alias to describe.
1641
+ #
1642
+ # @return [Types::DescribeRoleAliasResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1643
+ #
1644
+ # * {Types::DescribeRoleAliasResponse#role_alias_description #role_alias_description} => Types::RoleAliasDescription
1645
+ #
1646
+ # @example Request syntax with placeholder values
1647
+ #
1648
+ # resp = client.describe_role_alias({
1649
+ # role_alias: "RoleAlias", # required
1650
+ # })
1651
+ #
1652
+ # @example Response structure
1653
+ #
1654
+ # resp.role_alias_description.role_alias #=> String
1655
+ # resp.role_alias_description.role_arn #=> String
1656
+ # resp.role_alias_description.owner #=> String
1657
+ # resp.role_alias_description.credential_duration_seconds #=> Integer
1658
+ # resp.role_alias_description.creation_date #=> Time
1659
+ # resp.role_alias_description.last_modified_date #=> Time
1660
+ #
1661
+ # @overload describe_role_alias(params = {})
1662
+ # @param [Hash] params ({})
1663
+ def describe_role_alias(params = {}, options = {})
1664
+ req = build_request(:describe_role_alias, params)
1665
+ req.send_request(options)
1666
+ end
1667
+
1668
+ # Gets information about the specified thing.
1669
+ #
1670
+ # @option params [required, String] :thing_name
1671
+ # The name of the thing.
1672
+ #
1673
+ # @return [Types::DescribeThingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1674
+ #
1675
+ # * {Types::DescribeThingResponse#default_client_id #default_client_id} => String
1676
+ # * {Types::DescribeThingResponse#thing_name #thing_name} => String
1677
+ # * {Types::DescribeThingResponse#thing_id #thing_id} => String
1678
+ # * {Types::DescribeThingResponse#thing_arn #thing_arn} => String
1679
+ # * {Types::DescribeThingResponse#thing_type_name #thing_type_name} => String
1680
+ # * {Types::DescribeThingResponse#attributes #attributes} => Hash&lt;String,String&gt;
1681
+ # * {Types::DescribeThingResponse#version #version} => Integer
1682
+ #
1683
+ # @example Request syntax with placeholder values
1684
+ #
1685
+ # resp = client.describe_thing({
1686
+ # thing_name: "ThingName", # required
1687
+ # })
1688
+ #
1689
+ # @example Response structure
1690
+ #
1691
+ # resp.default_client_id #=> String
985
1692
  # resp.thing_name #=> String
1693
+ # resp.thing_id #=> String
1694
+ # resp.thing_arn #=> String
986
1695
  # resp.thing_type_name #=> String
987
1696
  # resp.attributes #=> Hash
988
1697
  # resp.attributes["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
@@ -995,6 +1704,97 @@ module Aws::IoT
995
1704
  req.send_request(options)
996
1705
  end
997
1706
 
1707
+ # Describe a thing group.
1708
+ #
1709
+ # @option params [required, String] :thing_group_name
1710
+ # The name of the thing group.
1711
+ #
1712
+ # @return [Types::DescribeThingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1713
+ #
1714
+ # * {Types::DescribeThingGroupResponse#thing_group_name #thing_group_name} => String
1715
+ # * {Types::DescribeThingGroupResponse#thing_group_id #thing_group_id} => String
1716
+ # * {Types::DescribeThingGroupResponse#thing_group_arn #thing_group_arn} => String
1717
+ # * {Types::DescribeThingGroupResponse#version #version} => Integer
1718
+ # * {Types::DescribeThingGroupResponse#thing_group_properties #thing_group_properties} => Types::ThingGroupProperties
1719
+ # * {Types::DescribeThingGroupResponse#thing_group_metadata #thing_group_metadata} => Types::ThingGroupMetadata
1720
+ #
1721
+ # @example Request syntax with placeholder values
1722
+ #
1723
+ # resp = client.describe_thing_group({
1724
+ # thing_group_name: "ThingGroupName", # required
1725
+ # })
1726
+ #
1727
+ # @example Response structure
1728
+ #
1729
+ # resp.thing_group_name #=> String
1730
+ # resp.thing_group_id #=> String
1731
+ # resp.thing_group_arn #=> String
1732
+ # resp.version #=> Integer
1733
+ # resp.thing_group_properties.thing_group_description #=> String
1734
+ # resp.thing_group_properties.attribute_payload.attributes #=> Hash
1735
+ # resp.thing_group_properties.attribute_payload.attributes["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1736
+ # resp.thing_group_properties.attribute_payload.merge #=> Boolean
1737
+ # resp.thing_group_metadata.parent_group_name #=> String
1738
+ # resp.thing_group_metadata.root_to_parent_thing_groups #=> Array
1739
+ # resp.thing_group_metadata.root_to_parent_thing_groups[0].group_name #=> String
1740
+ # resp.thing_group_metadata.root_to_parent_thing_groups[0].group_arn #=> String
1741
+ # resp.thing_group_metadata.creation_date #=> Time
1742
+ #
1743
+ # @overload describe_thing_group(params = {})
1744
+ # @param [Hash] params ({})
1745
+ def describe_thing_group(params = {}, options = {})
1746
+ req = build_request(:describe_thing_group, params)
1747
+ req.send_request(options)
1748
+ end
1749
+
1750
+ # Describes a bulk thing provisioning task.
1751
+ #
1752
+ # @option params [required, String] :task_id
1753
+ # The task ID.
1754
+ #
1755
+ # @return [Types::DescribeThingRegistrationTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1756
+ #
1757
+ # * {Types::DescribeThingRegistrationTaskResponse#task_id #task_id} => String
1758
+ # * {Types::DescribeThingRegistrationTaskResponse#creation_date #creation_date} => Time
1759
+ # * {Types::DescribeThingRegistrationTaskResponse#last_modified_date #last_modified_date} => Time
1760
+ # * {Types::DescribeThingRegistrationTaskResponse#template_body #template_body} => String
1761
+ # * {Types::DescribeThingRegistrationTaskResponse#input_file_bucket #input_file_bucket} => String
1762
+ # * {Types::DescribeThingRegistrationTaskResponse#input_file_key #input_file_key} => String
1763
+ # * {Types::DescribeThingRegistrationTaskResponse#role_arn #role_arn} => String
1764
+ # * {Types::DescribeThingRegistrationTaskResponse#status #status} => String
1765
+ # * {Types::DescribeThingRegistrationTaskResponse#message #message} => String
1766
+ # * {Types::DescribeThingRegistrationTaskResponse#success_count #success_count} => Integer
1767
+ # * {Types::DescribeThingRegistrationTaskResponse#failure_count #failure_count} => Integer
1768
+ # * {Types::DescribeThingRegistrationTaskResponse#percentage_progress #percentage_progress} => Integer
1769
+ #
1770
+ # @example Request syntax with placeholder values
1771
+ #
1772
+ # resp = client.describe_thing_registration_task({
1773
+ # task_id: "TaskId", # required
1774
+ # })
1775
+ #
1776
+ # @example Response structure
1777
+ #
1778
+ # resp.task_id #=> String
1779
+ # resp.creation_date #=> Time
1780
+ # resp.last_modified_date #=> Time
1781
+ # resp.template_body #=> String
1782
+ # resp.input_file_bucket #=> String
1783
+ # resp.input_file_key #=> String
1784
+ # resp.role_arn #=> String
1785
+ # resp.status #=> String, one of "InProgress", "Completed", "Failed", "Cancelled", "Cancelling"
1786
+ # resp.message #=> String
1787
+ # resp.success_count #=> Integer
1788
+ # resp.failure_count #=> Integer
1789
+ # resp.percentage_progress #=> Integer
1790
+ #
1791
+ # @overload describe_thing_registration_task(params = {})
1792
+ # @param [Hash] params ({})
1793
+ def describe_thing_registration_task(params = {}, options = {})
1794
+ req = build_request(:describe_thing_registration_task, params)
1795
+ req.send_request(options)
1796
+ end
1797
+
998
1798
  # Gets information about the specified thing type.
999
1799
  #
1000
1800
  # @option params [required, String] :thing_type_name
@@ -1003,6 +1803,8 @@ module Aws::IoT
1003
1803
  # @return [Types::DescribeThingTypeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1004
1804
  #
1005
1805
  # * {Types::DescribeThingTypeResponse#thing_type_name #thing_type_name} => String
1806
+ # * {Types::DescribeThingTypeResponse#thing_type_id #thing_type_id} => String
1807
+ # * {Types::DescribeThingTypeResponse#thing_type_arn #thing_type_arn} => String
1006
1808
  # * {Types::DescribeThingTypeResponse#thing_type_properties #thing_type_properties} => Types::ThingTypeProperties
1007
1809
  # * {Types::DescribeThingTypeResponse#thing_type_metadata #thing_type_metadata} => Types::ThingTypeMetadata
1008
1810
  #
@@ -1015,6 +1817,8 @@ module Aws::IoT
1015
1817
  # @example Response structure
1016
1818
  #
1017
1819
  # resp.thing_type_name #=> String
1820
+ # resp.thing_type_id #=> String
1821
+ # resp.thing_type_arn #=> String
1018
1822
  # resp.thing_type_properties.thing_type_description #=> String
1019
1823
  # resp.thing_type_properties.searchable_attributes #=> Array
1020
1824
  # resp.thing_type_properties.searchable_attributes[0] #=> String
@@ -1029,8 +1833,34 @@ module Aws::IoT
1029
1833
  req.send_request(options)
1030
1834
  end
1031
1835
 
1836
+ # Detaches a policy from the specified target.
1837
+ #
1838
+ # @option params [required, String] :policy_name
1839
+ # The policy to detach.
1840
+ #
1841
+ # @option params [required, String] :target
1842
+ # The target from which the policy will be detached.
1843
+ #
1844
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1845
+ #
1846
+ # @example Request syntax with placeholder values
1847
+ #
1848
+ # resp = client.detach_policy({
1849
+ # policy_name: "PolicyName", # required
1850
+ # target: "PolicyTarget", # required
1851
+ # })
1852
+ #
1853
+ # @overload detach_policy(params = {})
1854
+ # @param [Hash] params ({})
1855
+ def detach_policy(params = {}, options = {})
1856
+ req = build_request(:detach_policy, params)
1857
+ req.send_request(options)
1858
+ end
1859
+
1032
1860
  # Removes the specified policy from the specified certificate.
1033
1861
  #
1862
+ # **Note:** This API is deprecated. Please use DetachPolicy instead.
1863
+ #
1034
1864
  # @option params [required, String] :policy_name
1035
1865
  # The name of the policy to detach.
1036
1866
  #
@@ -1082,7 +1912,7 @@ module Aws::IoT
1082
1912
  req.send_request(options)
1083
1913
  end
1084
1914
 
1085
- # Disables the specified rule.
1915
+ # Disables the rule.
1086
1916
  #
1087
1917
  # @option params [required, String] :rule_name
1088
1918
  # The name of the rule to disable.
@@ -1102,7 +1932,7 @@ module Aws::IoT
1102
1932
  req.send_request(options)
1103
1933
  end
1104
1934
 
1105
- # Enables the specified rule.
1935
+ # Enables the rule.
1106
1936
  #
1107
1937
  # @option params [required, String] :rule_name
1108
1938
  # The name of the topic rule to enable.
@@ -1122,6 +1952,86 @@ module Aws::IoT
1122
1952
  req.send_request(options)
1123
1953
  end
1124
1954
 
1955
+ # Gets effective policies.
1956
+ #
1957
+ # @option params [String] :principal
1958
+ # The principal.
1959
+ #
1960
+ # @option params [String] :cognito_identity_pool_id
1961
+ # The Cognito identity pool ID.
1962
+ #
1963
+ # @option params [String] :thing_name
1964
+ # The thing name.
1965
+ #
1966
+ # @return [Types::GetEffectivePoliciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1967
+ #
1968
+ # * {Types::GetEffectivePoliciesResponse#effective_policies #effective_policies} => Array&lt;Types::EffectivePolicy&gt;
1969
+ #
1970
+ # @example Request syntax with placeholder values
1971
+ #
1972
+ # resp = client.get_effective_policies({
1973
+ # principal: "Principal",
1974
+ # cognito_identity_pool_id: "CognitoIdentityPoolId",
1975
+ # thing_name: "ThingName",
1976
+ # })
1977
+ #
1978
+ # @example Response structure
1979
+ #
1980
+ # resp.effective_policies #=> Array
1981
+ # resp.effective_policies[0].policy_name #=> String
1982
+ # resp.effective_policies[0].policy_arn #=> String
1983
+ # resp.effective_policies[0].policy_document #=> String
1984
+ #
1985
+ # @overload get_effective_policies(params = {})
1986
+ # @param [Hash] params ({})
1987
+ def get_effective_policies(params = {}, options = {})
1988
+ req = build_request(:get_effective_policies, params)
1989
+ req.send_request(options)
1990
+ end
1991
+
1992
+ # Gets the search configuration.
1993
+ #
1994
+ # @return [Types::GetIndexingConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1995
+ #
1996
+ # * {Types::GetIndexingConfigurationResponse#thing_indexing_configuration #thing_indexing_configuration} => Types::ThingIndexingConfiguration
1997
+ #
1998
+ # @example Response structure
1999
+ #
2000
+ # resp.thing_indexing_configuration.thing_indexing_mode #=> String, one of "OFF", "REGISTRY", "REGISTRY_AND_SHADOW"
2001
+ #
2002
+ # @overload get_indexing_configuration(params = {})
2003
+ # @param [Hash] params ({})
2004
+ def get_indexing_configuration(params = {}, options = {})
2005
+ req = build_request(:get_indexing_configuration, params)
2006
+ req.send_request(options)
2007
+ end
2008
+
2009
+ # Gets a job document.
2010
+ #
2011
+ # @option params [required, String] :job_id
2012
+ # The unique identifier you assigned to this job when it was created.
2013
+ #
2014
+ # @return [Types::GetJobDocumentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2015
+ #
2016
+ # * {Types::GetJobDocumentResponse#document #document} => String
2017
+ #
2018
+ # @example Request syntax with placeholder values
2019
+ #
2020
+ # resp = client.get_job_document({
2021
+ # job_id: "JobId", # required
2022
+ # })
2023
+ #
2024
+ # @example Response structure
2025
+ #
2026
+ # resp.document #=> String
2027
+ #
2028
+ # @overload get_job_document(params = {})
2029
+ # @param [Hash] params ({})
2030
+ def get_job_document(params = {}, options = {})
2031
+ req = build_request(:get_job_document, params)
2032
+ req.send_request(options)
2033
+ end
2034
+
1125
2035
  # Gets the logging options.
1126
2036
  #
1127
2037
  # @return [Types::GetLoggingOptionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -1230,7 +2140,7 @@ module Aws::IoT
1230
2140
  req.send_request(options)
1231
2141
  end
1232
2142
 
1233
- # Gets information about the specified rule.
2143
+ # Gets information about the rule.
1234
2144
  #
1235
2145
  # @option params [required, String] :rule_name
1236
2146
  # The name of the rule.
@@ -1312,6 +2222,111 @@ module Aws::IoT
1312
2222
  req.send_request(options)
1313
2223
  end
1314
2224
 
2225
+ # Gets the fine grained logging options.
2226
+ #
2227
+ # @return [Types::GetV2LoggingOptionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2228
+ #
2229
+ # * {Types::GetV2LoggingOptionsResponse#role_arn #role_arn} => String
2230
+ # * {Types::GetV2LoggingOptionsResponse#default_log_level #default_log_level} => String
2231
+ # * {Types::GetV2LoggingOptionsResponse#disable_all_logs #disable_all_logs} => Boolean
2232
+ #
2233
+ # @example Response structure
2234
+ #
2235
+ # resp.role_arn #=> String
2236
+ # resp.default_log_level #=> String, one of "DEBUG", "INFO", "ERROR", "WARN", "DISABLED"
2237
+ # resp.disable_all_logs #=> Boolean
2238
+ #
2239
+ # @overload get_v2_logging_options(params = {})
2240
+ # @param [Hash] params ({})
2241
+ def get_v2_logging_options(params = {}, options = {})
2242
+ req = build_request(:get_v2_logging_options, params)
2243
+ req.send_request(options)
2244
+ end
2245
+
2246
+ # Lists the policies attached to the specified thing group.
2247
+ #
2248
+ # @option params [required, String] :target
2249
+ # The group for which the policies will be listed.
2250
+ #
2251
+ # @option params [Boolean] :recursive
2252
+ # When true, recursively list attached policies.
2253
+ #
2254
+ # @option params [String] :marker
2255
+ # The token to retrieve the next set of results.
2256
+ #
2257
+ # @option params [Integer] :page_size
2258
+ # The maximum number of results to be returned per request.
2259
+ #
2260
+ # @return [Types::ListAttachedPoliciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2261
+ #
2262
+ # * {Types::ListAttachedPoliciesResponse#policies #policies} => Array&lt;Types::Policy&gt;
2263
+ # * {Types::ListAttachedPoliciesResponse#next_marker #next_marker} => String
2264
+ #
2265
+ # @example Request syntax with placeholder values
2266
+ #
2267
+ # resp = client.list_attached_policies({
2268
+ # target: "PolicyTarget", # required
2269
+ # recursive: false,
2270
+ # marker: "Marker",
2271
+ # page_size: 1,
2272
+ # })
2273
+ #
2274
+ # @example Response structure
2275
+ #
2276
+ # resp.policies #=> Array
2277
+ # resp.policies[0].policy_name #=> String
2278
+ # resp.policies[0].policy_arn #=> String
2279
+ # resp.next_marker #=> String
2280
+ #
2281
+ # @overload list_attached_policies(params = {})
2282
+ # @param [Hash] params ({})
2283
+ def list_attached_policies(params = {}, options = {})
2284
+ req = build_request(:list_attached_policies, params)
2285
+ req.send_request(options)
2286
+ end
2287
+
2288
+ # Lists the authorizers registered in your account.
2289
+ #
2290
+ # @option params [Integer] :page_size
2291
+ # The maximum number of results to return at one time.
2292
+ #
2293
+ # @option params [String] :marker
2294
+ # A marker used to get the next set of results.
2295
+ #
2296
+ # @option params [Boolean] :ascending_order
2297
+ # Return the list of authorizers in ascending alphabetical order.
2298
+ #
2299
+ # @option params [String] :status
2300
+ # The status of the list authorizers request.
2301
+ #
2302
+ # @return [Types::ListAuthorizersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2303
+ #
2304
+ # * {Types::ListAuthorizersResponse#authorizers #authorizers} => Array&lt;Types::AuthorizerSummary&gt;
2305
+ # * {Types::ListAuthorizersResponse#next_marker #next_marker} => String
2306
+ #
2307
+ # @example Request syntax with placeholder values
2308
+ #
2309
+ # resp = client.list_authorizers({
2310
+ # page_size: 1,
2311
+ # marker: "Marker",
2312
+ # ascending_order: false,
2313
+ # status: "ACTIVE", # accepts ACTIVE, INACTIVE
2314
+ # })
2315
+ #
2316
+ # @example Response structure
2317
+ #
2318
+ # resp.authorizers #=> Array
2319
+ # resp.authorizers[0].authorizer_name #=> String
2320
+ # resp.authorizers[0].authorizer_arn #=> String
2321
+ # resp.next_marker #=> String
2322
+ #
2323
+ # @overload list_authorizers(params = {})
2324
+ # @param [Hash] params ({})
2325
+ def list_authorizers(params = {}, options = {})
2326
+ req = build_request(:list_authorizers, params)
2327
+ req.send_request(options)
2328
+ end
2329
+
1315
2330
  # Lists the CA certificates registered for your AWS account.
1316
2331
  #
1317
2332
  # The results are paginated with a default page size of 25. You can use
@@ -1445,27 +2460,218 @@ module Aws::IoT
1445
2460
  req.send_request(options)
1446
2461
  end
1447
2462
 
1448
- # Lists certificates that are being transfered but not yet accepted.
1449
- #
1450
- # @option params [Integer] :page_size
1451
- # The result page size.
2463
+ # Lists the search indices.
1452
2464
  #
1453
- # @option params [String] :marker
1454
- # The marker for the next set of results.
2465
+ # @option params [String] :next_token
2466
+ # The token used to get the next set of results, or **null** if there
2467
+ # are no additional results.
1455
2468
  #
1456
- # @option params [Boolean] :ascending_order
1457
- # Specifies the order for results. If True, the results are returned in
1458
- # ascending order, based on the creation date.
2469
+ # @option params [Integer] :max_results
2470
+ # The maximum number of results to return at one time.
1459
2471
  #
1460
- # @return [Types::ListOutgoingCertificatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2472
+ # @return [Types::ListIndicesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1461
2473
  #
1462
- # * {Types::ListOutgoingCertificatesResponse#outgoing_certificates #outgoing_certificates} => Array&lt;Types::OutgoingCertificate&gt;
1463
- # * {Types::ListOutgoingCertificatesResponse#next_marker #next_marker} => String
2474
+ # * {Types::ListIndicesResponse#index_names #index_names} => Array&lt;String&gt;
2475
+ # * {Types::ListIndicesResponse#next_token #next_token} => String
1464
2476
  #
1465
2477
  # @example Request syntax with placeholder values
1466
2478
  #
1467
- # resp = client.list_outgoing_certificates({
1468
- # page_size: 1,
2479
+ # resp = client.list_indices({
2480
+ # next_token: "NextToken",
2481
+ # max_results: 1,
2482
+ # })
2483
+ #
2484
+ # @example Response structure
2485
+ #
2486
+ # resp.index_names #=> Array
2487
+ # resp.index_names[0] #=> String
2488
+ # resp.next_token #=> String
2489
+ #
2490
+ # @overload list_indices(params = {})
2491
+ # @param [Hash] params ({})
2492
+ def list_indices(params = {}, options = {})
2493
+ req = build_request(:list_indices, params)
2494
+ req.send_request(options)
2495
+ end
2496
+
2497
+ # Lists the job executions for a job.
2498
+ #
2499
+ # @option params [required, String] :job_id
2500
+ # The unique identifier you assigned to this job when it was created.
2501
+ #
2502
+ # @option params [String] :status
2503
+ # The status of the job.
2504
+ #
2505
+ # @option params [Integer] :max_results
2506
+ # The maximum number of results to be returned per request.
2507
+ #
2508
+ # @option params [String] :next_token
2509
+ # The token to retrieve the next set of results.
2510
+ #
2511
+ # @return [Types::ListJobExecutionsForJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2512
+ #
2513
+ # * {Types::ListJobExecutionsForJobResponse#execution_summaries #execution_summaries} => Array&lt;Types::JobExecutionSummaryForJob&gt;
2514
+ # * {Types::ListJobExecutionsForJobResponse#next_token #next_token} => String
2515
+ #
2516
+ # @example Request syntax with placeholder values
2517
+ #
2518
+ # resp = client.list_job_executions_for_job({
2519
+ # job_id: "JobId", # required
2520
+ # status: "QUEUED", # accepts QUEUED, IN_PROGRESS, SUCCEEDED, FAILED, REJECTED, REMOVED, CANCELED
2521
+ # max_results: 1,
2522
+ # next_token: "NextToken",
2523
+ # })
2524
+ #
2525
+ # @example Response structure
2526
+ #
2527
+ # resp.execution_summaries #=> Array
2528
+ # resp.execution_summaries[0].thing_arn #=> String
2529
+ # resp.execution_summaries[0].job_execution_summary.status #=> String, one of "QUEUED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "REJECTED", "REMOVED", "CANCELED"
2530
+ # resp.execution_summaries[0].job_execution_summary.queued_at #=> Time
2531
+ # resp.execution_summaries[0].job_execution_summary.started_at #=> Time
2532
+ # resp.execution_summaries[0].job_execution_summary.last_updated_at #=> Time
2533
+ # resp.execution_summaries[0].job_execution_summary.execution_number #=> Integer
2534
+ # resp.next_token #=> String
2535
+ #
2536
+ # @overload list_job_executions_for_job(params = {})
2537
+ # @param [Hash] params ({})
2538
+ def list_job_executions_for_job(params = {}, options = {})
2539
+ req = build_request(:list_job_executions_for_job, params)
2540
+ req.send_request(options)
2541
+ end
2542
+
2543
+ # Lists the job executions for the specified thing.
2544
+ #
2545
+ # @option params [required, String] :thing_name
2546
+ # The thing name.
2547
+ #
2548
+ # @option params [String] :status
2549
+ # An optional filter that lets you search for jobs that have the
2550
+ # specified status.
2551
+ #
2552
+ # @option params [Integer] :max_results
2553
+ # The maximum number of results to be returned per request.
2554
+ #
2555
+ # @option params [String] :next_token
2556
+ # The token to retrieve the next set of results.
2557
+ #
2558
+ # @return [Types::ListJobExecutionsForThingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2559
+ #
2560
+ # * {Types::ListJobExecutionsForThingResponse#execution_summaries #execution_summaries} => Array&lt;Types::JobExecutionSummaryForThing&gt;
2561
+ # * {Types::ListJobExecutionsForThingResponse#next_token #next_token} => String
2562
+ #
2563
+ # @example Request syntax with placeholder values
2564
+ #
2565
+ # resp = client.list_job_executions_for_thing({
2566
+ # thing_name: "ThingName", # required
2567
+ # status: "QUEUED", # accepts QUEUED, IN_PROGRESS, SUCCEEDED, FAILED, REJECTED, REMOVED, CANCELED
2568
+ # max_results: 1,
2569
+ # next_token: "NextToken",
2570
+ # })
2571
+ #
2572
+ # @example Response structure
2573
+ #
2574
+ # resp.execution_summaries #=> Array
2575
+ # resp.execution_summaries[0].job_id #=> String
2576
+ # resp.execution_summaries[0].job_execution_summary.status #=> String, one of "QUEUED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "REJECTED", "REMOVED", "CANCELED"
2577
+ # resp.execution_summaries[0].job_execution_summary.queued_at #=> Time
2578
+ # resp.execution_summaries[0].job_execution_summary.started_at #=> Time
2579
+ # resp.execution_summaries[0].job_execution_summary.last_updated_at #=> Time
2580
+ # resp.execution_summaries[0].job_execution_summary.execution_number #=> Integer
2581
+ # resp.next_token #=> String
2582
+ #
2583
+ # @overload list_job_executions_for_thing(params = {})
2584
+ # @param [Hash] params ({})
2585
+ def list_job_executions_for_thing(params = {}, options = {})
2586
+ req = build_request(:list_job_executions_for_thing, params)
2587
+ req.send_request(options)
2588
+ end
2589
+
2590
+ # Lists jobs.
2591
+ #
2592
+ # @option params [String] :status
2593
+ # An optional filter that lets you search for jobs that have the
2594
+ # specified status.
2595
+ #
2596
+ # @option params [String] :target_selection
2597
+ # Specifies whether the job will continue to run (CONTINUOUS), or will
2598
+ # be complete after all those things specified as targets have completed
2599
+ # the job (SNAPSHOT). If continuous, the job may also be run on a thing
2600
+ # when a change is detected in a target. For example, a job will run on
2601
+ # a thing when the thing is added to a target group, even after the job
2602
+ # was completed by all things originally in the group.
2603
+ #
2604
+ # @option params [Integer] :max_results
2605
+ # The maximum number of results to return per request.
2606
+ #
2607
+ # @option params [String] :next_token
2608
+ # The token to retrieve the next set of results.
2609
+ #
2610
+ # @option params [String] :thing_group_name
2611
+ # A filter that limits the returned jobs to those for the specified
2612
+ # group.
2613
+ #
2614
+ # @option params [String] :thing_group_id
2615
+ # A filter that limits the returned jobs to those for the specified
2616
+ # group.
2617
+ #
2618
+ # @return [Types::ListJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2619
+ #
2620
+ # * {Types::ListJobsResponse#jobs #jobs} => Array&lt;Types::JobSummary&gt;
2621
+ # * {Types::ListJobsResponse#next_token #next_token} => String
2622
+ #
2623
+ # @example Request syntax with placeholder values
2624
+ #
2625
+ # resp = client.list_jobs({
2626
+ # status: "IN_PROGRESS", # accepts IN_PROGRESS, CANCELED, COMPLETED
2627
+ # target_selection: "CONTINUOUS", # accepts CONTINUOUS, SNAPSHOT
2628
+ # max_results: 1,
2629
+ # next_token: "NextToken",
2630
+ # thing_group_name: "ThingGroupName",
2631
+ # thing_group_id: "ThingGroupId",
2632
+ # })
2633
+ #
2634
+ # @example Response structure
2635
+ #
2636
+ # resp.jobs #=> Array
2637
+ # resp.jobs[0].job_arn #=> String
2638
+ # resp.jobs[0].job_id #=> String
2639
+ # resp.jobs[0].thing_group_id #=> String
2640
+ # resp.jobs[0].target_selection #=> String, one of "CONTINUOUS", "SNAPSHOT"
2641
+ # resp.jobs[0].status #=> String, one of "IN_PROGRESS", "CANCELED", "COMPLETED"
2642
+ # resp.jobs[0].created_at #=> Time
2643
+ # resp.jobs[0].last_updated_at #=> Time
2644
+ # resp.jobs[0].completed_at #=> Time
2645
+ # resp.next_token #=> String
2646
+ #
2647
+ # @overload list_jobs(params = {})
2648
+ # @param [Hash] params ({})
2649
+ def list_jobs(params = {}, options = {})
2650
+ req = build_request(:list_jobs, params)
2651
+ req.send_request(options)
2652
+ end
2653
+
2654
+ # Lists certificates that are being transferred but not yet accepted.
2655
+ #
2656
+ # @option params [Integer] :page_size
2657
+ # The result page size.
2658
+ #
2659
+ # @option params [String] :marker
2660
+ # The marker for the next set of results.
2661
+ #
2662
+ # @option params [Boolean] :ascending_order
2663
+ # Specifies the order for results. If True, the results are returned in
2664
+ # ascending order, based on the creation date.
2665
+ #
2666
+ # @return [Types::ListOutgoingCertificatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2667
+ #
2668
+ # * {Types::ListOutgoingCertificatesResponse#outgoing_certificates #outgoing_certificates} => Array&lt;Types::OutgoingCertificate&gt;
2669
+ # * {Types::ListOutgoingCertificatesResponse#next_marker #next_marker} => String
2670
+ #
2671
+ # @example Request syntax with placeholder values
2672
+ #
2673
+ # resp = client.list_outgoing_certificates({
2674
+ # page_size: 1,
1469
2675
  # marker: "Marker",
1470
2676
  # ascending_order: false,
1471
2677
  # })
@@ -1529,6 +2735,9 @@ module Aws::IoT
1529
2735
 
1530
2736
  # Lists the principals associated with the specified policy.
1531
2737
  #
2738
+ # **Note:** This API is deprecated. Please use ListTargetsForPolicy
2739
+ # instead.
2740
+ #
1532
2741
  # @option params [required, String] :policy_name
1533
2742
  # The policy name.
1534
2743
  #
@@ -1603,6 +2812,9 @@ module Aws::IoT
1603
2812
  # Cognito identity, the ID must be in [AmazonCognito Identity
1604
2813
  # format][1].
1605
2814
  #
2815
+ # **Note:** This API is deprecated. Please use ListAttachedPolicies
2816
+ # instead.
2817
+ #
1606
2818
  #
1607
2819
  #
1608
2820
  # [1]: http://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetCredentialsForIdentity.html#API_GetCredentialsForIdentity_RequestSyntax
@@ -1651,8 +2863,8 @@ module Aws::IoT
1651
2863
  # Lists the things associated with the specified principal.
1652
2864
  #
1653
2865
  # @option params [String] :next_token
1654
- # The token for the next set of results, or **null** if there are no
1655
- # additional results.
2866
+ # The token used to get the next set of results, or **null** if there
2867
+ # are no additional results.
1656
2868
  #
1657
2869
  # @option params [Integer] :max_results
1658
2870
  # The maximum number of results to return in this operation.
@@ -1686,6 +2898,168 @@ module Aws::IoT
1686
2898
  req.send_request(options)
1687
2899
  end
1688
2900
 
2901
+ # Lists the role aliases registered in your account.
2902
+ #
2903
+ # @option params [Integer] :page_size
2904
+ # The maximum number of results to return at one time.
2905
+ #
2906
+ # @option params [String] :marker
2907
+ # A marker used to get the next set of results.
2908
+ #
2909
+ # @option params [Boolean] :ascending_order
2910
+ # Return the list of role aliases in ascending alphabetical order.
2911
+ #
2912
+ # @return [Types::ListRoleAliasesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2913
+ #
2914
+ # * {Types::ListRoleAliasesResponse#role_aliases #role_aliases} => Array&lt;String&gt;
2915
+ # * {Types::ListRoleAliasesResponse#next_marker #next_marker} => String
2916
+ #
2917
+ # @example Request syntax with placeholder values
2918
+ #
2919
+ # resp = client.list_role_aliases({
2920
+ # page_size: 1,
2921
+ # marker: "Marker",
2922
+ # ascending_order: false,
2923
+ # })
2924
+ #
2925
+ # @example Response structure
2926
+ #
2927
+ # resp.role_aliases #=> Array
2928
+ # resp.role_aliases[0] #=> String
2929
+ # resp.next_marker #=> String
2930
+ #
2931
+ # @overload list_role_aliases(params = {})
2932
+ # @param [Hash] params ({})
2933
+ def list_role_aliases(params = {}, options = {})
2934
+ req = build_request(:list_role_aliases, params)
2935
+ req.send_request(options)
2936
+ end
2937
+
2938
+ # List targets for the specified policy.
2939
+ #
2940
+ # @option params [required, String] :policy_name
2941
+ # The policy name.
2942
+ #
2943
+ # @option params [String] :marker
2944
+ # A marker used to get the next set of results.
2945
+ #
2946
+ # @option params [Integer] :page_size
2947
+ # The maximum number of results to return at one time.
2948
+ #
2949
+ # @return [Types::ListTargetsForPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2950
+ #
2951
+ # * {Types::ListTargetsForPolicyResponse#targets #targets} => Array&lt;String&gt;
2952
+ # * {Types::ListTargetsForPolicyResponse#next_marker #next_marker} => String
2953
+ #
2954
+ # @example Request syntax with placeholder values
2955
+ #
2956
+ # resp = client.list_targets_for_policy({
2957
+ # policy_name: "PolicyName", # required
2958
+ # marker: "Marker",
2959
+ # page_size: 1,
2960
+ # })
2961
+ #
2962
+ # @example Response structure
2963
+ #
2964
+ # resp.targets #=> Array
2965
+ # resp.targets[0] #=> String
2966
+ # resp.next_marker #=> String
2967
+ #
2968
+ # @overload list_targets_for_policy(params = {})
2969
+ # @param [Hash] params ({})
2970
+ def list_targets_for_policy(params = {}, options = {})
2971
+ req = build_request(:list_targets_for_policy, params)
2972
+ req.send_request(options)
2973
+ end
2974
+
2975
+ # List the thing groups in your account.
2976
+ #
2977
+ # @option params [String] :next_token
2978
+ # The token used to get the next set of results, or **null** if there
2979
+ # are no additional results.
2980
+ #
2981
+ # @option params [Integer] :max_results
2982
+ # The maximum number of results to return at one time.
2983
+ #
2984
+ # @option params [String] :parent_group
2985
+ # A filter that limits the results to those with the specified parent
2986
+ # group.
2987
+ #
2988
+ # @option params [String] :name_prefix_filter
2989
+ # A filter that limits the results to those with the specified name
2990
+ # prefix.
2991
+ #
2992
+ # @option params [Boolean] :recursive
2993
+ # If true, return child groups as well.
2994
+ #
2995
+ # @return [Types::ListThingGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2996
+ #
2997
+ # * {Types::ListThingGroupsResponse#thing_groups #thing_groups} => Array&lt;Types::GroupNameAndArn&gt;
2998
+ # * {Types::ListThingGroupsResponse#next_token #next_token} => String
2999
+ #
3000
+ # @example Request syntax with placeholder values
3001
+ #
3002
+ # resp = client.list_thing_groups({
3003
+ # next_token: "NextToken",
3004
+ # max_results: 1,
3005
+ # parent_group: "ThingGroupName",
3006
+ # name_prefix_filter: "ThingGroupName",
3007
+ # recursive: false,
3008
+ # })
3009
+ #
3010
+ # @example Response structure
3011
+ #
3012
+ # resp.thing_groups #=> Array
3013
+ # resp.thing_groups[0].group_name #=> String
3014
+ # resp.thing_groups[0].group_arn #=> String
3015
+ # resp.next_token #=> String
3016
+ #
3017
+ # @overload list_thing_groups(params = {})
3018
+ # @param [Hash] params ({})
3019
+ def list_thing_groups(params = {}, options = {})
3020
+ req = build_request(:list_thing_groups, params)
3021
+ req.send_request(options)
3022
+ end
3023
+
3024
+ # List the thing groups to which the specified thing belongs.
3025
+ #
3026
+ # @option params [required, String] :thing_name
3027
+ # The thing name.
3028
+ #
3029
+ # @option params [String] :next_token
3030
+ # The token used to get the next set of results, or **null** if there
3031
+ # are no additional results.
3032
+ #
3033
+ # @option params [Integer] :max_results
3034
+ # The maximum number of results to return at one time.
3035
+ #
3036
+ # @return [Types::ListThingGroupsForThingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3037
+ #
3038
+ # * {Types::ListThingGroupsForThingResponse#thing_groups #thing_groups} => Array&lt;Types::GroupNameAndArn&gt;
3039
+ # * {Types::ListThingGroupsForThingResponse#next_token #next_token} => String
3040
+ #
3041
+ # @example Request syntax with placeholder values
3042
+ #
3043
+ # resp = client.list_thing_groups_for_thing({
3044
+ # thing_name: "ThingName", # required
3045
+ # next_token: "NextToken",
3046
+ # max_results: 1,
3047
+ # })
3048
+ #
3049
+ # @example Response structure
3050
+ #
3051
+ # resp.thing_groups #=> Array
3052
+ # resp.thing_groups[0].group_name #=> String
3053
+ # resp.thing_groups[0].group_arn #=> String
3054
+ # resp.next_token #=> String
3055
+ #
3056
+ # @overload list_thing_groups_for_thing(params = {})
3057
+ # @param [Hash] params ({})
3058
+ def list_thing_groups_for_thing(params = {}, options = {})
3059
+ req = build_request(:list_thing_groups_for_thing, params)
3060
+ req.send_request(options)
3061
+ end
3062
+
1689
3063
  # Lists the principals associated with the specified thing.
1690
3064
  #
1691
3065
  # @option params [required, String] :thing_name
@@ -1713,6 +3087,87 @@ module Aws::IoT
1713
3087
  req.send_request(options)
1714
3088
  end
1715
3089
 
3090
+ # Information about the thing registration tasks.
3091
+ #
3092
+ # @option params [required, String] :task_id
3093
+ # The id of the task.
3094
+ #
3095
+ # @option params [required, String] :report_type
3096
+ # The type of task report.
3097
+ #
3098
+ # @option params [String] :next_token
3099
+ # The token to retrieve the next set of results.
3100
+ #
3101
+ # @option params [Integer] :max_results
3102
+ # The maximum number of results to return per request.
3103
+ #
3104
+ # @return [Types::ListThingRegistrationTaskReportsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3105
+ #
3106
+ # * {Types::ListThingRegistrationTaskReportsResponse#resource_links #resource_links} => Array&lt;String&gt;
3107
+ # * {Types::ListThingRegistrationTaskReportsResponse#report_type #report_type} => String
3108
+ # * {Types::ListThingRegistrationTaskReportsResponse#next_token #next_token} => String
3109
+ #
3110
+ # @example Request syntax with placeholder values
3111
+ #
3112
+ # resp = client.list_thing_registration_task_reports({
3113
+ # task_id: "TaskId", # required
3114
+ # report_type: "ERRORS", # required, accepts ERRORS, RESULTS
3115
+ # next_token: "NextToken",
3116
+ # max_results: 1,
3117
+ # })
3118
+ #
3119
+ # @example Response structure
3120
+ #
3121
+ # resp.resource_links #=> Array
3122
+ # resp.resource_links[0] #=> String
3123
+ # resp.report_type #=> String, one of "ERRORS", "RESULTS"
3124
+ # resp.next_token #=> String
3125
+ #
3126
+ # @overload list_thing_registration_task_reports(params = {})
3127
+ # @param [Hash] params ({})
3128
+ def list_thing_registration_task_reports(params = {}, options = {})
3129
+ req = build_request(:list_thing_registration_task_reports, params)
3130
+ req.send_request(options)
3131
+ end
3132
+
3133
+ # List bulk thing provisioning tasks.
3134
+ #
3135
+ # @option params [String] :next_token
3136
+ # The token used to get the next set of results, or **null** if there
3137
+ # are no additional results.
3138
+ #
3139
+ # @option params [Integer] :max_results
3140
+ # The maximum number of results to return at one time.
3141
+ #
3142
+ # @option params [String] :status
3143
+ # The status of the bulk thing provisioning task.
3144
+ #
3145
+ # @return [Types::ListThingRegistrationTasksResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3146
+ #
3147
+ # * {Types::ListThingRegistrationTasksResponse#task_ids #task_ids} => Array&lt;String&gt;
3148
+ # * {Types::ListThingRegistrationTasksResponse#next_token #next_token} => String
3149
+ #
3150
+ # @example Request syntax with placeholder values
3151
+ #
3152
+ # resp = client.list_thing_registration_tasks({
3153
+ # next_token: "NextToken",
3154
+ # max_results: 1,
3155
+ # status: "InProgress", # accepts InProgress, Completed, Failed, Cancelled, Cancelling
3156
+ # })
3157
+ #
3158
+ # @example Response structure
3159
+ #
3160
+ # resp.task_ids #=> Array
3161
+ # resp.task_ids[0] #=> String
3162
+ # resp.next_token #=> String
3163
+ #
3164
+ # @overload list_thing_registration_tasks(params = {})
3165
+ # @param [Hash] params ({})
3166
+ def list_thing_registration_tasks(params = {}, options = {})
3167
+ req = build_request(:list_thing_registration_tasks, params)
3168
+ req.send_request(options)
3169
+ end
3170
+
1716
3171
  # Lists the existing thing types.
1717
3172
  #
1718
3173
  # @option params [String] :next_token
@@ -1742,6 +3197,7 @@ module Aws::IoT
1742
3197
  #
1743
3198
  # resp.thing_types #=> Array
1744
3199
  # resp.thing_types[0].thing_type_name #=> String
3200
+ # resp.thing_types[0].thing_type_arn #=> String
1745
3201
  # resp.thing_types[0].thing_type_properties.thing_type_description #=> String
1746
3202
  # resp.thing_types[0].thing_type_properties.searchable_attributes #=> Array
1747
3203
  # resp.thing_types[0].thing_type_properties.searchable_attributes[0] #=> String
@@ -1764,8 +3220,8 @@ module Aws::IoT
1764
3220
  # **Red**.
1765
3221
  #
1766
3222
  # @option params [String] :next_token
1767
- # The token for the next set of results, or **null** if there are no
1768
- # additional results.
3223
+ # The token used to get the next set of results, or **null** if there
3224
+ # are no additional results.
1769
3225
  #
1770
3226
  # @option params [Integer] :max_results
1771
3227
  # The maximum number of results to return in this operation.
@@ -1799,6 +3255,7 @@ module Aws::IoT
1799
3255
  # resp.things #=> Array
1800
3256
  # resp.things[0].thing_name #=> String
1801
3257
  # resp.things[0].thing_type_name #=> String
3258
+ # resp.things[0].thing_arn #=> String
1802
3259
  # resp.things[0].attributes #=> Hash
1803
3260
  # resp.things[0].attributes["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1804
3261
  # resp.things[0].version #=> Integer
@@ -1811,6 +3268,49 @@ module Aws::IoT
1811
3268
  req.send_request(options)
1812
3269
  end
1813
3270
 
3271
+ # Lists the things in the specified group.
3272
+ #
3273
+ # @option params [required, String] :thing_group_name
3274
+ # The thing group name.
3275
+ #
3276
+ # @option params [Boolean] :recursive
3277
+ # When true, list things in this thing group and in all child groups as
3278
+ # well.
3279
+ #
3280
+ # @option params [String] :next_token
3281
+ # The token used to get the next set of results, or **null** if there
3282
+ # are no additional results.
3283
+ #
3284
+ # @option params [Integer] :max_results
3285
+ # The maximum number of results to return at one time.
3286
+ #
3287
+ # @return [Types::ListThingsInThingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3288
+ #
3289
+ # * {Types::ListThingsInThingGroupResponse#things #things} => Array&lt;String&gt;
3290
+ # * {Types::ListThingsInThingGroupResponse#next_token #next_token} => String
3291
+ #
3292
+ # @example Request syntax with placeholder values
3293
+ #
3294
+ # resp = client.list_things_in_thing_group({
3295
+ # thing_group_name: "ThingGroupName", # required
3296
+ # recursive: false,
3297
+ # next_token: "NextToken",
3298
+ # max_results: 1,
3299
+ # })
3300
+ #
3301
+ # @example Response structure
3302
+ #
3303
+ # resp.things #=> Array
3304
+ # resp.things[0] #=> String
3305
+ # resp.next_token #=> String
3306
+ #
3307
+ # @overload list_things_in_thing_group(params = {})
3308
+ # @param [Hash] params ({})
3309
+ def list_things_in_thing_group(params = {}, options = {})
3310
+ req = build_request(:list_things_in_thing_group, params)
3311
+ req.send_request(options)
3312
+ end
3313
+
1814
3314
  # Lists the rules for the specific topic.
1815
3315
  #
1816
3316
  # @option params [String] :topic
@@ -1856,6 +3356,47 @@ module Aws::IoT
1856
3356
  req.send_request(options)
1857
3357
  end
1858
3358
 
3359
+ # Lists logging levels.
3360
+ #
3361
+ # @option params [String] :target_type
3362
+ # The type of resource for which you are configuring logging. Must be
3363
+ # `THING_Group`.
3364
+ #
3365
+ # @option params [String] :next_token
3366
+ # The token used to get the next set of results, or **null** if there
3367
+ # are no additional results.
3368
+ #
3369
+ # @option params [Integer] :max_results
3370
+ # The maximum number of results to return at one time.
3371
+ #
3372
+ # @return [Types::ListV2LoggingLevelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3373
+ #
3374
+ # * {Types::ListV2LoggingLevelsResponse#log_target_configurations #log_target_configurations} => Array&lt;Types::LogTargetConfiguration&gt;
3375
+ # * {Types::ListV2LoggingLevelsResponse#next_token #next_token} => String
3376
+ #
3377
+ # @example Request syntax with placeholder values
3378
+ #
3379
+ # resp = client.list_v2_logging_levels({
3380
+ # target_type: "DEFAULT", # accepts DEFAULT, THING_GROUP
3381
+ # next_token: "NextToken",
3382
+ # max_results: 1,
3383
+ # })
3384
+ #
3385
+ # @example Response structure
3386
+ #
3387
+ # resp.log_target_configurations #=> Array
3388
+ # resp.log_target_configurations[0].log_target.target_type #=> String, one of "DEFAULT", "THING_GROUP"
3389
+ # resp.log_target_configurations[0].log_target.target_name #=> String
3390
+ # resp.log_target_configurations[0].log_level #=> String, one of "DEBUG", "INFO", "ERROR", "WARN", "DISABLED"
3391
+ # resp.next_token #=> String
3392
+ #
3393
+ # @overload list_v2_logging_levels(params = {})
3394
+ # @param [Hash] params ({})
3395
+ def list_v2_logging_levels(params = {}, options = {})
3396
+ req = build_request(:list_v2_logging_levels, params)
3397
+ req.send_request(options)
3398
+ end
3399
+
1859
3400
  # Registers a CA certificate with AWS IoT. This CA certificate can then
1860
3401
  # be used to sign device certificates, which can be then registered with
1861
3402
  # AWS IoT. You can register up to 10 CA certificates per AWS account
@@ -1878,6 +3419,9 @@ module Aws::IoT
1878
3419
  # Allows this CA certificate to be used for auto registration of device
1879
3420
  # certificates.
1880
3421
  #
3422
+ # @option params [Types::RegistrationConfig] :registration_config
3423
+ # Information about the registration configuration.
3424
+ #
1881
3425
  # @return [Types::RegisterCACertificateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1882
3426
  #
1883
3427
  # * {Types::RegisterCACertificateResponse#certificate_arn #certificate_arn} => String
@@ -1890,6 +3434,10 @@ module Aws::IoT
1890
3434
  # verification_certificate: "CertificatePem", # required
1891
3435
  # set_as_active: false,
1892
3436
  # allow_auto_registration: false,
3437
+ # registration_config: {
3438
+ # template_body: "TemplateBody",
3439
+ # role_arn: "RoleArn",
3440
+ # },
1893
3441
  # })
1894
3442
  #
1895
3443
  # @example Response structure
@@ -1948,6 +3496,41 @@ module Aws::IoT
1948
3496
  req.send_request(options)
1949
3497
  end
1950
3498
 
3499
+ # Provisions a thing.
3500
+ #
3501
+ # @option params [required, String] :template_body
3502
+ # The provisioning template.
3503
+ #
3504
+ # @option params [Hash<String,String>] :parameters
3505
+ # The parameters for provisioning a thing.
3506
+ #
3507
+ # @return [Types::RegisterThingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3508
+ #
3509
+ # * {Types::RegisterThingResponse#certificate_pem #certificate_pem} => String
3510
+ # * {Types::RegisterThingResponse#resource_arns #resource_arns} => Hash&lt;String,String&gt;
3511
+ #
3512
+ # @example Request syntax with placeholder values
3513
+ #
3514
+ # resp = client.register_thing({
3515
+ # template_body: "TemplateBody", # required
3516
+ # parameters: {
3517
+ # "Parameter" => "Value",
3518
+ # },
3519
+ # })
3520
+ #
3521
+ # @example Response structure
3522
+ #
3523
+ # resp.certificate_pem #=> String
3524
+ # resp.resource_arns #=> Hash
3525
+ # resp.resource_arns["ResourceLogicalId"] #=> String
3526
+ #
3527
+ # @overload register_thing(params = {})
3528
+ # @param [Hash] params ({})
3529
+ def register_thing(params = {}, options = {})
3530
+ req = build_request(:register_thing, params)
3531
+ req.send_request(options)
3532
+ end
3533
+
1951
3534
  # Rejects a pending certificate transfer. After AWS IoT rejects a
1952
3535
  # certificate transfer, the certificate status changes from
1953
3536
  # **PENDING\_TRANSFER** to **INACTIVE**.
@@ -1959,32 +3542,64 @@ module Aws::IoT
1959
3542
  # it is called, the certificate will be returned to the source's
1960
3543
  # account in the INACTIVE state.
1961
3544
  #
1962
- # @option params [required, String] :certificate_id
1963
- # The ID of the certificate.
3545
+ # @option params [required, String] :certificate_id
3546
+ # The ID of the certificate.
3547
+ #
3548
+ # @option params [String] :reject_reason
3549
+ # The reason the certificate transfer was rejected.
3550
+ #
3551
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3552
+ #
3553
+ # @example Request syntax with placeholder values
3554
+ #
3555
+ # resp = client.reject_certificate_transfer({
3556
+ # certificate_id: "CertificateId", # required
3557
+ # reject_reason: "Message",
3558
+ # })
3559
+ #
3560
+ # @overload reject_certificate_transfer(params = {})
3561
+ # @param [Hash] params ({})
3562
+ def reject_certificate_transfer(params = {}, options = {})
3563
+ req = build_request(:reject_certificate_transfer, params)
3564
+ req.send_request(options)
3565
+ end
3566
+
3567
+ # Remove the specified thing from the specified group.
3568
+ #
3569
+ # @option params [String] :thing_group_name
3570
+ # The group name.
3571
+ #
3572
+ # @option params [String] :thing_group_arn
3573
+ # The group ARN.
3574
+ #
3575
+ # @option params [String] :thing_name
3576
+ # The name of the thing to remove from the group.
1964
3577
  #
1965
- # @option params [String] :reject_reason
1966
- # The reason the certificate transfer was rejected.
3578
+ # @option params [String] :thing_arn
3579
+ # The ARN of the thing to remove from the group.
1967
3580
  #
1968
3581
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1969
3582
  #
1970
3583
  # @example Request syntax with placeholder values
1971
3584
  #
1972
- # resp = client.reject_certificate_transfer({
1973
- # certificate_id: "CertificateId", # required
1974
- # reject_reason: "Message",
3585
+ # resp = client.remove_thing_from_thing_group({
3586
+ # thing_group_name: "ThingGroupName",
3587
+ # thing_group_arn: "ThingGroupArn",
3588
+ # thing_name: "ThingName",
3589
+ # thing_arn: "ThingArn",
1975
3590
  # })
1976
3591
  #
1977
- # @overload reject_certificate_transfer(params = {})
3592
+ # @overload remove_thing_from_thing_group(params = {})
1978
3593
  # @param [Hash] params ({})
1979
- def reject_certificate_transfer(params = {}, options = {})
1980
- req = build_request(:reject_certificate_transfer, params)
3594
+ def remove_thing_from_thing_group(params = {}, options = {})
3595
+ req = build_request(:remove_thing_from_thing_group, params)
1981
3596
  req.send_request(options)
1982
3597
  end
1983
3598
 
1984
- # Replaces the specified rule. You must specify all parameters for the
1985
- # new rule. Creating rules is an administrator-level action. Any user
1986
- # who has permission to create rules will be able to access data
1987
- # processed by the rule.
3599
+ # Replaces the rule. You must specify all parameters for the new rule.
3600
+ # Creating rules is an administrator-level action. Any user who has
3601
+ # permission to create rules will be able to access data processed by
3602
+ # the rule.
1988
3603
  #
1989
3604
  # @option params [required, String] :rule_name
1990
3605
  # The name of the rule.
@@ -2093,6 +3708,88 @@ module Aws::IoT
2093
3708
  req.send_request(options)
2094
3709
  end
2095
3710
 
3711
+ # The query search index.
3712
+ #
3713
+ # @option params [String] :index_name
3714
+ # The search index name.
3715
+ #
3716
+ # @option params [required, String] :query_string
3717
+ # The search query string.
3718
+ #
3719
+ # @option params [String] :next_token
3720
+ # The token used to get the next set of results, or **null** if there
3721
+ # are no additional results.
3722
+ #
3723
+ # @option params [Integer] :max_results
3724
+ # The maximum number of results to return at one time.
3725
+ #
3726
+ # @option params [String] :query_version
3727
+ # The query version.
3728
+ #
3729
+ # @return [Types::SearchIndexResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3730
+ #
3731
+ # * {Types::SearchIndexResponse#next_token #next_token} => String
3732
+ # * {Types::SearchIndexResponse#things #things} => Array&lt;Types::ThingDocument&gt;
3733
+ #
3734
+ # @example Request syntax with placeholder values
3735
+ #
3736
+ # resp = client.search_index({
3737
+ # index_name: "IndexName",
3738
+ # query_string: "QueryString", # required
3739
+ # next_token: "NextToken",
3740
+ # max_results: 1,
3741
+ # query_version: "QueryVersion",
3742
+ # })
3743
+ #
3744
+ # @example Response structure
3745
+ #
3746
+ # resp.next_token #=> String
3747
+ # resp.things #=> Array
3748
+ # resp.things[0].thing_name #=> String
3749
+ # resp.things[0].thing_id #=> String
3750
+ # resp.things[0].thing_type_name #=> String
3751
+ # resp.things[0].thing_group_names #=> Array
3752
+ # resp.things[0].thing_group_names[0] #=> String
3753
+ # resp.things[0].attributes #=> Hash
3754
+ # resp.things[0].attributes["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
3755
+ # resp.things[0].shadow #=> String
3756
+ #
3757
+ # @overload search_index(params = {})
3758
+ # @param [Hash] params ({})
3759
+ def search_index(params = {}, options = {})
3760
+ req = build_request(:search_index, params)
3761
+ req.send_request(options)
3762
+ end
3763
+
3764
+ # Sets the default authorizer. This will be used if a websocket
3765
+ # connection is made without specifying an authorizer.
3766
+ #
3767
+ # @option params [required, String] :authorizer_name
3768
+ # The authorizer name.
3769
+ #
3770
+ # @return [Types::SetDefaultAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3771
+ #
3772
+ # * {Types::SetDefaultAuthorizerResponse#authorizer_name #authorizer_name} => String
3773
+ # * {Types::SetDefaultAuthorizerResponse#authorizer_arn #authorizer_arn} => String
3774
+ #
3775
+ # @example Request syntax with placeholder values
3776
+ #
3777
+ # resp = client.set_default_authorizer({
3778
+ # authorizer_name: "AuthorizerName", # required
3779
+ # })
3780
+ #
3781
+ # @example Response structure
3782
+ #
3783
+ # resp.authorizer_name #=> String
3784
+ # resp.authorizer_arn #=> String
3785
+ #
3786
+ # @overload set_default_authorizer(params = {})
3787
+ # @param [Hash] params ({})
3788
+ def set_default_authorizer(params = {}, options = {})
3789
+ req = build_request(:set_default_authorizer, params)
3790
+ req.send_request(options)
3791
+ end
3792
+
2096
3793
  # Sets the specified version of the specified policy as the policy's
2097
3794
  # default (operative) version. This action affects all certificates to
2098
3795
  # which the policy is attached. To list the principals the policy is
@@ -2143,6 +3840,234 @@ module Aws::IoT
2143
3840
  req.send_request(options)
2144
3841
  end
2145
3842
 
3843
+ # Sets the logging level.
3844
+ #
3845
+ # @option params [required, Types::LogTarget] :log_target
3846
+ # The log target.
3847
+ #
3848
+ # @option params [required, String] :log_level
3849
+ # The log level.
3850
+ #
3851
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3852
+ #
3853
+ # @example Request syntax with placeholder values
3854
+ #
3855
+ # resp = client.set_v2_logging_level({
3856
+ # log_target: { # required
3857
+ # target_type: "DEFAULT", # required, accepts DEFAULT, THING_GROUP
3858
+ # target_name: "LogTargetName",
3859
+ # },
3860
+ # log_level: "DEBUG", # required, accepts DEBUG, INFO, ERROR, WARN, DISABLED
3861
+ # })
3862
+ #
3863
+ # @overload set_v2_logging_level(params = {})
3864
+ # @param [Hash] params ({})
3865
+ def set_v2_logging_level(params = {}, options = {})
3866
+ req = build_request(:set_v2_logging_level, params)
3867
+ req.send_request(options)
3868
+ end
3869
+
3870
+ # Sets the logging options for the V2 logging service.
3871
+ #
3872
+ # @option params [String] :role_arn
3873
+ # The role ARN that allows IoT to write to Cloudwatch logs.
3874
+ #
3875
+ # @option params [String] :default_log_level
3876
+ # The default logging level.
3877
+ #
3878
+ # @option params [Boolean] :disable_all_logs
3879
+ # Set to true to disable all logs, otherwise set to false.
3880
+ #
3881
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3882
+ #
3883
+ # @example Request syntax with placeholder values
3884
+ #
3885
+ # resp = client.set_v2_logging_options({
3886
+ # role_arn: "AwsArn",
3887
+ # default_log_level: "DEBUG", # accepts DEBUG, INFO, ERROR, WARN, DISABLED
3888
+ # disable_all_logs: false,
3889
+ # })
3890
+ #
3891
+ # @overload set_v2_logging_options(params = {})
3892
+ # @param [Hash] params ({})
3893
+ def set_v2_logging_options(params = {}, options = {})
3894
+ req = build_request(:set_v2_logging_options, params)
3895
+ req.send_request(options)
3896
+ end
3897
+
3898
+ # Creates a bulk thing provisioning task.
3899
+ #
3900
+ # @option params [required, String] :template_body
3901
+ # The provisioning template.
3902
+ #
3903
+ # @option params [required, String] :input_file_bucket
3904
+ # The S3 bucket that contains the input file.
3905
+ #
3906
+ # @option params [required, String] :input_file_key
3907
+ # The name of input file within the S3 bucket. This file contains a
3908
+ # newline delimited JSON file. Each line contains the parameter values
3909
+ # to provision one device (thing).
3910
+ #
3911
+ # @option params [required, String] :role_arn
3912
+ # The IAM role ARN that grants permission the input file.
3913
+ #
3914
+ # @return [Types::StartThingRegistrationTaskResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3915
+ #
3916
+ # * {Types::StartThingRegistrationTaskResponse#task_id #task_id} => String
3917
+ #
3918
+ # @example Request syntax with placeholder values
3919
+ #
3920
+ # resp = client.start_thing_registration_task({
3921
+ # template_body: "TemplateBody", # required
3922
+ # input_file_bucket: "RegistryS3BucketName", # required
3923
+ # input_file_key: "RegistryS3KeyName", # required
3924
+ # role_arn: "RoleArn", # required
3925
+ # })
3926
+ #
3927
+ # @example Response structure
3928
+ #
3929
+ # resp.task_id #=> String
3930
+ #
3931
+ # @overload start_thing_registration_task(params = {})
3932
+ # @param [Hash] params ({})
3933
+ def start_thing_registration_task(params = {}, options = {})
3934
+ req = build_request(:start_thing_registration_task, params)
3935
+ req.send_request(options)
3936
+ end
3937
+
3938
+ # Cancels a bulk thing provisioning task.
3939
+ #
3940
+ # @option params [required, String] :task_id
3941
+ # The bulk thing provisioning task ID.
3942
+ #
3943
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3944
+ #
3945
+ # @example Request syntax with placeholder values
3946
+ #
3947
+ # resp = client.stop_thing_registration_task({
3948
+ # task_id: "TaskId", # required
3949
+ # })
3950
+ #
3951
+ # @overload stop_thing_registration_task(params = {})
3952
+ # @param [Hash] params ({})
3953
+ def stop_thing_registration_task(params = {}, options = {})
3954
+ req = build_request(:stop_thing_registration_task, params)
3955
+ req.send_request(options)
3956
+ end
3957
+
3958
+ # Test custom authorization.
3959
+ #
3960
+ # @option params [String] :principal
3961
+ # The principal.
3962
+ #
3963
+ # @option params [String] :cognito_identity_pool_id
3964
+ # The Cognito identity pool ID.
3965
+ #
3966
+ # @option params [required, Array<Types::AuthInfo>] :auth_infos
3967
+ # A list of authorization info objects. Simulating authorization will
3968
+ # create a response for each `authInfo` object in the list.
3969
+ #
3970
+ # @option params [String] :client_id
3971
+ # The MQTT client ID.
3972
+ #
3973
+ # @option params [Array<String>] :policy_names_to_add
3974
+ # When testing custom authorization, the policies specified here are
3975
+ # treated as if they are attached to the principal being authorized.
3976
+ #
3977
+ # @option params [Array<String>] :policy_names_to_skip
3978
+ # When testing custom authorization, the policies specified here are
3979
+ # treated as if they are not attached to the principal being authorized.
3980
+ #
3981
+ # @return [Types::TestAuthorizationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3982
+ #
3983
+ # * {Types::TestAuthorizationResponse#auth_results #auth_results} => Array&lt;Types::AuthResult&gt;
3984
+ #
3985
+ # @example Request syntax with placeholder values
3986
+ #
3987
+ # resp = client.test_authorization({
3988
+ # principal: "Principal",
3989
+ # cognito_identity_pool_id: "CognitoIdentityPoolId",
3990
+ # auth_infos: [ # required
3991
+ # {
3992
+ # action_type: "PUBLISH", # accepts PUBLISH, SUBSCRIBE, RECEIVE, CONNECT
3993
+ # resources: ["Resource"],
3994
+ # },
3995
+ # ],
3996
+ # client_id: "ClientId",
3997
+ # policy_names_to_add: ["PolicyName"],
3998
+ # policy_names_to_skip: ["PolicyName"],
3999
+ # })
4000
+ #
4001
+ # @example Response structure
4002
+ #
4003
+ # resp.auth_results #=> Array
4004
+ # resp.auth_results[0].auth_info.action_type #=> String, one of "PUBLISH", "SUBSCRIBE", "RECEIVE", "CONNECT"
4005
+ # resp.auth_results[0].auth_info.resources #=> Array
4006
+ # resp.auth_results[0].auth_info.resources[0] #=> String
4007
+ # resp.auth_results[0].allowed.policies #=> Array
4008
+ # resp.auth_results[0].allowed.policies[0].policy_name #=> String
4009
+ # resp.auth_results[0].allowed.policies[0].policy_arn #=> String
4010
+ # resp.auth_results[0].denied.implicit_deny.policies #=> Array
4011
+ # resp.auth_results[0].denied.implicit_deny.policies[0].policy_name #=> String
4012
+ # resp.auth_results[0].denied.implicit_deny.policies[0].policy_arn #=> String
4013
+ # resp.auth_results[0].denied.explicit_deny.policies #=> Array
4014
+ # resp.auth_results[0].denied.explicit_deny.policies[0].policy_name #=> String
4015
+ # resp.auth_results[0].denied.explicit_deny.policies[0].policy_arn #=> String
4016
+ # resp.auth_results[0].auth_decision #=> String, one of "ALLOWED", "EXPLICIT_DENY", "IMPLICIT_DENY"
4017
+ # resp.auth_results[0].missing_context_values #=> Array
4018
+ # resp.auth_results[0].missing_context_values[0] #=> String
4019
+ #
4020
+ # @overload test_authorization(params = {})
4021
+ # @param [Hash] params ({})
4022
+ def test_authorization(params = {}, options = {})
4023
+ req = build_request(:test_authorization, params)
4024
+ req.send_request(options)
4025
+ end
4026
+
4027
+ # Invoke the specified custom authorizer for testing purposes.
4028
+ #
4029
+ # @option params [required, String] :authorizer_name
4030
+ # The custom authorizer name.
4031
+ #
4032
+ # @option params [required, String] :token
4033
+ # The token returned by your custom authentication service.
4034
+ #
4035
+ # @option params [required, String] :token_signature
4036
+ # The signature made with the token and your custom authentication
4037
+ # service's private key.
4038
+ #
4039
+ # @return [Types::TestInvokeAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4040
+ #
4041
+ # * {Types::TestInvokeAuthorizerResponse#is_authenticated #is_authenticated} => Boolean
4042
+ # * {Types::TestInvokeAuthorizerResponse#principal_id #principal_id} => String
4043
+ # * {Types::TestInvokeAuthorizerResponse#policy_documents #policy_documents} => Array&lt;String&gt;
4044
+ # * {Types::TestInvokeAuthorizerResponse#refresh_after_in_seconds #refresh_after_in_seconds} => Integer
4045
+ # * {Types::TestInvokeAuthorizerResponse#disconnect_after_in_seconds #disconnect_after_in_seconds} => Integer
4046
+ #
4047
+ # @example Request syntax with placeholder values
4048
+ #
4049
+ # resp = client.test_invoke_authorizer({
4050
+ # authorizer_name: "AuthorizerName", # required
4051
+ # token: "Token", # required
4052
+ # token_signature: "TokenSignature", # required
4053
+ # })
4054
+ #
4055
+ # @example Response structure
4056
+ #
4057
+ # resp.is_authenticated #=> Boolean
4058
+ # resp.principal_id #=> String
4059
+ # resp.policy_documents #=> Array
4060
+ # resp.policy_documents[0] #=> String
4061
+ # resp.refresh_after_in_seconds #=> Integer
4062
+ # resp.disconnect_after_in_seconds #=> Integer
4063
+ #
4064
+ # @overload test_invoke_authorizer(params = {})
4065
+ # @param [Hash] params ({})
4066
+ def test_invoke_authorizer(params = {}, options = {})
4067
+ req = build_request(:test_invoke_authorizer, params)
4068
+ req.send_request(options)
4069
+ end
4070
+
2146
4071
  # Transfers the specified certificate to the specified AWS account.
2147
4072
  #
2148
4073
  # You can cancel the transfer until it is acknowledged by the recipient.
@@ -2188,6 +4113,52 @@ module Aws::IoT
2188
4113
  req.send_request(options)
2189
4114
  end
2190
4115
 
4116
+ # Updates an authorizer.
4117
+ #
4118
+ # @option params [required, String] :authorizer_name
4119
+ # The authorizer name.
4120
+ #
4121
+ # @option params [String] :authorizer_function_arn
4122
+ # The ARN of the authorizer's Lambda function.
4123
+ #
4124
+ # @option params [String] :token_key_name
4125
+ # The key used to extract the token from the HTTP headers.
4126
+ #
4127
+ # @option params [Hash<String,String>] :token_signing_public_keys
4128
+ # The public keys used to verify the token signature.
4129
+ #
4130
+ # @option params [String] :status
4131
+ # The status of the update authorizer request.
4132
+ #
4133
+ # @return [Types::UpdateAuthorizerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4134
+ #
4135
+ # * {Types::UpdateAuthorizerResponse#authorizer_name #authorizer_name} => String
4136
+ # * {Types::UpdateAuthorizerResponse#authorizer_arn #authorizer_arn} => String
4137
+ #
4138
+ # @example Request syntax with placeholder values
4139
+ #
4140
+ # resp = client.update_authorizer({
4141
+ # authorizer_name: "AuthorizerName", # required
4142
+ # authorizer_function_arn: "AuthorizerFunctionArn",
4143
+ # token_key_name: "TokenKeyName",
4144
+ # token_signing_public_keys: {
4145
+ # "KeyName" => "KeyValue",
4146
+ # },
4147
+ # status: "ACTIVE", # accepts ACTIVE, INACTIVE
4148
+ # })
4149
+ #
4150
+ # @example Response structure
4151
+ #
4152
+ # resp.authorizer_name #=> String
4153
+ # resp.authorizer_arn #=> String
4154
+ #
4155
+ # @overload update_authorizer(params = {})
4156
+ # @param [Hash] params ({})
4157
+ def update_authorizer(params = {}, options = {})
4158
+ req = build_request(:update_authorizer, params)
4159
+ req.send_request(options)
4160
+ end
4161
+
2191
4162
  # Updates a registered CA certificate.
2192
4163
  #
2193
4164
  # @option params [required, String] :certificate_id
@@ -2203,6 +4174,12 @@ module Aws::IoT
2203
4174
  # The new value for the auto registration status. Valid values are:
2204
4175
  # "ENABLE" or "DISABLE".
2205
4176
  #
4177
+ # @option params [Types::RegistrationConfig] :registration_config
4178
+ # Information about the registration configuration.
4179
+ #
4180
+ # @option params [Boolean] :remove_auto_registration
4181
+ # If true, remove auto registration.
4182
+ #
2206
4183
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2207
4184
  #
2208
4185
  # @example Request syntax with placeholder values
@@ -2211,6 +4188,11 @@ module Aws::IoT
2211
4188
  # certificate_id: "CertificateId", # required
2212
4189
  # new_status: "ACTIVE", # accepts ACTIVE, INACTIVE
2213
4190
  # new_auto_registration_status: "ENABLE", # accepts ENABLE, DISABLE
4191
+ # registration_config: {
4192
+ # template_body: "TemplateBody",
4193
+ # role_arn: "RoleArn",
4194
+ # },
4195
+ # remove_auto_registration: false,
2214
4196
  # })
2215
4197
  #
2216
4198
  # @overload update_ca_certificate(params = {})
@@ -2259,6 +4241,88 @@ module Aws::IoT
2259
4241
  req.send_request(options)
2260
4242
  end
2261
4243
 
4244
+ # Updates the event configurations.
4245
+ #
4246
+ # @option params [Hash<String,Types::Configuration>] :event_configurations
4247
+ # The new event configuration values.
4248
+ #
4249
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4250
+ #
4251
+ # @example Request syntax with placeholder values
4252
+ #
4253
+ # resp = client.update_event_configurations({
4254
+ # event_configurations: {
4255
+ # "THING" => {
4256
+ # enabled: false,
4257
+ # },
4258
+ # },
4259
+ # })
4260
+ #
4261
+ # @overload update_event_configurations(params = {})
4262
+ # @param [Hash] params ({})
4263
+ def update_event_configurations(params = {}, options = {})
4264
+ req = build_request(:update_event_configurations, params)
4265
+ req.send_request(options)
4266
+ end
4267
+
4268
+ # Updates the search configuration.
4269
+ #
4270
+ # @option params [Types::ThingIndexingConfiguration] :thing_indexing_configuration
4271
+ # Thing indexing configuration.
4272
+ #
4273
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4274
+ #
4275
+ # @example Request syntax with placeholder values
4276
+ #
4277
+ # resp = client.update_indexing_configuration({
4278
+ # thing_indexing_configuration: {
4279
+ # thing_indexing_mode: "OFF", # accepts OFF, REGISTRY, REGISTRY_AND_SHADOW
4280
+ # },
4281
+ # })
4282
+ #
4283
+ # @overload update_indexing_configuration(params = {})
4284
+ # @param [Hash] params ({})
4285
+ def update_indexing_configuration(params = {}, options = {})
4286
+ req = build_request(:update_indexing_configuration, params)
4287
+ req.send_request(options)
4288
+ end
4289
+
4290
+ # Updates a role alias.
4291
+ #
4292
+ # @option params [required, String] :role_alias
4293
+ # The role alias to update.
4294
+ #
4295
+ # @option params [String] :role_arn
4296
+ # The role ARN.
4297
+ #
4298
+ # @option params [Integer] :credential_duration_seconds
4299
+ # The number of seconds the credential will be valid.
4300
+ #
4301
+ # @return [Types::UpdateRoleAliasResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4302
+ #
4303
+ # * {Types::UpdateRoleAliasResponse#role_alias #role_alias} => String
4304
+ # * {Types::UpdateRoleAliasResponse#role_alias_arn #role_alias_arn} => String
4305
+ #
4306
+ # @example Request syntax with placeholder values
4307
+ #
4308
+ # resp = client.update_role_alias({
4309
+ # role_alias: "RoleAlias", # required
4310
+ # role_arn: "RoleArn",
4311
+ # credential_duration_seconds: 1,
4312
+ # })
4313
+ #
4314
+ # @example Response structure
4315
+ #
4316
+ # resp.role_alias #=> String
4317
+ # resp.role_alias_arn #=> String
4318
+ #
4319
+ # @overload update_role_alias(params = {})
4320
+ # @param [Hash] params ({})
4321
+ def update_role_alias(params = {}, options = {})
4322
+ req = build_request(:update_role_alias, params)
4323
+ req.send_request(options)
4324
+ end
4325
+
2262
4326
  # Updates the data for a thing.
2263
4327
  #
2264
4328
  # @option params [required, String] :thing_name
@@ -2282,7 +4346,7 @@ module Aws::IoT
2282
4346
  # rejected with a `VersionConflictException`.
2283
4347
  #
2284
4348
  # @option params [Boolean] :remove_thing_type
2285
- # Remove a thing type association. If **true**, the assocation is
4349
+ # Remove a thing type association. If **true**, the association is
2286
4350
  # removed.
2287
4351
  #
2288
4352
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
@@ -2309,6 +4373,77 @@ module Aws::IoT
2309
4373
  req.send_request(options)
2310
4374
  end
2311
4375
 
4376
+ # Update a thing group.
4377
+ #
4378
+ # @option params [required, String] :thing_group_name
4379
+ # The thing group to update.
4380
+ #
4381
+ # @option params [required, Types::ThingGroupProperties] :thing_group_properties
4382
+ # The thing group properties.
4383
+ #
4384
+ # @option params [Integer] :expected_version
4385
+ # The expected version of the thing group. If this does not match the
4386
+ # version of the thing group being updated, the update will fail.
4387
+ #
4388
+ # @return [Types::UpdateThingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4389
+ #
4390
+ # * {Types::UpdateThingGroupResponse#version #version} => Integer
4391
+ #
4392
+ # @example Request syntax with placeholder values
4393
+ #
4394
+ # resp = client.update_thing_group({
4395
+ # thing_group_name: "ThingGroupName", # required
4396
+ # thing_group_properties: { # required
4397
+ # thing_group_description: "ThingGroupDescription",
4398
+ # attribute_payload: {
4399
+ # attributes: {
4400
+ # "AttributeName" => "AttributeValue",
4401
+ # },
4402
+ # merge: false,
4403
+ # },
4404
+ # },
4405
+ # expected_version: 1,
4406
+ # })
4407
+ #
4408
+ # @example Response structure
4409
+ #
4410
+ # resp.version #=> Integer
4411
+ #
4412
+ # @overload update_thing_group(params = {})
4413
+ # @param [Hash] params ({})
4414
+ def update_thing_group(params = {}, options = {})
4415
+ req = build_request(:update_thing_group, params)
4416
+ req.send_request(options)
4417
+ end
4418
+
4419
+ # Updates the groups to which the thing belongs.
4420
+ #
4421
+ # @option params [String] :thing_name
4422
+ # The thing whose group memberships will be updated.
4423
+ #
4424
+ # @option params [Array<String>] :thing_groups_to_add
4425
+ # The groups to which the thing will be added.
4426
+ #
4427
+ # @option params [Array<String>] :thing_groups_to_remove
4428
+ # The groups from which the thing will be removed.
4429
+ #
4430
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4431
+ #
4432
+ # @example Request syntax with placeholder values
4433
+ #
4434
+ # resp = client.update_thing_groups_for_thing({
4435
+ # thing_name: "ThingName",
4436
+ # thing_groups_to_add: ["ThingGroupName"],
4437
+ # thing_groups_to_remove: ["ThingGroupName"],
4438
+ # })
4439
+ #
4440
+ # @overload update_thing_groups_for_thing(params = {})
4441
+ # @param [Hash] params ({})
4442
+ def update_thing_groups_for_thing(params = {}, options = {})
4443
+ req = build_request(:update_thing_groups_for_thing, params)
4444
+ req.send_request(options)
4445
+ end
4446
+
2312
4447
  # @!endgroup
2313
4448
 
2314
4449
  # @param params ({})
@@ -2322,7 +4457,7 @@ module Aws::IoT
2322
4457
  params: params,
2323
4458
  config: config)
2324
4459
  context[:gem_name] = 'aws-sdk-iot'
2325
- context[:gem_version] = '1.0.0'
4460
+ context[:gem_version] = '1.1.0'
2326
4461
  Seahorse::Client::Request.new(handlers, context)
2327
4462
  end
2328
4463