aws-sdk-iot 1.18.0 → 1.19.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: 0f5fc4cd1a935d6c60bb5fe1f4548b87aa6f6627
4
- data.tar.gz: c11198c931a610ce8096432c742b9346bc73ec15
3
+ metadata.gz: 5d99d32b684d8517a22c8cc7c4ee4c8a4126873e
4
+ data.tar.gz: 27a3fb464ab03a3d94078e21516b7fa2e9dae338
5
5
  SHA512:
6
- metadata.gz: b197bdf2e0c0d7c87c38461a788480196d0d0bcc008b78cfb3156458d8f8a2390bfd2155df207f7e8a892f028156b4e9803da5637d2fe4f33875257f99fd8c72
7
- data.tar.gz: 6137d378cbd11d82b29f4c62040a9c12591303eb9887f3d5f5130bf2d78cc808dc79b2dcd7cb6e3e674316e030cb6b15f155db6f0e1fda2dd45af474f24d7012
6
+ metadata.gz: 0c494d8e964dcd5f3c8c795fd2fc7b2873db5a78c76db475ad28d0a570738886976437042c3b6549b176d76ba8237b87751061f21fec6d9e627a90d29e0a5410
7
+ data.tar.gz: bcb741188496988da895fcd6d82fe8d71b65e074bd937a1089bda28b3f85c060a43e013563455b366dc36865fc1d75f9b998e5013b2ba25094f8c535c9daf9d6
data/lib/aws-sdk-iot.rb CHANGED
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-iot/customizations'
42
42
  # @service
43
43
  module Aws::IoT
44
44
 
45
- GEM_VERSION = '1.18.0'
45
+ GEM_VERSION = '1.19.0'
46
46
 
47
47
  end
@@ -15,6 +15,7 @@ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
15
  require 'aws-sdk-core/plugins/retry_errors.rb'
16
16
  require 'aws-sdk-core/plugins/global_configuration.rb'
17
17
  require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
18
19
  require 'aws-sdk-core/plugins/response_paging.rb'
19
20
  require 'aws-sdk-core/plugins/stub_responses.rb'
20
21
  require 'aws-sdk-core/plugins/idempotency_token.rb'
@@ -45,6 +46,7 @@ module Aws::IoT
45
46
  add_plugin(Aws::Plugins::RetryErrors)
46
47
  add_plugin(Aws::Plugins::GlobalConfiguration)
47
48
  add_plugin(Aws::Plugins::RegionalEndpoint)
49
+ add_plugin(Aws::Plugins::EndpointDiscovery)
48
50
  add_plugin(Aws::Plugins::ResponsePaging)
49
51
  add_plugin(Aws::Plugins::StubResponses)
50
52
  add_plugin(Aws::Plugins::IdempotencyToken)
@@ -98,6 +100,10 @@ module Aws::IoT
98
100
  #
99
101
  # @option options [String] :access_key_id
100
102
  #
103
+ # @option options [Boolean] :active_endpoint_cache (false)
104
+ # When set to `true`, a thread polling for endpoints will be running in
105
+ # the background every 60 secs (default). Defaults to `false`.
106
+ #
101
107
  # @option options [Boolean] :client_side_monitoring (false)
102
108
  # When `true`, client-side metrics will be collected for all API requests from
103
109
  # this client.
@@ -123,6 +129,21 @@ module Aws::IoT
123
129
  # option. You should only configure an `:endpoint` when connecting
124
130
  # to test endpoints. This should be avalid HTTP(S) URI.
125
131
  #
132
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
133
+ # Used for the maximum size limit of the LRU cache storing endpoints data
134
+ # for endpoint discovery enabled operations. Defaults to 1000.
135
+ #
136
+ # @option options [Integer] :endpoint_cache_max_threads (10)
137
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
138
+ #
139
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
140
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
141
+ # Use this option to config the time interval in seconds for making
142
+ # requests fetching endpoints information. Defaults to 60 sec.
143
+ #
144
+ # @option options [Boolean] :endpoint_discovery (false)
145
+ # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
146
+ #
126
147
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
127
148
  # The log formatter.
128
149
  #
@@ -207,6 +228,38 @@ module Aws::IoT
207
228
  req.send_request(options)
208
229
  end
209
230
 
231
+ # Adds a thing to a billing group.
232
+ #
233
+ # @option params [String] :billing_group_name
234
+ # The name of the billing group.
235
+ #
236
+ # @option params [String] :billing_group_arn
237
+ # The ARN of the billing group.
238
+ #
239
+ # @option params [String] :thing_name
240
+ # The name of the thing to be added to the billing group.
241
+ #
242
+ # @option params [String] :thing_arn
243
+ # The ARN of the thing to be added to the billing group.
244
+ #
245
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
246
+ #
247
+ # @example Request syntax with placeholder values
248
+ #
249
+ # resp = client.add_thing_to_billing_group({
250
+ # billing_group_name: "BillingGroupName",
251
+ # billing_group_arn: "BillingGroupArn",
252
+ # thing_name: "ThingName",
253
+ # thing_arn: "ThingArn",
254
+ # })
255
+ #
256
+ # @overload add_thing_to_billing_group(params = {})
257
+ # @param [Hash] params ({})
258
+ def add_thing_to_billing_group(params = {}, options = {})
259
+ req = build_request(:add_thing_to_billing_group, params)
260
+ req.send_request(options)
261
+ end
262
+
210
263
  # Adds a thing to a thing group.
211
264
  #
212
265
  # @option params [String] :thing_group_name
@@ -221,6 +274,12 @@ module Aws::IoT
221
274
  # @option params [String] :thing_arn
222
275
  # The ARN of the thing to add to a group.
223
276
  #
277
+ # @option params [Boolean] :override_dynamic_groups
278
+ # Override dynamic thing groups with static thing groups when 10-group
279
+ # limit is reached. If a thing belongs to 10 thing groups, and one or
280
+ # more of those groups are dynamic thing groups, adding a thing to a
281
+ # static group removes the thing from the last dynamic group.
282
+ #
224
283
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
225
284
  #
226
285
  # @example Request syntax with placeholder values
@@ -230,6 +289,7 @@ module Aws::IoT
230
289
  # thing_group_arn: "ThingGroupArn",
231
290
  # thing_name: "ThingName",
232
291
  # thing_arn: "ThingArn",
292
+ # override_dynamic_groups: false,
233
293
  # })
234
294
  #
235
295
  # @overload add_thing_to_thing_group(params = {})
@@ -293,7 +353,11 @@ module Aws::IoT
293
353
  # The name of the policy to attach.
294
354
  #
295
355
  # @option params [required, String] :target
296
- # The identity to which the policy is attached.
356
+ # The [identity][1] to which the policy is attached.
357
+ #
358
+ #
359
+ #
360
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/iot-security-identity.html
297
361
  #
298
362
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
299
363
  #
@@ -449,6 +513,9 @@ module Aws::IoT
449
513
  # @option params [required, String] :job_id
450
514
  # The unique identifier you assigned to this job when it was created.
451
515
  #
516
+ # @option params [String] :reason_code
517
+ # (Optional)A reason code string that explains why the job was canceled.
518
+ #
452
519
  # @option params [String] :comment
453
520
  # An optional comment string describing why the job was canceled.
454
521
  #
@@ -472,6 +539,7 @@ module Aws::IoT
472
539
  #
473
540
  # resp = client.cancel_job({
474
541
  # job_id: "JobId", # required
542
+ # reason_code: "ReasonCode",
475
543
  # comment: "Comment",
476
544
  # force: false,
477
545
  # })
@@ -603,6 +671,51 @@ module Aws::IoT
603
671
  req.send_request(options)
604
672
  end
605
673
 
674
+ # Creates a billing group.
675
+ #
676
+ # @option params [required, String] :billing_group_name
677
+ # The name you wish to give to the billing group.
678
+ #
679
+ # @option params [Types::BillingGroupProperties] :billing_group_properties
680
+ # The properties of the billing group.
681
+ #
682
+ # @option params [Array<Types::Tag>] :tags
683
+ # Metadata which can be used to manage the billing group.
684
+ #
685
+ # @return [Types::CreateBillingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
686
+ #
687
+ # * {Types::CreateBillingGroupResponse#billing_group_name #billing_group_name} => String
688
+ # * {Types::CreateBillingGroupResponse#billing_group_arn #billing_group_arn} => String
689
+ # * {Types::CreateBillingGroupResponse#billing_group_id #billing_group_id} => String
690
+ #
691
+ # @example Request syntax with placeholder values
692
+ #
693
+ # resp = client.create_billing_group({
694
+ # billing_group_name: "BillingGroupName", # required
695
+ # billing_group_properties: {
696
+ # billing_group_description: "BillingGroupDescription",
697
+ # },
698
+ # tags: [
699
+ # {
700
+ # key: "TagKey",
701
+ # value: "TagValue",
702
+ # },
703
+ # ],
704
+ # })
705
+ #
706
+ # @example Response structure
707
+ #
708
+ # resp.billing_group_name #=> String
709
+ # resp.billing_group_arn #=> String
710
+ # resp.billing_group_id #=> String
711
+ #
712
+ # @overload create_billing_group(params = {})
713
+ # @param [Hash] params ({})
714
+ def create_billing_group(params = {}, options = {})
715
+ req = build_request(:create_billing_group, params)
716
+ req.send_request(options)
717
+ end
718
+
606
719
  # Creates an X.509 certificate using the specified certificate signing
607
720
  # request.
608
721
  #
@@ -684,6 +797,90 @@ module Aws::IoT
684
797
  req.send_request(options)
685
798
  end
686
799
 
800
+ # Creates a dynamic thing group.
801
+ #
802
+ # @option params [required, String] :thing_group_name
803
+ # The dynamic thing group name to create.
804
+ #
805
+ # @option params [Types::ThingGroupProperties] :thing_group_properties
806
+ # The dynamic thing group properties.
807
+ #
808
+ # @option params [String] :index_name
809
+ # The dynamic thing group index name.
810
+ #
811
+ # <note markdown="1"> Currently one index is supported: "AWS\_Things".
812
+ #
813
+ # </note>
814
+ #
815
+ # @option params [required, String] :query_string
816
+ # The dynamic thing group search query string.
817
+ #
818
+ # See [Query Syntax][1] for information about query string syntax.
819
+ #
820
+ #
821
+ #
822
+ # [1]: http://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html
823
+ #
824
+ # @option params [String] :query_version
825
+ # The dynamic thing group query version.
826
+ #
827
+ # <note markdown="1"> Currently one query version is supported: "2017-09-30". If not
828
+ # specified, the query version defaults to this value.
829
+ #
830
+ # </note>
831
+ #
832
+ # @option params [Array<Types::Tag>] :tags
833
+ # Metadata which can be used to manage the dynamic thing group.
834
+ #
835
+ # @return [Types::CreateDynamicThingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
836
+ #
837
+ # * {Types::CreateDynamicThingGroupResponse#thing_group_name #thing_group_name} => String
838
+ # * {Types::CreateDynamicThingGroupResponse#thing_group_arn #thing_group_arn} => String
839
+ # * {Types::CreateDynamicThingGroupResponse#thing_group_id #thing_group_id} => String
840
+ # * {Types::CreateDynamicThingGroupResponse#index_name #index_name} => String
841
+ # * {Types::CreateDynamicThingGroupResponse#query_string #query_string} => String
842
+ # * {Types::CreateDynamicThingGroupResponse#query_version #query_version} => String
843
+ #
844
+ # @example Request syntax with placeholder values
845
+ #
846
+ # resp = client.create_dynamic_thing_group({
847
+ # thing_group_name: "ThingGroupName", # required
848
+ # thing_group_properties: {
849
+ # thing_group_description: "ThingGroupDescription",
850
+ # attribute_payload: {
851
+ # attributes: {
852
+ # "AttributeName" => "AttributeValue",
853
+ # },
854
+ # merge: false,
855
+ # },
856
+ # },
857
+ # index_name: "IndexName",
858
+ # query_string: "QueryString", # required
859
+ # query_version: "QueryVersion",
860
+ # tags: [
861
+ # {
862
+ # key: "TagKey",
863
+ # value: "TagValue",
864
+ # },
865
+ # ],
866
+ # })
867
+ #
868
+ # @example Response structure
869
+ #
870
+ # resp.thing_group_name #=> String
871
+ # resp.thing_group_arn #=> String
872
+ # resp.thing_group_id #=> String
873
+ # resp.index_name #=> String
874
+ # resp.query_string #=> String
875
+ # resp.query_version #=> String
876
+ #
877
+ # @overload create_dynamic_thing_group(params = {})
878
+ # @param [Hash] params ({})
879
+ def create_dynamic_thing_group(params = {}, options = {})
880
+ req = build_request(:create_dynamic_thing_group, params)
881
+ req.send_request(options)
882
+ end
883
+
687
884
  # Creates a job.
688
885
  #
689
886
  # @option params [required, String] :job_id
@@ -700,6 +897,18 @@ module Aws::IoT
700
897
  # @option params [String] :document
701
898
  # The job document.
702
899
  #
900
+ # <note markdown="1"> If the job document resides in an S3 bucket, you must use a
901
+ # placeholder link when specifying the document.
902
+ #
903
+ # The placeholder link is of the following form:
904
+ #
905
+ # `$\{aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key\}`
906
+ #
907
+ # where *bucket* is your bucket name and *key* is the object in the
908
+ # bucket to which you are linking.
909
+ #
910
+ # </note>
911
+ #
703
912
  # @option params [String] :description
704
913
  # A short text description of the job.
705
914
  #
@@ -717,6 +926,9 @@ module Aws::IoT
717
926
  # @option params [Types::JobExecutionsRolloutConfig] :job_executions_rollout_config
718
927
  # Allows you to create a staged rollout of the job.
719
928
  #
929
+ # @option params [Types::AbortConfig] :abort_config
930
+ # Allows you to create criteria to abort a job.
931
+ #
720
932
  # @option params [Types::TimeoutConfig] :timeout_config
721
933
  # Specifies the amount of time each device has to finish its execution
722
934
  # of the job. The timer is started when the job execution status is set
@@ -724,6 +936,9 @@ module Aws::IoT
724
936
  # terminal state before the time expires, it will be automatically set
725
937
  # to `TIMED_OUT`.
726
938
  #
939
+ # @option params [Array<Types::Tag>] :tags
940
+ # Metadata which can be used to manage the job.
941
+ #
727
942
  # @return [Types::CreateJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
728
943
  #
729
944
  # * {Types::CreateJobResponse#job_arn #job_arn} => String
@@ -745,10 +960,34 @@ module Aws::IoT
745
960
  # target_selection: "CONTINUOUS", # accepts CONTINUOUS, SNAPSHOT
746
961
  # job_executions_rollout_config: {
747
962
  # maximum_per_minute: 1,
963
+ # exponential_rate: {
964
+ # base_rate_per_minute: 1, # required
965
+ # increment_factor: 1.0, # required
966
+ # rate_increase_criteria: { # required
967
+ # number_of_notified_things: 1,
968
+ # number_of_succeeded_things: 1,
969
+ # },
970
+ # },
971
+ # },
972
+ # abort_config: {
973
+ # criteria_list: [ # required
974
+ # {
975
+ # failure_type: "FAILED", # required, accepts FAILED, REJECTED, TIMED_OUT, ALL
976
+ # action: "CANCEL", # required, accepts CANCEL
977
+ # threshold_percentage: 1.0, # required
978
+ # min_number_of_executed_things: 1, # required
979
+ # },
980
+ # ],
748
981
  # },
749
982
  # timeout_config: {
750
983
  # in_progress_timeout_in_minutes: 1,
751
984
  # },
985
+ # tags: [
986
+ # {
987
+ # key: "TagKey",
988
+ # value: "TagValue",
989
+ # },
990
+ # ],
752
991
  # })
753
992
  #
754
993
  # @example Response structure
@@ -1123,6 +1362,9 @@ module Aws::IoT
1123
1362
  # always sent to the console.) Alerts are generated when a device
1124
1363
  # (thing) violates a behavior.
1125
1364
  #
1365
+ # @option params [Array<Types::Tag>] :tags
1366
+ # Metadata which can be used to manage the security profile.
1367
+ #
1126
1368
  # @return [Types::CreateSecurityProfileResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1127
1369
  #
1128
1370
  # * {Types::CreateSecurityProfileResponse#security_profile_name #security_profile_name} => String
@@ -1154,6 +1396,12 @@ module Aws::IoT
1154
1396
  # role_arn: "RoleArn", # required
1155
1397
  # },
1156
1398
  # },
1399
+ # tags: [
1400
+ # {
1401
+ # key: "TagKey",
1402
+ # value: "TagValue",
1403
+ # },
1404
+ # ],
1157
1405
  # })
1158
1406
  #
1159
1407
  # @example Response structure
@@ -1252,6 +1500,9 @@ module Aws::IoT
1252
1500
  #
1253
1501
  # `\{"attributes":\{"string1":"string2"\}\}`
1254
1502
  #
1503
+ # @option params [String] :billing_group_name
1504
+ # The name of the billing group the thing will be added to.
1505
+ #
1255
1506
  # @return [Types::CreateThingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1256
1507
  #
1257
1508
  # * {Types::CreateThingResponse#thing_name #thing_name} => String
@@ -1269,6 +1520,7 @@ module Aws::IoT
1269
1520
  # },
1270
1521
  # merge: false,
1271
1522
  # },
1523
+ # billing_group_name: "BillingGroupName",
1272
1524
  # })
1273
1525
  #
1274
1526
  # @example Response structure
@@ -1304,6 +1556,9 @@ module Aws::IoT
1304
1556
  # @option params [Types::ThingGroupProperties] :thing_group_properties
1305
1557
  # The thing group properties.
1306
1558
  #
1559
+ # @option params [Array<Types::Tag>] :tags
1560
+ # Metadata which can be used to manage the thing group.
1561
+ #
1307
1562
  # @return [Types::CreateThingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1308
1563
  #
1309
1564
  # * {Types::CreateThingGroupResponse#thing_group_name #thing_group_name} => String
@@ -1324,6 +1579,12 @@ module Aws::IoT
1324
1579
  # merge: false,
1325
1580
  # },
1326
1581
  # },
1582
+ # tags: [
1583
+ # {
1584
+ # key: "TagKey",
1585
+ # value: "TagValue",
1586
+ # },
1587
+ # ],
1327
1588
  # })
1328
1589
  #
1329
1590
  # @example Response structure
@@ -1349,6 +1610,9 @@ module Aws::IoT
1349
1610
  # information about the new thing type including a description, and a
1350
1611
  # list of searchable thing attribute names.
1351
1612
  #
1613
+ # @option params [Array<Types::Tag>] :tags
1614
+ # Metadata which can be used to manage the thing type.
1615
+ #
1352
1616
  # @return [Types::CreateThingTypeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1353
1617
  #
1354
1618
  # * {Types::CreateThingTypeResponse#thing_type_name #thing_type_name} => String
@@ -1363,6 +1627,12 @@ module Aws::IoT
1363
1627
  # thing_type_description: "ThingTypeDescription",
1364
1628
  # searchable_attributes: ["AttributeName"],
1365
1629
  # },
1630
+ # tags: [
1631
+ # {
1632
+ # key: "TagKey",
1633
+ # value: "TagValue",
1634
+ # },
1635
+ # ],
1366
1636
  # })
1367
1637
  #
1368
1638
  # @example Response structure
@@ -1629,6 +1899,33 @@ module Aws::IoT
1629
1899
  req.send_request(options)
1630
1900
  end
1631
1901
 
1902
+ # Deletes the billing group.
1903
+ #
1904
+ # @option params [required, String] :billing_group_name
1905
+ # The name of the billing group.
1906
+ #
1907
+ # @option params [Integer] :expected_version
1908
+ # The expected version of the billing group. If the version of the
1909
+ # billing group does not match the expected version specified in the
1910
+ # request, the `DeleteBillingGroup` request is rejected with a
1911
+ # `VersionConflictException`.
1912
+ #
1913
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1914
+ #
1915
+ # @example Request syntax with placeholder values
1916
+ #
1917
+ # resp = client.delete_billing_group({
1918
+ # billing_group_name: "BillingGroupName", # required
1919
+ # expected_version: 1,
1920
+ # })
1921
+ #
1922
+ # @overload delete_billing_group(params = {})
1923
+ # @param [Hash] params ({})
1924
+ def delete_billing_group(params = {}, options = {})
1925
+ req = build_request(:delete_billing_group, params)
1926
+ req.send_request(options)
1927
+ end
1928
+
1632
1929
  # Deletes a registered CA certificate.
1633
1930
  #
1634
1931
  # @option params [required, String] :certificate_id
@@ -1680,6 +1977,30 @@ module Aws::IoT
1680
1977
  req.send_request(options)
1681
1978
  end
1682
1979
 
1980
+ # Deletes a dynamic thing group.
1981
+ #
1982
+ # @option params [required, String] :thing_group_name
1983
+ # The name of the dynamic thing group to delete.
1984
+ #
1985
+ # @option params [Integer] :expected_version
1986
+ # The expected version of the dynamic thing group to delete.
1987
+ #
1988
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1989
+ #
1990
+ # @example Request syntax with placeholder values
1991
+ #
1992
+ # resp = client.delete_dynamic_thing_group({
1993
+ # thing_group_name: "ThingGroupName", # required
1994
+ # expected_version: 1,
1995
+ # })
1996
+ #
1997
+ # @overload delete_dynamic_thing_group(params = {})
1998
+ # @param [Hash] params ({})
1999
+ def delete_dynamic_thing_group(params = {}, options = {})
2000
+ req = build_request(:delete_dynamic_thing_group, params)
2001
+ req.send_request(options)
2002
+ end
2003
+
1683
2004
  # Deletes a job and its related job executions.
1684
2005
  #
1685
2006
  # Deleting a job may take time, depending on the number of job
@@ -1963,7 +2284,8 @@ module Aws::IoT
1963
2284
  req.send_request(options)
1964
2285
  end
1965
2286
 
1966
- # Deletes the specified thing.
2287
+ # Deletes the specified thing. Returns successfully with no error if the
2288
+ # deletion is successful or you specify a thing that doesn't exist.
1967
2289
  #
1968
2290
  # @option params [required, String] :thing_name
1969
2291
  # The name of the thing to delete.
@@ -2014,9 +2336,9 @@ module Aws::IoT
2014
2336
  req.send_request(options)
2015
2337
  end
2016
2338
 
2017
- # Deletes the specified thing type . You cannot delete a thing type if
2018
- # it has things associated with it. To delete a thing type, first mark
2019
- # it as deprecated by calling DeprecateThingType, then remove any
2339
+ # Deletes the specified thing type. You cannot delete a thing type if it
2340
+ # has things associated with it. To delete a thing type, first mark it
2341
+ # as deprecated by calling DeprecateThingType, then remove any
2020
2342
  # associated things by calling UpdateThing to change the thing type on
2021
2343
  # any associated thing, and finally use DeleteThingType to delete the
2022
2344
  # thing type.
@@ -2220,6 +2542,42 @@ module Aws::IoT
2220
2542
  req.send_request(options)
2221
2543
  end
2222
2544
 
2545
+ # Returns information about a billing group.
2546
+ #
2547
+ # @option params [required, String] :billing_group_name
2548
+ # The name of the billing group.
2549
+ #
2550
+ # @return [Types::DescribeBillingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2551
+ #
2552
+ # * {Types::DescribeBillingGroupResponse#billing_group_name #billing_group_name} => String
2553
+ # * {Types::DescribeBillingGroupResponse#billing_group_id #billing_group_id} => String
2554
+ # * {Types::DescribeBillingGroupResponse#billing_group_arn #billing_group_arn} => String
2555
+ # * {Types::DescribeBillingGroupResponse#version #version} => Integer
2556
+ # * {Types::DescribeBillingGroupResponse#billing_group_properties #billing_group_properties} => Types::BillingGroupProperties
2557
+ # * {Types::DescribeBillingGroupResponse#billing_group_metadata #billing_group_metadata} => Types::BillingGroupMetadata
2558
+ #
2559
+ # @example Request syntax with placeholder values
2560
+ #
2561
+ # resp = client.describe_billing_group({
2562
+ # billing_group_name: "BillingGroupName", # required
2563
+ # })
2564
+ #
2565
+ # @example Response structure
2566
+ #
2567
+ # resp.billing_group_name #=> String
2568
+ # resp.billing_group_id #=> String
2569
+ # resp.billing_group_arn #=> String
2570
+ # resp.version #=> Integer
2571
+ # resp.billing_group_properties.billing_group_description #=> String
2572
+ # resp.billing_group_metadata.creation_date #=> Time
2573
+ #
2574
+ # @overload describe_billing_group(params = {})
2575
+ # @param [Hash] params ({})
2576
+ def describe_billing_group(params = {}, options = {})
2577
+ req = build_request(:describe_billing_group, params)
2578
+ req.send_request(options)
2579
+ end
2580
+
2223
2581
  # Describes a registered CA certificate.
2224
2582
  #
2225
2583
  # @option params [required, String] :certificate_id
@@ -2451,6 +2809,7 @@ module Aws::IoT
2451
2809
  # resp.job.target_selection #=> String, one of "CONTINUOUS", "SNAPSHOT"
2452
2810
  # resp.job.status #=> String, one of "IN_PROGRESS", "CANCELED", "COMPLETED", "DELETION_IN_PROGRESS"
2453
2811
  # resp.job.force_canceled #=> Boolean
2812
+ # resp.job.reason_code #=> String
2454
2813
  # resp.job.comment #=> String
2455
2814
  # resp.job.targets #=> Array
2456
2815
  # resp.job.targets[0] #=> String
@@ -2458,6 +2817,15 @@ module Aws::IoT
2458
2817
  # resp.job.presigned_url_config.role_arn #=> String
2459
2818
  # resp.job.presigned_url_config.expires_in_sec #=> Integer
2460
2819
  # resp.job.job_executions_rollout_config.maximum_per_minute #=> Integer
2820
+ # resp.job.job_executions_rollout_config.exponential_rate.base_rate_per_minute #=> Integer
2821
+ # resp.job.job_executions_rollout_config.exponential_rate.increment_factor #=> Float
2822
+ # resp.job.job_executions_rollout_config.exponential_rate.rate_increase_criteria.number_of_notified_things #=> Integer
2823
+ # resp.job.job_executions_rollout_config.exponential_rate.rate_increase_criteria.number_of_succeeded_things #=> Integer
2824
+ # resp.job.abort_config.criteria_list #=> Array
2825
+ # resp.job.abort_config.criteria_list[0].failure_type #=> String, one of "FAILED", "REJECTED", "TIMED_OUT", "ALL"
2826
+ # resp.job.abort_config.criteria_list[0].action #=> String, one of "CANCEL"
2827
+ # resp.job.abort_config.criteria_list[0].threshold_percentage #=> Float
2828
+ # resp.job.abort_config.criteria_list[0].min_number_of_executed_things #=> Integer
2461
2829
  # resp.job.created_at #=> Time
2462
2830
  # resp.job.last_updated_at #=> Time
2463
2831
  # resp.job.completed_at #=> Time
@@ -2697,6 +3065,7 @@ module Aws::IoT
2697
3065
  # * {Types::DescribeThingResponse#thing_type_name #thing_type_name} => String
2698
3066
  # * {Types::DescribeThingResponse#attributes #attributes} => Hash&lt;String,String&gt;
2699
3067
  # * {Types::DescribeThingResponse#version #version} => Integer
3068
+ # * {Types::DescribeThingResponse#billing_group_name #billing_group_name} => String
2700
3069
  #
2701
3070
  # @example Request syntax with placeholder values
2702
3071
  #
@@ -2714,6 +3083,7 @@ module Aws::IoT
2714
3083
  # resp.attributes #=> Hash
2715
3084
  # resp.attributes["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
2716
3085
  # resp.version #=> Integer
3086
+ # resp.billing_group_name #=> String
2717
3087
  #
2718
3088
  # @overload describe_thing(params = {})
2719
3089
  # @param [Hash] params ({})
@@ -2735,6 +3105,10 @@ module Aws::IoT
2735
3105
  # * {Types::DescribeThingGroupResponse#version #version} => Integer
2736
3106
  # * {Types::DescribeThingGroupResponse#thing_group_properties #thing_group_properties} => Types::ThingGroupProperties
2737
3107
  # * {Types::DescribeThingGroupResponse#thing_group_metadata #thing_group_metadata} => Types::ThingGroupMetadata
3108
+ # * {Types::DescribeThingGroupResponse#index_name #index_name} => String
3109
+ # * {Types::DescribeThingGroupResponse#query_string #query_string} => String
3110
+ # * {Types::DescribeThingGroupResponse#query_version #query_version} => String
3111
+ # * {Types::DescribeThingGroupResponse#status #status} => String
2738
3112
  #
2739
3113
  # @example Request syntax with placeholder values
2740
3114
  #
@@ -2757,6 +3131,10 @@ module Aws::IoT
2757
3131
  # resp.thing_group_metadata.root_to_parent_thing_groups[0].group_name #=> String
2758
3132
  # resp.thing_group_metadata.root_to_parent_thing_groups[0].group_arn #=> String
2759
3133
  # resp.thing_group_metadata.creation_date #=> Time
3134
+ # resp.index_name #=> String
3135
+ # resp.query_string #=> String
3136
+ # resp.query_version #=> String
3137
+ # resp.status #=> String, one of "ACTIVE", "BUILDING", "REBUILDING"
2760
3138
  #
2761
3139
  # @overload describe_thing_group(params = {})
2762
3140
  # @param [Hash] params ({})
@@ -2932,6 +3310,11 @@ module Aws::IoT
2932
3310
 
2933
3311
  # Detaches the specified principal from the specified thing.
2934
3312
  #
3313
+ # <note markdown="1"> This call is asynchronous. It might take several seconds for the
3314
+ # detachment to propagate.
3315
+ #
3316
+ # </note>
3317
+ #
2935
3318
  # @option params [required, String] :thing_name
2936
3319
  # The name of the thing.
2937
3320
  #
@@ -3045,6 +3428,7 @@ module Aws::IoT
3045
3428
  # @example Response structure
3046
3429
  #
3047
3430
  # resp.thing_indexing_configuration.thing_indexing_mode #=> String, one of "OFF", "REGISTRY", "REGISTRY_AND_SHADOW"
3431
+ # resp.thing_indexing_configuration.thing_connectivity_indexing_mode #=> String, one of "OFF", "STATUS"
3048
3432
  # resp.thing_group_indexing_configuration.thing_group_indexing_mode #=> String, one of "OFF", "ON"
3049
3433
  #
3050
3434
  # @overload get_indexing_configuration(params = {})
@@ -3731,6 +4115,44 @@ module Aws::IoT
3731
4115
  req.send_request(options)
3732
4116
  end
3733
4117
 
4118
+ # Lists the billing groups you have created.
4119
+ #
4120
+ # @option params [String] :next_token
4121
+ # The token to retrieve the next set of results.
4122
+ #
4123
+ # @option params [Integer] :max_results
4124
+ # The maximum number of results to return per request.
4125
+ #
4126
+ # @option params [String] :name_prefix_filter
4127
+ # Limit the results to billing groups whose names have the given prefix.
4128
+ #
4129
+ # @return [Types::ListBillingGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4130
+ #
4131
+ # * {Types::ListBillingGroupsResponse#billing_groups #billing_groups} => Array&lt;Types::GroupNameAndArn&gt;
4132
+ # * {Types::ListBillingGroupsResponse#next_token #next_token} => String
4133
+ #
4134
+ # @example Request syntax with placeholder values
4135
+ #
4136
+ # resp = client.list_billing_groups({
4137
+ # next_token: "NextToken",
4138
+ # max_results: 1,
4139
+ # name_prefix_filter: "BillingGroupName",
4140
+ # })
4141
+ #
4142
+ # @example Response structure
4143
+ #
4144
+ # resp.billing_groups #=> Array
4145
+ # resp.billing_groups[0].group_name #=> String
4146
+ # resp.billing_groups[0].group_arn #=> String
4147
+ # resp.next_token #=> String
4148
+ #
4149
+ # @overload list_billing_groups(params = {})
4150
+ # @param [Hash] params ({})
4151
+ def list_billing_groups(params = {}, options = {})
4152
+ req = build_request(:list_billing_groups, params)
4153
+ req.send_request(options)
4154
+ end
4155
+
3734
4156
  # Lists the CA certificates registered for your AWS account.
3735
4157
  #
3736
4158
  # The results are paginated with a default page size of 25. You can use
@@ -4536,6 +4958,40 @@ module Aws::IoT
4536
4958
  req.send_request(options)
4537
4959
  end
4538
4960
 
4961
+ # Lists the tags (metadata) you have assigned to the resource.
4962
+ #
4963
+ # @option params [required, String] :resource_arn
4964
+ # The ARN of the resource.
4965
+ #
4966
+ # @option params [String] :next_token
4967
+ # The token to retrieve the next set of results.
4968
+ #
4969
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4970
+ #
4971
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
4972
+ # * {Types::ListTagsForResourceResponse#next_token #next_token} => String
4973
+ #
4974
+ # @example Request syntax with placeholder values
4975
+ #
4976
+ # resp = client.list_tags_for_resource({
4977
+ # resource_arn: "ResourceArn", # required
4978
+ # next_token: "NextToken",
4979
+ # })
4980
+ #
4981
+ # @example Response structure
4982
+ #
4983
+ # resp.tags #=> Array
4984
+ # resp.tags[0].key #=> String
4985
+ # resp.tags[0].value #=> String
4986
+ # resp.next_token #=> String
4987
+ #
4988
+ # @overload list_tags_for_resource(params = {})
4989
+ # @param [Hash] params ({})
4990
+ def list_tags_for_resource(params = {}, options = {})
4991
+ req = build_request(:list_tags_for_resource, params)
4992
+ req.send_request(options)
4993
+ end
4994
+
4539
4995
  # List targets for the specified policy.
4540
4996
  #
4541
4997
  # @option params [required, String] :policy_name
@@ -4902,6 +5358,43 @@ module Aws::IoT
4902
5358
  req.send_request(options)
4903
5359
  end
4904
5360
 
5361
+ # Lists the things you have added to the given billing group.
5362
+ #
5363
+ # @option params [required, String] :billing_group_name
5364
+ # The name of the billing group.
5365
+ #
5366
+ # @option params [String] :next_token
5367
+ # The token to retrieve the next set of results.
5368
+ #
5369
+ # @option params [Integer] :max_results
5370
+ # The maximum number of results to return per request.
5371
+ #
5372
+ # @return [Types::ListThingsInBillingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5373
+ #
5374
+ # * {Types::ListThingsInBillingGroupResponse#things #things} => Array&lt;String&gt;
5375
+ # * {Types::ListThingsInBillingGroupResponse#next_token #next_token} => String
5376
+ #
5377
+ # @example Request syntax with placeholder values
5378
+ #
5379
+ # resp = client.list_things_in_billing_group({
5380
+ # billing_group_name: "BillingGroupName", # required
5381
+ # next_token: "NextToken",
5382
+ # max_results: 1,
5383
+ # })
5384
+ #
5385
+ # @example Response structure
5386
+ #
5387
+ # resp.things #=> Array
5388
+ # resp.things[0] #=> String
5389
+ # resp.next_token #=> String
5390
+ #
5391
+ # @overload list_things_in_billing_group(params = {})
5392
+ # @param [Hash] params ({})
5393
+ def list_things_in_billing_group(params = {}, options = {})
5394
+ req = build_request(:list_things_in_billing_group, params)
5395
+ req.send_request(options)
5396
+ end
5397
+
4905
5398
  # Lists the things in the specified group.
4906
5399
  #
4907
5400
  # @option params [required, String] :thing_group_name
@@ -5280,6 +5773,38 @@ module Aws::IoT
5280
5773
  req.send_request(options)
5281
5774
  end
5282
5775
 
5776
+ # Removes the given thing from the billing group.
5777
+ #
5778
+ # @option params [String] :billing_group_name
5779
+ # The name of the billing group.
5780
+ #
5781
+ # @option params [String] :billing_group_arn
5782
+ # The ARN of the billing group.
5783
+ #
5784
+ # @option params [String] :thing_name
5785
+ # The name of the thing to be removed from the billing group.
5786
+ #
5787
+ # @option params [String] :thing_arn
5788
+ # The ARN of the thing to be removed from the billing group.
5789
+ #
5790
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5791
+ #
5792
+ # @example Request syntax with placeholder values
5793
+ #
5794
+ # resp = client.remove_thing_from_billing_group({
5795
+ # billing_group_name: "BillingGroupName",
5796
+ # billing_group_arn: "BillingGroupArn",
5797
+ # thing_name: "ThingName",
5798
+ # thing_arn: "ThingArn",
5799
+ # })
5800
+ #
5801
+ # @overload remove_thing_from_billing_group(params = {})
5802
+ # @param [Hash] params ({})
5803
+ def remove_thing_from_billing_group(params = {}, options = {})
5804
+ req = build_request(:remove_thing_from_billing_group, params)
5805
+ req.send_request(options)
5806
+ end
5807
+
5283
5808
  # Remove the specified thing from the specified group.
5284
5809
  #
5285
5810
  # @option params [String] :thing_group_name
@@ -5568,6 +6093,8 @@ module Aws::IoT
5568
6093
  # resp.things[0].attributes #=> Hash
5569
6094
  # resp.things[0].attributes["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
5570
6095
  # resp.things[0].shadow #=> String
6096
+ # resp.things[0].connectivity.connected #=> Boolean
6097
+ # resp.things[0].connectivity.timestamp #=> Integer
5571
6098
  # resp.thing_groups #=> Array
5572
6099
  # resp.thing_groups[0].thing_group_name #=> String
5573
6100
  # resp.thing_groups[0].thing_group_id #=> String
@@ -5811,6 +6338,36 @@ module Aws::IoT
5811
6338
  req.send_request(options)
5812
6339
  end
5813
6340
 
6341
+ # Adds to or modifies the tags of the given resource. Tags are metadata
6342
+ # which can be used to manage a resource.
6343
+ #
6344
+ # @option params [required, String] :resource_arn
6345
+ # The ARN of the resource.
6346
+ #
6347
+ # @option params [required, Array<Types::Tag>] :tags
6348
+ # The new or modified tags for the resource.
6349
+ #
6350
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6351
+ #
6352
+ # @example Request syntax with placeholder values
6353
+ #
6354
+ # resp = client.tag_resource({
6355
+ # resource_arn: "ResourceArn", # required
6356
+ # tags: [ # required
6357
+ # {
6358
+ # key: "TagKey",
6359
+ # value: "TagValue",
6360
+ # },
6361
+ # ],
6362
+ # })
6363
+ #
6364
+ # @overload tag_resource(params = {})
6365
+ # @param [Hash] params ({})
6366
+ def tag_resource(params = {}, options = {})
6367
+ req = build_request(:tag_resource, params)
6368
+ req.send_request(options)
6369
+ end
6370
+
5814
6371
  # Tests if a specified principal is authorized to perform an AWS IoT
5815
6372
  # action on a specified resource. Use this to test and debug the
5816
6373
  # authorization behavior of devices that connect to the AWS IoT device
@@ -5975,6 +6532,30 @@ module Aws::IoT
5975
6532
  req.send_request(options)
5976
6533
  end
5977
6534
 
6535
+ # Removes the given tags (metadata) from the resource.
6536
+ #
6537
+ # @option params [required, String] :resource_arn
6538
+ # The ARN of the resource.
6539
+ #
6540
+ # @option params [required, Array<String>] :tag_keys
6541
+ # A list of the keys of the tags to be removed from the resource.
6542
+ #
6543
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6544
+ #
6545
+ # @example Request syntax with placeholder values
6546
+ #
6547
+ # resp = client.untag_resource({
6548
+ # resource_arn: "ResourceArn", # required
6549
+ # tag_keys: ["TagKey"], # required
6550
+ # })
6551
+ #
6552
+ # @overload untag_resource(params = {})
6553
+ # @param [Hash] params ({})
6554
+ def untag_resource(params = {}, options = {})
6555
+ req = build_request(:untag_resource, params)
6556
+ req.send_request(options)
6557
+ end
6558
+
5978
6559
  # Configures or reconfigures the Device Defender audit settings for this
5979
6560
  # account. Settings include how audit notifications are sent and which
5980
6561
  # audit checks are enabled or disabled.
@@ -6076,6 +6657,45 @@ module Aws::IoT
6076
6657
  req.send_request(options)
6077
6658
  end
6078
6659
 
6660
+ # Updates information about the billing group.
6661
+ #
6662
+ # @option params [required, String] :billing_group_name
6663
+ # The name of the billing group.
6664
+ #
6665
+ # @option params [required, Types::BillingGroupProperties] :billing_group_properties
6666
+ # The properties of the billing group.
6667
+ #
6668
+ # @option params [Integer] :expected_version
6669
+ # The expected version of the billing group. If the version of the
6670
+ # billing group does not match the expected version specified in the
6671
+ # request, the `UpdateBillingGroup` request is rejected with a
6672
+ # `VersionConflictException`.
6673
+ #
6674
+ # @return [Types::UpdateBillingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6675
+ #
6676
+ # * {Types::UpdateBillingGroupResponse#version #version} => Integer
6677
+ #
6678
+ # @example Request syntax with placeholder values
6679
+ #
6680
+ # resp = client.update_billing_group({
6681
+ # billing_group_name: "BillingGroupName", # required
6682
+ # billing_group_properties: { # required
6683
+ # billing_group_description: "BillingGroupDescription",
6684
+ # },
6685
+ # expected_version: 1,
6686
+ # })
6687
+ #
6688
+ # @example Response structure
6689
+ #
6690
+ # resp.version #=> Integer
6691
+ #
6692
+ # @overload update_billing_group(params = {})
6693
+ # @param [Hash] params ({})
6694
+ def update_billing_group(params = {}, options = {})
6695
+ req = build_request(:update_billing_group, params)
6696
+ req.send_request(options)
6697
+ end
6698
+
6079
6699
  # Updates a registered CA certificate.
6080
6700
  #
6081
6701
  # @option params [required, String] :certificate_id
@@ -6159,6 +6779,69 @@ module Aws::IoT
6159
6779
  req.send_request(options)
6160
6780
  end
6161
6781
 
6782
+ # Updates a dynamic thing group.
6783
+ #
6784
+ # @option params [required, String] :thing_group_name
6785
+ # The name of the dynamic thing group to update.
6786
+ #
6787
+ # @option params [required, Types::ThingGroupProperties] :thing_group_properties
6788
+ # The dynamic thing group properties to update.
6789
+ #
6790
+ # @option params [Integer] :expected_version
6791
+ # The expected version of the dynamic thing group to update.
6792
+ #
6793
+ # @option params [String] :index_name
6794
+ # The dynamic thing group index to update.
6795
+ #
6796
+ # <note markdown="1"> Currently one index is supported: 'AWS\_Things'.
6797
+ #
6798
+ # </note>
6799
+ #
6800
+ # @option params [String] :query_string
6801
+ # The dynamic thing group search query string to update.
6802
+ #
6803
+ # @option params [String] :query_version
6804
+ # The dynamic thing group query version to update.
6805
+ #
6806
+ # <note markdown="1"> Currently one query version is supported: "2017-09-30". If not
6807
+ # specified, the query version defaults to this value.
6808
+ #
6809
+ # </note>
6810
+ #
6811
+ # @return [Types::UpdateDynamicThingGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6812
+ #
6813
+ # * {Types::UpdateDynamicThingGroupResponse#version #version} => Integer
6814
+ #
6815
+ # @example Request syntax with placeholder values
6816
+ #
6817
+ # resp = client.update_dynamic_thing_group({
6818
+ # thing_group_name: "ThingGroupName", # required
6819
+ # thing_group_properties: { # required
6820
+ # thing_group_description: "ThingGroupDescription",
6821
+ # attribute_payload: {
6822
+ # attributes: {
6823
+ # "AttributeName" => "AttributeValue",
6824
+ # },
6825
+ # merge: false,
6826
+ # },
6827
+ # },
6828
+ # expected_version: 1,
6829
+ # index_name: "IndexName",
6830
+ # query_string: "QueryString",
6831
+ # query_version: "QueryVersion",
6832
+ # })
6833
+ #
6834
+ # @example Response structure
6835
+ #
6836
+ # resp.version #=> Integer
6837
+ #
6838
+ # @overload update_dynamic_thing_group(params = {})
6839
+ # @param [Hash] params ({})
6840
+ def update_dynamic_thing_group(params = {}, options = {})
6841
+ req = build_request(:update_dynamic_thing_group, params)
6842
+ req.send_request(options)
6843
+ end
6844
+
6162
6845
  # Updates the event configurations.
6163
6846
  #
6164
6847
  # @option params [Hash<String,Types::Configuration>] :event_configurations
@@ -6198,6 +6881,7 @@ module Aws::IoT
6198
6881
  # resp = client.update_indexing_configuration({
6199
6882
  # thing_indexing_configuration: {
6200
6883
  # thing_indexing_mode: "OFF", # required, accepts OFF, REGISTRY, REGISTRY_AND_SHADOW
6884
+ # thing_connectivity_indexing_mode: "OFF", # accepts OFF, STATUS
6201
6885
  # },
6202
6886
  # thing_group_indexing_configuration: {
6203
6887
  # thing_group_indexing_mode: "OFF", # required, accepts OFF, ON
@@ -6211,6 +6895,74 @@ module Aws::IoT
6211
6895
  req.send_request(options)
6212
6896
  end
6213
6897
 
6898
+ # Updates supported fields of the specified job.
6899
+ #
6900
+ # @option params [required, String] :job_id
6901
+ # The ID of the job to be updated.
6902
+ #
6903
+ # @option params [String] :description
6904
+ # A short text description of the job.
6905
+ #
6906
+ # @option params [Types::PresignedUrlConfig] :presigned_url_config
6907
+ # Configuration information for pre-signed S3 URLs.
6908
+ #
6909
+ # @option params [Types::JobExecutionsRolloutConfig] :job_executions_rollout_config
6910
+ # Allows you to create a staged rollout of the job.
6911
+ #
6912
+ # @option params [Types::AbortConfig] :abort_config
6913
+ # Allows you to create criteria to abort a job.
6914
+ #
6915
+ # @option params [Types::TimeoutConfig] :timeout_config
6916
+ # Specifies the amount of time each device has to finish its execution
6917
+ # of the job. The timer is started when the job execution status is set
6918
+ # to `IN_PROGRESS`. If the job execution status is not set to another
6919
+ # terminal state before the time expires, it will be automatically set
6920
+ # to `TIMED_OUT`.
6921
+ #
6922
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6923
+ #
6924
+ # @example Request syntax with placeholder values
6925
+ #
6926
+ # resp = client.update_job({
6927
+ # job_id: "JobId", # required
6928
+ # description: "JobDescription",
6929
+ # presigned_url_config: {
6930
+ # role_arn: "RoleArn",
6931
+ # expires_in_sec: 1,
6932
+ # },
6933
+ # job_executions_rollout_config: {
6934
+ # maximum_per_minute: 1,
6935
+ # exponential_rate: {
6936
+ # base_rate_per_minute: 1, # required
6937
+ # increment_factor: 1.0, # required
6938
+ # rate_increase_criteria: { # required
6939
+ # number_of_notified_things: 1,
6940
+ # number_of_succeeded_things: 1,
6941
+ # },
6942
+ # },
6943
+ # },
6944
+ # abort_config: {
6945
+ # criteria_list: [ # required
6946
+ # {
6947
+ # failure_type: "FAILED", # required, accepts FAILED, REJECTED, TIMED_OUT, ALL
6948
+ # action: "CANCEL", # required, accepts CANCEL
6949
+ # threshold_percentage: 1.0, # required
6950
+ # min_number_of_executed_things: 1, # required
6951
+ # },
6952
+ # ],
6953
+ # },
6954
+ # timeout_config: {
6955
+ # in_progress_timeout_in_minutes: 1,
6956
+ # },
6957
+ # })
6958
+ #
6959
+ # @overload update_job(params = {})
6960
+ # @param [Hash] params ({})
6961
+ def update_job(params = {}, options = {})
6962
+ req = build_request(:update_job, params)
6963
+ req.send_request(options)
6964
+ end
6965
+
6214
6966
  # Updates a role alias.
6215
6967
  #
6216
6968
  # @option params [required, String] :role_alias
@@ -6551,6 +7303,12 @@ module Aws::IoT
6551
7303
  # @option params [Array<String>] :thing_groups_to_remove
6552
7304
  # The groups from which the thing will be removed.
6553
7305
  #
7306
+ # @option params [Boolean] :override_dynamic_groups
7307
+ # Override dynamic thing groups with static thing groups when 10-group
7308
+ # limit is reached. If a thing belongs to 10 thing groups, and one or
7309
+ # more of those groups are dynamic thing groups, adding a thing to a
7310
+ # static group removes the thing from the last dynamic group.
7311
+ #
6554
7312
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6555
7313
  #
6556
7314
  # @example Request syntax with placeholder values
@@ -6559,6 +7317,7 @@ module Aws::IoT
6559
7317
  # thing_name: "ThingName",
6560
7318
  # thing_groups_to_add: ["ThingGroupName"],
6561
7319
  # thing_groups_to_remove: ["ThingGroupName"],
7320
+ # override_dynamic_groups: false,
6562
7321
  # })
6563
7322
  #
6564
7323
  # @overload update_thing_groups_for_thing(params = {})
@@ -6625,7 +7384,7 @@ module Aws::IoT
6625
7384
  params: params,
6626
7385
  config: config)
6627
7386
  context[:gem_name] = 'aws-sdk-iot'
6628
- context[:gem_version] = '1.18.0'
7387
+ context[:gem_version] = '1.19.0'
6629
7388
  Seahorse::Client::Request.new(handlers, context)
6630
7389
  end
6631
7390