aws-sdk-iot 1.137.0 → 1.139.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5a51d136f0044d776ab3a569c7f2081ff6b70552e960907b44d18aec890bdd8f
4
- data.tar.gz: 0f414843ab2f572753485b47e044661d4211402a6d0ecd901106c14efe106433
3
+ metadata.gz: 0a90d0dc0dc9d4c7cc38efdbff2fd137c6a0966f53ab4365d55853b89a2c729f
4
+ data.tar.gz: 53e8bcf23f214470b0e62b04b7e3d467f7ae31e18df3c461e21c52e2bac6e2fe
5
5
  SHA512:
6
- metadata.gz: dd53f1465dfa49e61bd747d9d727edf7470fbd8cf735b09bdb4cfc55fd2494abafaa143147537d0983698c4d4a1aaf6e6b17bf64850eae9359b44d8e2c075625
7
- data.tar.gz: f245069310058019821adaf690c61e2d6157ce633bccb0b1713e216cb718283bac61f9a5025d5159bc7e95254fb55b56fc283c91bc0dbce460a3e1b9d745c809
6
+ metadata.gz: 8f5d367bf90d10ecd5117b515ae57e37d0172b61e5aa5147d9ebbc4966294ccfba1aab5ca1a9d389480cdbab189e3ee510503b90478bd15da89bb83b22667a3d
7
+ data.tar.gz: 46843aa8b6b42abd7061c6a3404762021596138f1cd161e6961defa74e967dc134b2c6255703613e570ca3370470d216fc88da58dcaafa7487c2ee64232a0094
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.139.0 (2024-11-15)
5
+ ------------------
6
+
7
+ * Feature - This release allows AWS IoT Core users to enrich MQTT messages with propagating attributes, to associate a thing to a connection, and to enable Online Certificate Status Protocol (OCSP) stapling for TLS X.509 server certificates through private endpoints.
8
+
9
+ 1.138.0 (2024-11-06)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.137.0 (2024-10-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.137.0
1
+ 1.139.0
@@ -833,6 +833,22 @@ module Aws::IoT
833
833
  # The principal, which can be a certificate ARN (as returned from the
834
834
  # CreateCertificate operation) or an Amazon Cognito ID.
835
835
  #
836
+ # @option params [String] :thing_principal_type
837
+ # The type of the relation you want to specify when you attach a
838
+ # principal to a thing.
839
+ #
840
+ # * `EXCLUSIVE_THING` - Attaches the specified principal to the
841
+ # specified thing, exclusively. The thing will be the only thing
842
+ # that’s attached to the principal.
843
+ #
844
+ # ^
845
+ # ^
846
+ #
847
+ # * `NON_EXCLUSIVE_THING` - Attaches the specified principal to the
848
+ # specified thing. Multiple things can be attached to the principal.
849
+ #
850
+ # ^
851
+ #
836
852
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
837
853
  #
838
854
  # @example Request syntax with placeholder values
@@ -840,6 +856,7 @@ module Aws::IoT
840
856
  # resp = client.attach_thing_principal({
841
857
  # thing_name: "ThingName", # required
842
858
  # principal: "Principal", # required
859
+ # thing_principal_type: "EXCLUSIVE_THING", # accepts EXCLUSIVE_THING, NON_EXCLUSIVE_THING
843
860
  # })
844
861
  #
845
862
  # @overload attach_thing_principal(params = {})
@@ -1379,9 +1396,9 @@ module Aws::IoT
1379
1396
  #
1380
1397
  # On Linux and OS X, the command is:
1381
1398
  #
1382
- # `$ ls my-csr-directory/ | xargs -I \{\} aws iot
1399
+ # `$ ls my-csr-directory/ | xargs -I {} aws iot
1383
1400
  # create-certificate-from-csr --certificate-signing-request
1384
- # file://my-csr-directory/\{\}`
1401
+ # file://my-csr-directory/{}`
1385
1402
  #
1386
1403
  # This command lists all of the CSRs in my-csr-directory and pipes each
1387
1404
  # CSR file name to the `aws iot create-certificate-from-csr` Amazon Web
@@ -1391,15 +1408,15 @@ module Aws::IoT
1391
1408
  # You can also run the `aws iot create-certificate-from-csr` part of the
1392
1409
  # command in parallel to speed up the certificate creation process:
1393
1410
  #
1394
- # `$ ls my-csr-directory/ | xargs -P 10 -I \{\} aws iot
1411
+ # `$ ls my-csr-directory/ | xargs -P 10 -I {} aws iot
1395
1412
  # create-certificate-from-csr --certificate-signing-request
1396
- # file://my-csr-directory/\{\} `
1413
+ # file://my-csr-directory/{} `
1397
1414
  #
1398
1415
  # On Windows PowerShell, the command to create certificates for all CSRs
1399
1416
  # in my-csr-directory is:
1400
1417
  #
1401
- # `> ls -Name my-csr-directory | %\{aws iot create-certificate-from-csr
1402
- # --certificate-signing-request file://my-csr-directory/$_\} `
1418
+ # `> ls -Name my-csr-directory | %{aws iot create-certificate-from-csr
1419
+ # --certificate-signing-request file://my-csr-directory/$_} `
1403
1420
  #
1404
1421
  # On a Windows command prompt, the command to create certificates for
1405
1422
  # all CSRs in my-csr-directory is:
@@ -1818,6 +1835,8 @@ module Aws::IoT
1818
1835
  # },
1819
1836
  # server_certificate_config: {
1820
1837
  # enable_ocsp_check: false,
1838
+ # ocsp_lambda_arn: "OCSPLambdaArn",
1839
+ # ocsp_authorized_responder_arn: "AcmCertificateArn",
1821
1840
  # },
1822
1841
  # authentication_type: "CUSTOM_AUTH_X509", # accepts CUSTOM_AUTH_X509, CUSTOM_AUTH, AWS_X509, AWS_SIGV4, DEFAULT
1823
1842
  # application_protocol: "SECURE_MQTT", # accepts SECURE_MQTT, MQTT_WSS, HTTPS, DEFAULT
@@ -3523,7 +3542,7 @@ module Aws::IoT
3523
3542
  # The attribute payload, which consists of up to three name/value pairs
3524
3543
  # in a JSON document. For example:
3525
3544
  #
3526
- # `\{"attributes":\{"string1":"string2"\}\}`
3545
+ # `{"attributes":{"string1":"string2"}}`
3527
3546
  #
3528
3547
  # @option params [String] :billing_group_name
3529
3548
  # The name of the billing group the thing will be added to.
@@ -3666,6 +3685,15 @@ module Aws::IoT
3666
3685
  # thing_type_properties: {
3667
3686
  # thing_type_description: "ThingTypeDescription",
3668
3687
  # searchable_attributes: ["AttributeName"],
3688
+ # mqtt5_configuration: {
3689
+ # propagating_attributes: [
3690
+ # {
3691
+ # user_property_key: "UserPropertyKeyName",
3692
+ # thing_attribute: "AttributeName",
3693
+ # connection_attribute: "ConnectionAttributeName",
3694
+ # },
3695
+ # ],
3696
+ # },
3669
3697
  # },
3670
3698
  # tags: [
3671
3699
  # {
@@ -6139,6 +6167,8 @@ module Aws::IoT
6139
6167
  # resp.last_status_change_date #=> Time
6140
6168
  # resp.tls_config.security_policy #=> String
6141
6169
  # resp.server_certificate_config.enable_ocsp_check #=> Boolean
6170
+ # resp.server_certificate_config.ocsp_lambda_arn #=> String
6171
+ # resp.server_certificate_config.ocsp_authorized_responder_arn #=> String
6142
6172
  # resp.authentication_type #=> String, one of "CUSTOM_AUTH_X509", "CUSTOM_AUTH", "AWS_X509", "AWS_SIGV4", "DEFAULT"
6143
6173
  # resp.application_protocol #=> String, one of "SECURE_MQTT", "MQTT_WSS", "HTTPS", "DEFAULT"
6144
6174
  # resp.client_certificate_config.client_certificate_callback_arn #=> String
@@ -7143,6 +7173,10 @@ module Aws::IoT
7143
7173
  # resp.thing_type_properties.thing_type_description #=> String
7144
7174
  # resp.thing_type_properties.searchable_attributes #=> Array
7145
7175
  # resp.thing_type_properties.searchable_attributes[0] #=> String
7176
+ # resp.thing_type_properties.mqtt5_configuration.propagating_attributes #=> Array
7177
+ # resp.thing_type_properties.mqtt5_configuration.propagating_attributes[0].user_property_key #=> String
7178
+ # resp.thing_type_properties.mqtt5_configuration.propagating_attributes[0].thing_attribute #=> String
7179
+ # resp.thing_type_properties.mqtt5_configuration.propagating_attributes[0].connection_attribute #=> String
7146
7180
  # resp.thing_type_metadata.deprecated #=> Boolean
7147
7181
  # resp.thing_type_metadata.deprecation_date #=> Time
7148
7182
  # resp.thing_type_metadata.creation_date #=> Time
@@ -10675,6 +10709,75 @@ module Aws::IoT
10675
10709
  req.send_request(options)
10676
10710
  end
10677
10711
 
10712
+ # Lists the things associated with the specified principal. A principal
10713
+ # can be an X.509 certificate or an Amazon Cognito ID.
10714
+ #
10715
+ # Requires permission to access the [ListPrincipalThings][1] action.
10716
+ #
10717
+ #
10718
+ #
10719
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
10720
+ #
10721
+ # @option params [String] :next_token
10722
+ # To retrieve the next set of results, the `nextToken` value from a
10723
+ # previous response; otherwise **null** to receive the first set of
10724
+ # results.
10725
+ #
10726
+ # @option params [Integer] :max_results
10727
+ # The maximum number of results to return in this operation.
10728
+ #
10729
+ # @option params [required, String] :principal
10730
+ # The principal. A principal can be an X.509 certificate or an Amazon
10731
+ # Cognito ID.
10732
+ #
10733
+ # @option params [String] :thing_principal_type
10734
+ # The type of the relation you want to filter in the response. If no
10735
+ # value is provided in this field, the response will list all things,
10736
+ # including both the `EXCLUSIVE_THING` and `NON_EXCLUSIVE_THING`
10737
+ # attachment types.
10738
+ #
10739
+ # * `EXCLUSIVE_THING` - Attaches the specified principal to the
10740
+ # specified thing, exclusively. The thing will be the only thing
10741
+ # that’s attached to the principal.
10742
+ #
10743
+ # ^
10744
+ # ^
10745
+ #
10746
+ # * `NON_EXCLUSIVE_THING` - Attaches the specified principal to the
10747
+ # specified thing. Multiple things can be attached to the principal.
10748
+ #
10749
+ # ^
10750
+ #
10751
+ # @return [Types::ListPrincipalThingsV2Response] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10752
+ #
10753
+ # * {Types::ListPrincipalThingsV2Response#principal_thing_objects #principal_thing_objects} => Array<Types::PrincipalThingObject>
10754
+ # * {Types::ListPrincipalThingsV2Response#next_token #next_token} => String
10755
+ #
10756
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
10757
+ #
10758
+ # @example Request syntax with placeholder values
10759
+ #
10760
+ # resp = client.list_principal_things_v2({
10761
+ # next_token: "NextToken",
10762
+ # max_results: 1,
10763
+ # principal: "Principal", # required
10764
+ # thing_principal_type: "EXCLUSIVE_THING", # accepts EXCLUSIVE_THING, NON_EXCLUSIVE_THING
10765
+ # })
10766
+ #
10767
+ # @example Response structure
10768
+ #
10769
+ # resp.principal_thing_objects #=> Array
10770
+ # resp.principal_thing_objects[0].thing_name #=> String
10771
+ # resp.principal_thing_objects[0].thing_principal_type #=> String, one of "EXCLUSIVE_THING", "NON_EXCLUSIVE_THING"
10772
+ # resp.next_token #=> String
10773
+ #
10774
+ # @overload list_principal_things_v2(params = {})
10775
+ # @param [Hash] params ({})
10776
+ def list_principal_things_v2(params = {}, options = {})
10777
+ req = build_request(:list_principal_things_v2, params)
10778
+ req.send_request(options)
10779
+ end
10780
+
10678
10781
  # A list of provisioning template versions.
10679
10782
  #
10680
10783
  # Requires permission to access the
@@ -11457,6 +11560,74 @@ module Aws::IoT
11457
11560
  req.send_request(options)
11458
11561
  end
11459
11562
 
11563
+ # Lists the principals associated with the specified thing. A principal
11564
+ # can be an X.509 certificate or an Amazon Cognito ID.
11565
+ #
11566
+ # Requires permission to access the [ListThingPrincipals][1] action.
11567
+ #
11568
+ #
11569
+ #
11570
+ # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
11571
+ #
11572
+ # @option params [String] :next_token
11573
+ # To retrieve the next set of results, the `nextToken` value from a
11574
+ # previous response; otherwise **null** to receive the first set of
11575
+ # results.
11576
+ #
11577
+ # @option params [Integer] :max_results
11578
+ # The maximum number of results to return in this operation.
11579
+ #
11580
+ # @option params [required, String] :thing_name
11581
+ # The name of the thing.
11582
+ #
11583
+ # @option params [String] :thing_principal_type
11584
+ # The type of the relation you want to filter in the response. If no
11585
+ # value is provided in this field, the response will list all
11586
+ # principals, including both the `EXCLUSIVE_THING` and
11587
+ # `NON_EXCLUSIVE_THING` attachment types.
11588
+ #
11589
+ # * `EXCLUSIVE_THING` - Attaches the specified principal to the
11590
+ # specified thing, exclusively. The thing will be the only thing
11591
+ # that’s attached to the principal.
11592
+ #
11593
+ # ^
11594
+ # ^
11595
+ #
11596
+ # * `NON_EXCLUSIVE_THING` - Attaches the specified principal to the
11597
+ # specified thing. Multiple things can be attached to the principal.
11598
+ #
11599
+ # ^
11600
+ #
11601
+ # @return [Types::ListThingPrincipalsV2Response] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11602
+ #
11603
+ # * {Types::ListThingPrincipalsV2Response#thing_principal_objects #thing_principal_objects} => Array<Types::ThingPrincipalObject>
11604
+ # * {Types::ListThingPrincipalsV2Response#next_token #next_token} => String
11605
+ #
11606
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
11607
+ #
11608
+ # @example Request syntax with placeholder values
11609
+ #
11610
+ # resp = client.list_thing_principals_v2({
11611
+ # next_token: "NextToken",
11612
+ # max_results: 1,
11613
+ # thing_name: "ThingName", # required
11614
+ # thing_principal_type: "EXCLUSIVE_THING", # accepts EXCLUSIVE_THING, NON_EXCLUSIVE_THING
11615
+ # })
11616
+ #
11617
+ # @example Response structure
11618
+ #
11619
+ # resp.thing_principal_objects #=> Array
11620
+ # resp.thing_principal_objects[0].principal #=> String
11621
+ # resp.thing_principal_objects[0].thing_principal_type #=> String, one of "EXCLUSIVE_THING", "NON_EXCLUSIVE_THING"
11622
+ # resp.next_token #=> String
11623
+ #
11624
+ # @overload list_thing_principals_v2(params = {})
11625
+ # @param [Hash] params ({})
11626
+ def list_thing_principals_v2(params = {}, options = {})
11627
+ req = build_request(:list_thing_principals_v2, params)
11628
+ req.send_request(options)
11629
+ end
11630
+
11460
11631
  # Information about the thing registration tasks.
11461
11632
  #
11462
11633
  # @option params [required, String] :task_id
@@ -11594,6 +11765,10 @@ module Aws::IoT
11594
11765
  # resp.thing_types[0].thing_type_properties.thing_type_description #=> String
11595
11766
  # resp.thing_types[0].thing_type_properties.searchable_attributes #=> Array
11596
11767
  # resp.thing_types[0].thing_type_properties.searchable_attributes[0] #=> String
11768
+ # resp.thing_types[0].thing_type_properties.mqtt5_configuration.propagating_attributes #=> Array
11769
+ # resp.thing_types[0].thing_type_properties.mqtt5_configuration.propagating_attributes[0].user_property_key #=> String
11770
+ # resp.thing_types[0].thing_type_properties.mqtt5_configuration.propagating_attributes[0].thing_attribute #=> String
11771
+ # resp.thing_types[0].thing_type_properties.mqtt5_configuration.propagating_attributes[0].connection_attribute #=> String
11597
11772
  # resp.thing_types[0].thing_type_metadata.deprecated #=> Boolean
11598
11773
  # resp.thing_types[0].thing_type_metadata.deprecation_date #=> Time
11599
11774
  # resp.thing_types[0].thing_type_metadata.creation_date #=> Time
@@ -14275,6 +14450,8 @@ module Aws::IoT
14275
14450
  # },
14276
14451
  # server_certificate_config: {
14277
14452
  # enable_ocsp_check: false,
14453
+ # ocsp_lambda_arn: "OCSPLambdaArn",
14454
+ # ocsp_authorized_responder_arn: "AcmCertificateArn",
14278
14455
  # },
14279
14456
  # authentication_type: "CUSTOM_AUTH_X509", # accepts CUSTOM_AUTH_X509, CUSTOM_AUTH, AWS_X509, AWS_SIGV4, DEFAULT
14280
14457
  # application_protocol: "SECURE_MQTT", # accepts SECURE_MQTT, MQTT_WSS, HTTPS, DEFAULT
@@ -15337,7 +15514,7 @@ module Aws::IoT
15337
15514
  # A list of thing attributes, a JSON string containing name-value pairs.
15338
15515
  # For example:
15339
15516
  #
15340
- # `\{"attributes":\{"name1":"value2"\}\}`
15517
+ # `{"attributes":{"name1":"value2"}}`
15341
15518
  #
15342
15519
  # This data is used to add new attributes or update existing attributes.
15343
15520
  #
@@ -15466,6 +15643,44 @@ module Aws::IoT
15466
15643
  req.send_request(options)
15467
15644
  end
15468
15645
 
15646
+ # Updates a thing type.
15647
+ #
15648
+ # @option params [required, String] :thing_type_name
15649
+ # The name of a thing type.
15650
+ #
15651
+ # @option params [Types::ThingTypeProperties] :thing_type_properties
15652
+ # The ThingTypeProperties contains information about the thing type
15653
+ # including: a thing type description, and a list of searchable thing
15654
+ # attribute names.
15655
+ #
15656
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
15657
+ #
15658
+ # @example Request syntax with placeholder values
15659
+ #
15660
+ # resp = client.update_thing_type({
15661
+ # thing_type_name: "ThingTypeName", # required
15662
+ # thing_type_properties: {
15663
+ # thing_type_description: "ThingTypeDescription",
15664
+ # searchable_attributes: ["AttributeName"],
15665
+ # mqtt5_configuration: {
15666
+ # propagating_attributes: [
15667
+ # {
15668
+ # user_property_key: "UserPropertyKeyName",
15669
+ # thing_attribute: "AttributeName",
15670
+ # connection_attribute: "ConnectionAttributeName",
15671
+ # },
15672
+ # ],
15673
+ # },
15674
+ # },
15675
+ # })
15676
+ #
15677
+ # @overload update_thing_type(params = {})
15678
+ # @param [Hash] params ({})
15679
+ def update_thing_type(params = {}, options = {})
15680
+ req = build_request(:update_thing_type, params)
15681
+ req.send_request(options)
15682
+ end
15683
+
15469
15684
  # Updates a topic rule destination. You use this to change the status,
15470
15685
  # endpoint URL, or confirmation URL of the destination.
15471
15686
  #
@@ -15613,7 +15828,7 @@ module Aws::IoT
15613
15828
  tracer: tracer
15614
15829
  )
15615
15830
  context[:gem_name] = 'aws-sdk-iot'
15616
- context[:gem_version] = '1.137.0'
15831
+ context[:gem_version] = '1.139.0'
15617
15832
  Seahorse::Client::Request.new(handlers, context)
15618
15833
  end
15619
15834
 
@@ -245,6 +245,7 @@ module Aws::IoT
245
245
  ConfirmationToken = Shapes::StringShape.new(name: 'ConfirmationToken')
246
246
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
247
247
  ConflictingResourceUpdateException = Shapes::StructureShape.new(name: 'ConflictingResourceUpdateException')
248
+ ConnectionAttributeName = Shapes::StringShape.new(name: 'ConnectionAttributeName')
248
249
  ConnectivityTimestamp = Shapes::IntegerShape.new(name: 'ConnectivityTimestamp')
249
250
  ConsecutiveDatapointsToAlarm = Shapes::IntegerShape.new(name: 'ConsecutiveDatapointsToAlarm')
250
251
  ConsecutiveDatapointsToClear = Shapes::IntegerShape.new(name: 'ConsecutiveDatapointsToClear')
@@ -784,6 +785,8 @@ module Aws::IoT
784
785
  ListPrincipalPoliciesResponse = Shapes::StructureShape.new(name: 'ListPrincipalPoliciesResponse')
785
786
  ListPrincipalThingsRequest = Shapes::StructureShape.new(name: 'ListPrincipalThingsRequest')
786
787
  ListPrincipalThingsResponse = Shapes::StructureShape.new(name: 'ListPrincipalThingsResponse')
788
+ ListPrincipalThingsV2Request = Shapes::StructureShape.new(name: 'ListPrincipalThingsV2Request')
789
+ ListPrincipalThingsV2Response = Shapes::StructureShape.new(name: 'ListPrincipalThingsV2Response')
787
790
  ListProvisioningTemplateVersionsRequest = Shapes::StructureShape.new(name: 'ListProvisioningTemplateVersionsRequest')
788
791
  ListProvisioningTemplateVersionsResponse = Shapes::StructureShape.new(name: 'ListProvisioningTemplateVersionsResponse')
789
792
  ListProvisioningTemplatesRequest = Shapes::StructureShape.new(name: 'ListProvisioningTemplatesRequest')
@@ -816,6 +819,8 @@ module Aws::IoT
816
819
  ListThingGroupsResponse = Shapes::StructureShape.new(name: 'ListThingGroupsResponse')
817
820
  ListThingPrincipalsRequest = Shapes::StructureShape.new(name: 'ListThingPrincipalsRequest')
818
821
  ListThingPrincipalsResponse = Shapes::StructureShape.new(name: 'ListThingPrincipalsResponse')
822
+ ListThingPrincipalsV2Request = Shapes::StructureShape.new(name: 'ListThingPrincipalsV2Request')
823
+ ListThingPrincipalsV2Response = Shapes::StructureShape.new(name: 'ListThingPrincipalsV2Response')
819
824
  ListThingRegistrationTaskReportsRequest = Shapes::StructureShape.new(name: 'ListThingRegistrationTaskReportsRequest')
820
825
  ListThingRegistrationTaskReportsResponse = Shapes::StructureShape.new(name: 'ListThingRegistrationTaskReportsResponse')
821
826
  ListThingRegistrationTasksRequest = Shapes::StructureShape.new(name: 'ListThingRegistrationTasksRequest')
@@ -888,6 +893,7 @@ module Aws::IoT
888
893
  MitigationActionType = Shapes::StringShape.new(name: 'MitigationActionType')
889
894
  MitigationActionsTaskId = Shapes::StringShape.new(name: 'MitigationActionsTaskId')
890
895
  ModelStatus = Shapes::StringShape.new(name: 'ModelStatus')
896
+ Mqtt5Configuration = Shapes::StructureShape.new(name: 'Mqtt5Configuration')
891
897
  MqttClientId = Shapes::StringShape.new(name: 'MqttClientId')
892
898
  MqttContext = Shapes::StructureShape.new(name: 'MqttContext')
893
899
  MqttHeaders = Shapes::StructureShape.new(name: 'MqttHeaders')
@@ -907,6 +913,7 @@ module Aws::IoT
907
913
  NumberList = Shapes::ListShape.new(name: 'NumberList')
908
914
  NumberOfRetries = Shapes::IntegerShape.new(name: 'NumberOfRetries')
909
915
  NumberOfThings = Shapes::IntegerShape.new(name: 'NumberOfThings')
916
+ OCSPLambdaArn = Shapes::StringShape.new(name: 'OCSPLambdaArn')
910
917
  OTAUpdateArn = Shapes::StringShape.new(name: 'OTAUpdateArn')
911
918
  OTAUpdateDescription = Shapes::StringShape.new(name: 'OTAUpdateDescription')
912
919
  OTAUpdateErrorMessage = Shapes::StringShape.new(name: 'OTAUpdateErrorMessage')
@@ -976,10 +983,14 @@ module Aws::IoT
976
983
  Principal = Shapes::StringShape.new(name: 'Principal')
977
984
  PrincipalArn = Shapes::StringShape.new(name: 'PrincipalArn')
978
985
  PrincipalId = Shapes::StringShape.new(name: 'PrincipalId')
986
+ PrincipalThingObject = Shapes::StructureShape.new(name: 'PrincipalThingObject')
987
+ PrincipalThingObjects = Shapes::ListShape.new(name: 'PrincipalThingObjects')
979
988
  Principals = Shapes::ListShape.new(name: 'Principals')
980
989
  PrivateKey = Shapes::StringShape.new(name: 'PrivateKey')
981
990
  ProcessingTargetName = Shapes::StringShape.new(name: 'ProcessingTargetName')
982
991
  ProcessingTargetNameList = Shapes::ListShape.new(name: 'ProcessingTargetNameList')
992
+ PropagatingAttribute = Shapes::StructureShape.new(name: 'PropagatingAttribute')
993
+ PropagatingAttributeList = Shapes::ListShape.new(name: 'PropagatingAttributeList')
983
994
  Protocol = Shapes::StringShape.new(name: 'Protocol')
984
995
  Protocols = Shapes::ListShape.new(name: 'Protocols')
985
996
  ProvisioningHook = Shapes::StructureShape.new(name: 'ProvisioningHook')
@@ -1250,6 +1261,9 @@ module Aws::IoT
1250
1261
  ThingIndexingMode = Shapes::StringShape.new(name: 'ThingIndexingMode')
1251
1262
  ThingName = Shapes::StringShape.new(name: 'ThingName')
1252
1263
  ThingNameList = Shapes::ListShape.new(name: 'ThingNameList')
1264
+ ThingPrincipalObject = Shapes::StructureShape.new(name: 'ThingPrincipalObject')
1265
+ ThingPrincipalObjects = Shapes::ListShape.new(name: 'ThingPrincipalObjects')
1266
+ ThingPrincipalType = Shapes::StringShape.new(name: 'ThingPrincipalType')
1253
1267
  ThingTypeArn = Shapes::StringShape.new(name: 'ThingTypeArn')
1254
1268
  ThingTypeDefinition = Shapes::StructureShape.new(name: 'ThingTypeDefinition')
1255
1269
  ThingTypeDescription = Shapes::StringShape.new(name: 'ThingTypeDescription')
@@ -1357,6 +1371,8 @@ module Aws::IoT
1357
1371
  UpdateThingGroupsForThingResponse = Shapes::StructureShape.new(name: 'UpdateThingGroupsForThingResponse')
1358
1372
  UpdateThingRequest = Shapes::StructureShape.new(name: 'UpdateThingRequest')
1359
1373
  UpdateThingResponse = Shapes::StructureShape.new(name: 'UpdateThingResponse')
1374
+ UpdateThingTypeRequest = Shapes::StructureShape.new(name: 'UpdateThingTypeRequest')
1375
+ UpdateThingTypeResponse = Shapes::StructureShape.new(name: 'UpdateThingTypeResponse')
1360
1376
  UpdateTopicRuleDestinationRequest = Shapes::StructureShape.new(name: 'UpdateTopicRuleDestinationRequest')
1361
1377
  UpdateTopicRuleDestinationResponse = Shapes::StructureShape.new(name: 'UpdateTopicRuleDestinationResponse')
1362
1378
  Url = Shapes::StringShape.new(name: 'Url')
@@ -1364,6 +1380,7 @@ module Aws::IoT
1364
1380
  UserProperties = Shapes::ListShape.new(name: 'UserProperties')
1365
1381
  UserProperty = Shapes::StructureShape.new(name: 'UserProperty')
1366
1382
  UserPropertyKey = Shapes::StringShape.new(name: 'UserPropertyKey')
1383
+ UserPropertyKeyName = Shapes::StringShape.new(name: 'UserPropertyKeyName')
1367
1384
  UserPropertyValue = Shapes::StringShape.new(name: 'UserPropertyValue')
1368
1385
  Valid = Shapes::BooleanShape.new(name: 'Valid')
1369
1386
  ValidateSecurityProfileBehaviorsRequest = Shapes::StructureShape.new(name: 'ValidateSecurityProfileBehaviorsRequest')
@@ -1554,6 +1571,7 @@ module Aws::IoT
1554
1571
 
1555
1572
  AttachThingPrincipalRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
1556
1573
  AttachThingPrincipalRequest.add_member(:principal, Shapes::ShapeRef.new(shape: Principal, required: true, location: "header", location_name: "x-amzn-principal"))
1574
+ AttachThingPrincipalRequest.add_member(:thing_principal_type, Shapes::ShapeRef.new(shape: ThingPrincipalType, location: "querystring", location_name: "thingPrincipalType"))
1557
1575
  AttachThingPrincipalRequest.struct_class = Types::AttachThingPrincipalRequest
1558
1576
 
1559
1577
  AttachThingPrincipalResponse.struct_class = Types::AttachThingPrincipalResponse
@@ -3807,6 +3825,16 @@ module Aws::IoT
3807
3825
  ListPrincipalThingsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3808
3826
  ListPrincipalThingsResponse.struct_class = Types::ListPrincipalThingsResponse
3809
3827
 
3828
+ ListPrincipalThingsV2Request.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
3829
+ ListPrincipalThingsV2Request.add_member(:max_results, Shapes::ShapeRef.new(shape: RegistryMaxResults, location: "querystring", location_name: "maxResults"))
3830
+ ListPrincipalThingsV2Request.add_member(:principal, Shapes::ShapeRef.new(shape: Principal, required: true, location: "header", location_name: "x-amzn-principal"))
3831
+ ListPrincipalThingsV2Request.add_member(:thing_principal_type, Shapes::ShapeRef.new(shape: ThingPrincipalType, location: "querystring", location_name: "thingPrincipalType"))
3832
+ ListPrincipalThingsV2Request.struct_class = Types::ListPrincipalThingsV2Request
3833
+
3834
+ ListPrincipalThingsV2Response.add_member(:principal_thing_objects, Shapes::ShapeRef.new(shape: PrincipalThingObjects, location_name: "principalThingObjects"))
3835
+ ListPrincipalThingsV2Response.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3836
+ ListPrincipalThingsV2Response.struct_class = Types::ListPrincipalThingsV2Response
3837
+
3810
3838
  ListProvisioningTemplateVersionsRequest.add_member(:template_name, Shapes::ShapeRef.new(shape: TemplateName, required: true, location: "uri", location_name: "templateName"))
3811
3839
  ListProvisioningTemplateVersionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
3812
3840
  ListProvisioningTemplateVersionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
@@ -3945,6 +3973,16 @@ module Aws::IoT
3945
3973
  ListThingPrincipalsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3946
3974
  ListThingPrincipalsResponse.struct_class = Types::ListThingPrincipalsResponse
3947
3975
 
3976
+ ListThingPrincipalsV2Request.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
3977
+ ListThingPrincipalsV2Request.add_member(:max_results, Shapes::ShapeRef.new(shape: RegistryMaxResults, location: "querystring", location_name: "maxResults"))
3978
+ ListThingPrincipalsV2Request.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
3979
+ ListThingPrincipalsV2Request.add_member(:thing_principal_type, Shapes::ShapeRef.new(shape: ThingPrincipalType, location: "querystring", location_name: "thingPrincipalType"))
3980
+ ListThingPrincipalsV2Request.struct_class = Types::ListThingPrincipalsV2Request
3981
+
3982
+ ListThingPrincipalsV2Response.add_member(:thing_principal_objects, Shapes::ShapeRef.new(shape: ThingPrincipalObjects, location_name: "thingPrincipalObjects"))
3983
+ ListThingPrincipalsV2Response.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
3984
+ ListThingPrincipalsV2Response.struct_class = Types::ListThingPrincipalsV2Response
3985
+
3948
3986
  ListThingRegistrationTaskReportsRequest.add_member(:task_id, Shapes::ShapeRef.new(shape: TaskId, required: true, location: "uri", location_name: "taskId"))
3949
3987
  ListThingRegistrationTaskReportsRequest.add_member(:report_type, Shapes::ShapeRef.new(shape: ReportType, required: true, location: "querystring", location_name: "reportType"))
3950
3988
  ListThingRegistrationTaskReportsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
@@ -4150,6 +4188,9 @@ module Aws::IoT
4150
4188
  MitigationActionParams.add_member(:publish_finding_to_sns_params, Shapes::ShapeRef.new(shape: PublishFindingToSnsParams, location_name: "publishFindingToSnsParams"))
4151
4189
  MitigationActionParams.struct_class = Types::MitigationActionParams
4152
4190
 
4191
+ Mqtt5Configuration.add_member(:propagating_attributes, Shapes::ShapeRef.new(shape: PropagatingAttributeList, location_name: "propagatingAttributes"))
4192
+ Mqtt5Configuration.struct_class = Types::Mqtt5Configuration
4193
+
4153
4194
  MqttContext.add_member(:username, Shapes::ShapeRef.new(shape: MqttUsername, location_name: "username"))
4154
4195
  MqttContext.add_member(:password, Shapes::ShapeRef.new(shape: MqttPassword, location_name: "password"))
4155
4196
  MqttContext.add_member(:client_id, Shapes::ShapeRef.new(shape: MqttClientId, location_name: "clientId"))
@@ -4290,10 +4331,23 @@ module Aws::IoT
4290
4331
  PresignedUrlConfig.add_member(:expires_in_sec, Shapes::ShapeRef.new(shape: ExpiresInSec, location_name: "expiresInSec"))
4291
4332
  PresignedUrlConfig.struct_class = Types::PresignedUrlConfig
4292
4333
 
4334
+ PrincipalThingObject.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location_name: "thingName"))
4335
+ PrincipalThingObject.add_member(:thing_principal_type, Shapes::ShapeRef.new(shape: ThingPrincipalType, location_name: "thingPrincipalType"))
4336
+ PrincipalThingObject.struct_class = Types::PrincipalThingObject
4337
+
4338
+ PrincipalThingObjects.member = Shapes::ShapeRef.new(shape: PrincipalThingObject)
4339
+
4293
4340
  Principals.member = Shapes::ShapeRef.new(shape: PrincipalArn)
4294
4341
 
4295
4342
  ProcessingTargetNameList.member = Shapes::ShapeRef.new(shape: ProcessingTargetName)
4296
4343
 
4344
+ PropagatingAttribute.add_member(:user_property_key, Shapes::ShapeRef.new(shape: UserPropertyKeyName, location_name: "userPropertyKey"))
4345
+ PropagatingAttribute.add_member(:thing_attribute, Shapes::ShapeRef.new(shape: AttributeName, location_name: "thingAttribute"))
4346
+ PropagatingAttribute.add_member(:connection_attribute, Shapes::ShapeRef.new(shape: ConnectionAttributeName, location_name: "connectionAttribute"))
4347
+ PropagatingAttribute.struct_class = Types::PropagatingAttribute
4348
+
4349
+ PropagatingAttributeList.member = Shapes::ShapeRef.new(shape: PropagatingAttribute)
4350
+
4297
4351
  Protocols.member = Shapes::ShapeRef.new(shape: Protocol)
4298
4352
 
4299
4353
  ProvisioningHook.add_member(:payload_version, Shapes::ShapeRef.new(shape: PayloadVersion, location_name: "payloadVersion"))
@@ -4574,6 +4628,8 @@ module Aws::IoT
4574
4628
  ServerCertificateArns.member = Shapes::ShapeRef.new(shape: AcmCertificateArn)
4575
4629
 
4576
4630
  ServerCertificateConfig.add_member(:enable_ocsp_check, Shapes::ShapeRef.new(shape: EnableOCSPCheck, location_name: "enableOCSPCheck"))
4631
+ ServerCertificateConfig.add_member(:ocsp_lambda_arn, Shapes::ShapeRef.new(shape: OCSPLambdaArn, location_name: "ocspLambdaArn"))
4632
+ ServerCertificateConfig.add_member(:ocsp_authorized_responder_arn, Shapes::ShapeRef.new(shape: AcmCertificateArn, location_name: "ocspAuthorizedResponderArn"))
4577
4633
  ServerCertificateConfig.struct_class = Types::ServerCertificateConfig
4578
4634
 
4579
4635
  ServerCertificateSummary.add_member(:server_certificate_arn, Shapes::ShapeRef.new(shape: AcmCertificateArn, location_name: "serverCertificateArn"))
@@ -4877,6 +4933,12 @@ module Aws::IoT
4877
4933
 
4878
4934
  ThingNameList.member = Shapes::ShapeRef.new(shape: ThingName)
4879
4935
 
4936
+ ThingPrincipalObject.add_member(:principal, Shapes::ShapeRef.new(shape: Principal, required: true, location_name: "principal"))
4937
+ ThingPrincipalObject.add_member(:thing_principal_type, Shapes::ShapeRef.new(shape: ThingPrincipalType, location_name: "thingPrincipalType"))
4938
+ ThingPrincipalObject.struct_class = Types::ThingPrincipalObject
4939
+
4940
+ ThingPrincipalObjects.member = Shapes::ShapeRef.new(shape: ThingPrincipalObject)
4941
+
4880
4942
  ThingTypeDefinition.add_member(:thing_type_name, Shapes::ShapeRef.new(shape: ThingTypeName, location_name: "thingTypeName"))
4881
4943
  ThingTypeDefinition.add_member(:thing_type_arn, Shapes::ShapeRef.new(shape: ThingTypeArn, location_name: "thingTypeArn"))
4882
4944
  ThingTypeDefinition.add_member(:thing_type_properties, Shapes::ShapeRef.new(shape: ThingTypeProperties, location_name: "thingTypeProperties"))
@@ -4892,6 +4954,7 @@ module Aws::IoT
4892
4954
 
4893
4955
  ThingTypeProperties.add_member(:thing_type_description, Shapes::ShapeRef.new(shape: ThingTypeDescription, location_name: "thingTypeDescription"))
4894
4956
  ThingTypeProperties.add_member(:searchable_attributes, Shapes::ShapeRef.new(shape: SearchableAttributes, location_name: "searchableAttributes"))
4957
+ ThingTypeProperties.add_member(:mqtt5_configuration, Shapes::ShapeRef.new(shape: Mqtt5Configuration, location_name: "mqtt5Configuration"))
4895
4958
  ThingTypeProperties.struct_class = Types::ThingTypeProperties
4896
4959
 
4897
4960
  ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -5279,6 +5342,12 @@ module Aws::IoT
5279
5342
 
5280
5343
  UpdateThingResponse.struct_class = Types::UpdateThingResponse
5281
5344
 
5345
+ UpdateThingTypeRequest.add_member(:thing_type_name, Shapes::ShapeRef.new(shape: ThingTypeName, required: true, location: "uri", location_name: "thingTypeName"))
5346
+ UpdateThingTypeRequest.add_member(:thing_type_properties, Shapes::ShapeRef.new(shape: ThingTypeProperties, location_name: "thingTypeProperties"))
5347
+ UpdateThingTypeRequest.struct_class = Types::UpdateThingTypeRequest
5348
+
5349
+ UpdateThingTypeResponse.struct_class = Types::UpdateThingTypeResponse
5350
+
5282
5351
  UpdateTopicRuleDestinationRequest.add_member(:arn, Shapes::ShapeRef.new(shape: AwsArn, required: true, location_name: "arn"))
5283
5352
  UpdateTopicRuleDestinationRequest.add_member(:status, Shapes::ShapeRef.new(shape: TopicRuleDestinationStatus, required: true, location_name: "status"))
5284
5353
  UpdateTopicRuleDestinationRequest.struct_class = Types::UpdateTopicRuleDestinationRequest
@@ -7939,6 +8008,26 @@ module Aws::IoT
7939
8008
  )
7940
8009
  end)
7941
8010
 
8011
+ api.add_operation(:list_principal_things_v2, Seahorse::Model::Operation.new.tap do |o|
8012
+ o.name = "ListPrincipalThingsV2"
8013
+ o.http_method = "GET"
8014
+ o.http_request_uri = "/principals/things-v2"
8015
+ o.input = Shapes::ShapeRef.new(shape: ListPrincipalThingsV2Request)
8016
+ o.output = Shapes::ShapeRef.new(shape: ListPrincipalThingsV2Response)
8017
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
8018
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
8019
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
8020
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
8021
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
8022
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
8023
+ o[:pager] = Aws::Pager.new(
8024
+ limit_key: "max_results",
8025
+ tokens: {
8026
+ "next_token" => "next_token"
8027
+ }
8028
+ )
8029
+ end)
8030
+
7942
8031
  api.add_operation(:list_provisioning_template_versions, Seahorse::Model::Operation.new.tap do |o|
7943
8032
  o.name = "ListProvisioningTemplateVersions"
7944
8033
  o.http_method = "GET"
@@ -8215,6 +8304,26 @@ module Aws::IoT
8215
8304
  )
8216
8305
  end)
8217
8306
 
8307
+ api.add_operation(:list_thing_principals_v2, Seahorse::Model::Operation.new.tap do |o|
8308
+ o.name = "ListThingPrincipalsV2"
8309
+ o.http_method = "GET"
8310
+ o.http_request_uri = "/things/{thingName}/principals-v2"
8311
+ o.input = Shapes::ShapeRef.new(shape: ListThingPrincipalsV2Request)
8312
+ o.output = Shapes::ShapeRef.new(shape: ListThingPrincipalsV2Response)
8313
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
8314
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
8315
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
8316
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
8317
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
8318
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
8319
+ o[:pager] = Aws::Pager.new(
8320
+ limit_key: "max_results",
8321
+ tokens: {
8322
+ "next_token" => "next_token"
8323
+ }
8324
+ )
8325
+ end)
8326
+
8218
8327
  api.add_operation(:list_thing_registration_task_reports, Seahorse::Model::Operation.new.tap do |o|
8219
8328
  o.name = "ListThingRegistrationTaskReports"
8220
8329
  o.http_method = "GET"
@@ -9097,6 +9206,20 @@ module Aws::IoT
9097
9206
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
9098
9207
  end)
9099
9208
 
9209
+ api.add_operation(:update_thing_type, Seahorse::Model::Operation.new.tap do |o|
9210
+ o.name = "UpdateThingType"
9211
+ o.http_method = "PATCH"
9212
+ o.http_request_uri = "/thing-types/{thingTypeName}"
9213
+ o.input = Shapes::ShapeRef.new(shape: UpdateThingTypeRequest)
9214
+ o.output = Shapes::ShapeRef.new(shape: UpdateThingTypeResponse)
9215
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
9216
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
9217
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
9218
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
9219
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
9220
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
9221
+ end)
9222
+
9100
9223
  api.add_operation(:update_topic_rule_destination, Seahorse::Model::Operation.new.tap do |o|
9101
9224
  o.name = "UpdateTopicRuleDestination"
9102
9225
  o.http_method = "PATCH"