aws-sdk-iotsitewise 1.15.0 → 1.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ac4b695574efbb800c7b7fb99d8b5df540b14e4667763e13584da1a88124ad44
4
- data.tar.gz: 65be80a4c8c44ad80e4d2051ecd015ffbd9eedf7fd2d0f9c5c122bb10e92f795
3
+ metadata.gz: c1c4250665f98d39db5d87fa06f8cbb5eb64e2b0c897745513eacd2cad614269
4
+ data.tar.gz: 7c2cfb619ae75781cab4b9fc07cb25914604099bdd8a61635c499ed59ba8da54
5
5
  SHA512:
6
- metadata.gz: 1636c172907f9c13a3707bbe27ba578190c31b4c5e8fe1b93973ad5fe3b093f8229fc119c97cb17f78d1773681871bd8994efbcf86cef49af33162abaaa822d3
7
- data.tar.gz: 4c6397f8d3188110528769dbcfed58d2e1d6047761c62dd8d96c76e09f4cfcd38706389d851f49981b49bc5dbfd7ce1991b0f12486a8259545865ba22b72da40
6
+ metadata.gz: 5233fff7d8634c01cc76e27c632d3a4d62ed82f0caaa4e4c5f5249e52867bc4900c084bf8583fe644b77fd7d0379dac72eb4ebbe0f7527f6459fb5f1bce565b5
7
+ data.tar.gz: a0ed13dfa5515767b07cb1ee258746ba72a843f776d2f23629057f339a5791649bf10f295365697667a0f2e969571e50ade08813d4f01be1e239b664fbcd8810
@@ -49,6 +49,6 @@ require_relative 'aws-sdk-iotsitewise/customizations'
49
49
  # @!group service
50
50
  module Aws::IoTSiteWise
51
51
 
52
- GEM_VERSION = '1.15.0'
52
+ GEM_VERSION = '1.16.0'
53
53
 
54
54
  end
@@ -477,10 +477,10 @@ module Aws::IoTSiteWise
477
477
  # property's alias, see [UpdateAssetProperty][2].
478
478
  #
479
479
  # With respect to Unix epoch time, AWS IoT SiteWise accepts only TQVs
480
- # that have a timestamp of no more than 15 minutes in the past and no
481
- # more than 5 minutes in the future. AWS IoT SiteWise rejects timestamps
482
- # outside of the inclusive range of \[-15, +5\] minutes and returns a
483
- # `TimestampOutOfRangeException` error.
480
+ # that have a timestamp of no more than 7 days in the past and no more
481
+ # than 5 minutes in the future. AWS IoT SiteWise rejects timestamps
482
+ # outside of the inclusive range of \[-7 days, +5 minutes\] and returns
483
+ # a `TimestampOutOfRangeException` error.
484
484
  #
485
485
  # For each asset property, AWS IoT SiteWise overwrites TQVs with
486
486
  # duplicate timestamps unless the newer TQV has a different quality. For
@@ -736,6 +736,13 @@ module Aws::IoTSiteWise
736
736
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
737
737
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
738
738
  #
739
+ # @option params [Array<Types::AssetModelCompositeModelDefinition>] :asset_model_composite_models
740
+ # The composite asset models that are part of this asset model.
741
+ # Composite asset models are asset models that contain specific
742
+ # properties. Each composite model has a type that defines the
743
+ # properties that the composite model supports. Use composite asset
744
+ # models to define alarms on this asset model.
745
+ #
739
746
  # @option params [String] :client_token
740
747
  # A unique case-sensitive identifier that you can provide to ensure the
741
748
  # idempotency of the request. Don't reuse this client token if a new
@@ -767,7 +774,8 @@ module Aws::IoTSiteWise
767
774
  # asset_model_properties: [
768
775
  # {
769
776
  # name: "Name", # required
770
- # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN
777
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
778
+ # data_type_spec: "Name",
771
779
  # unit: "PropertyUnit",
772
780
  # type: { # required
773
781
  # attribute: {
@@ -813,6 +821,57 @@ module Aws::IoTSiteWise
813
821
  # child_asset_model_id: "ID", # required
814
822
  # },
815
823
  # ],
824
+ # asset_model_composite_models: [
825
+ # {
826
+ # name: "Name", # required
827
+ # description: "Description",
828
+ # type: "Name", # required
829
+ # properties: [
830
+ # {
831
+ # name: "Name", # required
832
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
833
+ # data_type_spec: "Name",
834
+ # unit: "PropertyUnit",
835
+ # type: { # required
836
+ # attribute: {
837
+ # default_value: "DefaultValue",
838
+ # },
839
+ # measurement: {
840
+ # },
841
+ # transform: {
842
+ # expression: "Expression", # required
843
+ # variables: [ # required
844
+ # {
845
+ # name: "VariableName", # required
846
+ # value: { # required
847
+ # property_id: "Macro", # required
848
+ # hierarchy_id: "Macro",
849
+ # },
850
+ # },
851
+ # ],
852
+ # },
853
+ # metric: {
854
+ # expression: "Expression", # required
855
+ # variables: [ # required
856
+ # {
857
+ # name: "VariableName", # required
858
+ # value: { # required
859
+ # property_id: "Macro", # required
860
+ # hierarchy_id: "Macro",
861
+ # },
862
+ # },
863
+ # ],
864
+ # window: { # required
865
+ # tumbling: {
866
+ # interval: "Interval", # required
867
+ # },
868
+ # },
869
+ # },
870
+ # },
871
+ # },
872
+ # ],
873
+ # },
874
+ # ],
816
875
  # client_token: "ClientToken",
817
876
  # tags: {
818
877
  # "TagKey" => "TagValue",
@@ -1024,9 +1083,8 @@ module Aws::IoTSiteWise
1024
1083
  # Regions.
1025
1084
  #
1026
1085
  # * `IAM` – The portal uses AWS Identity and Access Management (IAM) to
1027
- # authenticate users and manage user permissions. IAM users must have
1028
- # the `iotsitewise:CreatePresignedPortalUrl` permission to sign in to
1029
- # the portal. This option is only available in the China Regions.
1086
+ # authenticate users and manage user permissions. This option is only
1087
+ # available in the China Regions.
1030
1088
  #
1031
1089
  # You can't change this value after you create a portal.
1032
1090
  #
@@ -1079,42 +1137,6 @@ module Aws::IoTSiteWise
1079
1137
  req.send_request(options)
1080
1138
  end
1081
1139
 
1082
- # Creates a pre-signed URL to a portal. Use this operation to create
1083
- # URLs to portals that use AWS Identity and Access Management (IAM) to
1084
- # authenticate users. An IAM user with access to a portal can call this
1085
- # API to get a URL to that portal. The URL contains an authentication
1086
- # token that lets the IAM user access the portal.
1087
- #
1088
- # @option params [required, String] :portal_id
1089
- # The ID of the portal to access.
1090
- #
1091
- # @option params [Integer] :session_duration_seconds
1092
- # The duration (in seconds) for which the session at the URL is valid.
1093
- #
1094
- # Default: 43,200 seconds (12 hours)
1095
- #
1096
- # @return [Types::CreatePresignedPortalUrlResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1097
- #
1098
- # * {Types::CreatePresignedPortalUrlResponse#presigned_portal_url #presigned_portal_url} => String
1099
- #
1100
- # @example Request syntax with placeholder values
1101
- #
1102
- # resp = client.create_presigned_portal_url({
1103
- # portal_id: "ID", # required
1104
- # session_duration_seconds: 1,
1105
- # })
1106
- #
1107
- # @example Response structure
1108
- #
1109
- # resp.presigned_portal_url #=> String
1110
- #
1111
- # @overload create_presigned_portal_url(params = {})
1112
- # @param [Hash] params ({})
1113
- def create_presigned_portal_url(params = {}, options = {})
1114
- req = build_request(:create_presigned_portal_url, params)
1115
- req.send_request(options)
1116
- end
1117
-
1118
1140
  # Creates a project in the specified portal.
1119
1141
  #
1120
1142
  # @option params [required, String] :portal_id
@@ -1469,6 +1491,7 @@ module Aws::IoTSiteWise
1469
1491
  # * {Types::DescribeAssetResponse#asset_model_id #asset_model_id} => String
1470
1492
  # * {Types::DescribeAssetResponse#asset_properties #asset_properties} => Array&lt;Types::AssetProperty&gt;
1471
1493
  # * {Types::DescribeAssetResponse#asset_hierarchies #asset_hierarchies} => Array&lt;Types::AssetHierarchy&gt;
1494
+ # * {Types::DescribeAssetResponse#asset_composite_models #asset_composite_models} => Array&lt;Types::AssetCompositeModel&gt;
1472
1495
  # * {Types::DescribeAssetResponse#asset_creation_date #asset_creation_date} => Time
1473
1496
  # * {Types::DescribeAssetResponse#asset_last_update_date #asset_last_update_date} => Time
1474
1497
  # * {Types::DescribeAssetResponse#asset_status #asset_status} => Types::AssetStatus
@@ -1491,11 +1514,25 @@ module Aws::IoTSiteWise
1491
1514
  # resp.asset_properties[0].alias #=> String
1492
1515
  # resp.asset_properties[0].notification.topic #=> String
1493
1516
  # resp.asset_properties[0].notification.state #=> String, one of "ENABLED", "DISABLED"
1494
- # resp.asset_properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN"
1517
+ # resp.asset_properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
1518
+ # resp.asset_properties[0].data_type_spec #=> String
1495
1519
  # resp.asset_properties[0].unit #=> String
1496
1520
  # resp.asset_hierarchies #=> Array
1497
1521
  # resp.asset_hierarchies[0].id #=> String
1498
1522
  # resp.asset_hierarchies[0].name #=> String
1523
+ # resp.asset_composite_models #=> Array
1524
+ # resp.asset_composite_models[0].name #=> String
1525
+ # resp.asset_composite_models[0].description #=> String
1526
+ # resp.asset_composite_models[0].type #=> String
1527
+ # resp.asset_composite_models[0].properties #=> Array
1528
+ # resp.asset_composite_models[0].properties[0].id #=> String
1529
+ # resp.asset_composite_models[0].properties[0].name #=> String
1530
+ # resp.asset_composite_models[0].properties[0].alias #=> String
1531
+ # resp.asset_composite_models[0].properties[0].notification.topic #=> String
1532
+ # resp.asset_composite_models[0].properties[0].notification.state #=> String, one of "ENABLED", "DISABLED"
1533
+ # resp.asset_composite_models[0].properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
1534
+ # resp.asset_composite_models[0].properties[0].data_type_spec #=> String
1535
+ # resp.asset_composite_models[0].properties[0].unit #=> String
1499
1536
  # resp.asset_creation_date #=> Time
1500
1537
  # resp.asset_last_update_date #=> Time
1501
1538
  # resp.asset_status.state #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "FAILED"
@@ -1528,6 +1565,7 @@ module Aws::IoTSiteWise
1528
1565
  # * {Types::DescribeAssetModelResponse#asset_model_description #asset_model_description} => String
1529
1566
  # * {Types::DescribeAssetModelResponse#asset_model_properties #asset_model_properties} => Array&lt;Types::AssetModelProperty&gt;
1530
1567
  # * {Types::DescribeAssetModelResponse#asset_model_hierarchies #asset_model_hierarchies} => Array&lt;Types::AssetModelHierarchy&gt;
1568
+ # * {Types::DescribeAssetModelResponse#asset_model_composite_models #asset_model_composite_models} => Array&lt;Types::AssetModelCompositeModel&gt;
1531
1569
  # * {Types::DescribeAssetModelResponse#asset_model_creation_date #asset_model_creation_date} => Time
1532
1570
  # * {Types::DescribeAssetModelResponse#asset_model_last_update_date #asset_model_last_update_date} => Time
1533
1571
  # * {Types::DescribeAssetModelResponse#asset_model_status #asset_model_status} => Types::AssetModelStatus
@@ -1547,7 +1585,8 @@ module Aws::IoTSiteWise
1547
1585
  # resp.asset_model_properties #=> Array
1548
1586
  # resp.asset_model_properties[0].id #=> String
1549
1587
  # resp.asset_model_properties[0].name #=> String
1550
- # resp.asset_model_properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN"
1588
+ # resp.asset_model_properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
1589
+ # resp.asset_model_properties[0].data_type_spec #=> String
1551
1590
  # resp.asset_model_properties[0].unit #=> String
1552
1591
  # resp.asset_model_properties[0].type.attribute.default_value #=> String
1553
1592
  # resp.asset_model_properties[0].type.transform.expression #=> String
@@ -1565,6 +1604,28 @@ module Aws::IoTSiteWise
1565
1604
  # resp.asset_model_hierarchies[0].id #=> String
1566
1605
  # resp.asset_model_hierarchies[0].name #=> String
1567
1606
  # resp.asset_model_hierarchies[0].child_asset_model_id #=> String
1607
+ # resp.asset_model_composite_models #=> Array
1608
+ # resp.asset_model_composite_models[0].name #=> String
1609
+ # resp.asset_model_composite_models[0].description #=> String
1610
+ # resp.asset_model_composite_models[0].type #=> String
1611
+ # resp.asset_model_composite_models[0].properties #=> Array
1612
+ # resp.asset_model_composite_models[0].properties[0].id #=> String
1613
+ # resp.asset_model_composite_models[0].properties[0].name #=> String
1614
+ # resp.asset_model_composite_models[0].properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
1615
+ # resp.asset_model_composite_models[0].properties[0].data_type_spec #=> String
1616
+ # resp.asset_model_composite_models[0].properties[0].unit #=> String
1617
+ # resp.asset_model_composite_models[0].properties[0].type.attribute.default_value #=> String
1618
+ # resp.asset_model_composite_models[0].properties[0].type.transform.expression #=> String
1619
+ # resp.asset_model_composite_models[0].properties[0].type.transform.variables #=> Array
1620
+ # resp.asset_model_composite_models[0].properties[0].type.transform.variables[0].name #=> String
1621
+ # resp.asset_model_composite_models[0].properties[0].type.transform.variables[0].value.property_id #=> String
1622
+ # resp.asset_model_composite_models[0].properties[0].type.transform.variables[0].value.hierarchy_id #=> String
1623
+ # resp.asset_model_composite_models[0].properties[0].type.metric.expression #=> String
1624
+ # resp.asset_model_composite_models[0].properties[0].type.metric.variables #=> Array
1625
+ # resp.asset_model_composite_models[0].properties[0].type.metric.variables[0].name #=> String
1626
+ # resp.asset_model_composite_models[0].properties[0].type.metric.variables[0].value.property_id #=> String
1627
+ # resp.asset_model_composite_models[0].properties[0].type.metric.variables[0].value.hierarchy_id #=> String
1628
+ # resp.asset_model_composite_models[0].properties[0].type.metric.window.tumbling.interval #=> String
1568
1629
  # resp.asset_model_creation_date #=> Time
1569
1630
  # resp.asset_model_last_update_date #=> Time
1570
1631
  # resp.asset_model_status.state #=> String, one of "CREATING", "ACTIVE", "UPDATING", "PROPAGATING", "DELETING", "FAILED"
@@ -1612,6 +1673,7 @@ module Aws::IoTSiteWise
1612
1673
  # * {Types::DescribeAssetPropertyResponse#asset_name #asset_name} => String
1613
1674
  # * {Types::DescribeAssetPropertyResponse#asset_model_id #asset_model_id} => String
1614
1675
  # * {Types::DescribeAssetPropertyResponse#asset_property #asset_property} => Types::Property
1676
+ # * {Types::DescribeAssetPropertyResponse#composite_model #composite_model} => Types::CompositeModelProperty
1615
1677
  #
1616
1678
  # @example Request syntax with placeholder values
1617
1679
  #
@@ -1630,7 +1692,7 @@ module Aws::IoTSiteWise
1630
1692
  # resp.asset_property.alias #=> String
1631
1693
  # resp.asset_property.notification.topic #=> String
1632
1694
  # resp.asset_property.notification.state #=> String, one of "ENABLED", "DISABLED"
1633
- # resp.asset_property.data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN"
1695
+ # resp.asset_property.data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
1634
1696
  # resp.asset_property.unit #=> String
1635
1697
  # resp.asset_property.type.attribute.default_value #=> String
1636
1698
  # resp.asset_property.type.transform.expression #=> String
@@ -1644,6 +1706,27 @@ module Aws::IoTSiteWise
1644
1706
  # resp.asset_property.type.metric.variables[0].value.property_id #=> String
1645
1707
  # resp.asset_property.type.metric.variables[0].value.hierarchy_id #=> String
1646
1708
  # resp.asset_property.type.metric.window.tumbling.interval #=> String
1709
+ # resp.composite_model.name #=> String
1710
+ # resp.composite_model.type #=> String
1711
+ # resp.composite_model.asset_property.id #=> String
1712
+ # resp.composite_model.asset_property.name #=> String
1713
+ # resp.composite_model.asset_property.alias #=> String
1714
+ # resp.composite_model.asset_property.notification.topic #=> String
1715
+ # resp.composite_model.asset_property.notification.state #=> String, one of "ENABLED", "DISABLED"
1716
+ # resp.composite_model.asset_property.data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
1717
+ # resp.composite_model.asset_property.unit #=> String
1718
+ # resp.composite_model.asset_property.type.attribute.default_value #=> String
1719
+ # resp.composite_model.asset_property.type.transform.expression #=> String
1720
+ # resp.composite_model.asset_property.type.transform.variables #=> Array
1721
+ # resp.composite_model.asset_property.type.transform.variables[0].name #=> String
1722
+ # resp.composite_model.asset_property.type.transform.variables[0].value.property_id #=> String
1723
+ # resp.composite_model.asset_property.type.transform.variables[0].value.hierarchy_id #=> String
1724
+ # resp.composite_model.asset_property.type.metric.expression #=> String
1725
+ # resp.composite_model.asset_property.type.metric.variables #=> Array
1726
+ # resp.composite_model.asset_property.type.metric.variables[0].name #=> String
1727
+ # resp.composite_model.asset_property.type.metric.variables[0].value.property_id #=> String
1728
+ # resp.composite_model.asset_property.type.metric.variables[0].value.hierarchy_id #=> String
1729
+ # resp.composite_model.asset_property.type.metric.window.tumbling.interval #=> String
1647
1730
  #
1648
1731
  # @overload describe_asset_property(params = {})
1649
1732
  # @param [Hash] params ({})
@@ -2360,6 +2443,61 @@ module Aws::IoTSiteWise
2360
2443
  req.send_request(options)
2361
2444
  end
2362
2445
 
2446
+ # Retrieves a paginated list of asset relationships for an asset. You
2447
+ # can use this operation to identify an asset's root asset and all
2448
+ # associated assets between that asset and its root.
2449
+ #
2450
+ # @option params [required, String] :asset_id
2451
+ # The ID of the asset.
2452
+ #
2453
+ # @option params [required, String] :traversal_type
2454
+ # The type of traversal to use to identify asset relationships. Choose
2455
+ # the following option:
2456
+ #
2457
+ # * `PATH_TO_ROOT` – Identify the asset's parent assets up to the root
2458
+ # asset. The asset that you specify in `assetId` is the first result
2459
+ # in the list of `assetRelationshipSummaries`, and the root asset is
2460
+ # the last result.
2461
+ #
2462
+ # ^
2463
+ #
2464
+ # @option params [String] :next_token
2465
+ # The token to be used for the next set of paginated results.
2466
+ #
2467
+ # @option params [Integer] :max_results
2468
+ # The maximum number of results to be returned per paginated request.
2469
+ #
2470
+ # @return [Types::ListAssetRelationshipsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2471
+ #
2472
+ # * {Types::ListAssetRelationshipsResponse#asset_relationship_summaries #asset_relationship_summaries} => Array&lt;Types::AssetRelationshipSummary&gt;
2473
+ # * {Types::ListAssetRelationshipsResponse#next_token #next_token} => String
2474
+ #
2475
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2476
+ #
2477
+ # @example Request syntax with placeholder values
2478
+ #
2479
+ # resp = client.list_asset_relationships({
2480
+ # asset_id: "ID", # required
2481
+ # traversal_type: "PATH_TO_ROOT", # required, accepts PATH_TO_ROOT
2482
+ # next_token: "NextToken",
2483
+ # max_results: 1,
2484
+ # })
2485
+ #
2486
+ # @example Response structure
2487
+ #
2488
+ # resp.asset_relationship_summaries #=> Array
2489
+ # resp.asset_relationship_summaries[0].hierarchy_info.parent_asset_id #=> String
2490
+ # resp.asset_relationship_summaries[0].hierarchy_info.child_asset_id #=> String
2491
+ # resp.asset_relationship_summaries[0].relationship_type #=> String, one of "HIERARCHY"
2492
+ # resp.next_token #=> String
2493
+ #
2494
+ # @overload list_asset_relationships(params = {})
2495
+ # @param [Hash] params ({})
2496
+ def list_asset_relationships(params = {}, options = {})
2497
+ req = build_request(:list_asset_relationships, params)
2498
+ req.send_request(options)
2499
+ end
2500
+
2363
2501
  # Retrieves a paginated list of asset summaries.
2364
2502
  #
2365
2503
  # You can use this operation to do the following:
@@ -3081,6 +3219,13 @@ module Aws::IoTSiteWise
3081
3219
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
3082
3220
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
3083
3221
  #
3222
+ # @option params [Array<Types::AssetModelCompositeModel>] :asset_model_composite_models
3223
+ # The composite asset models that are part of this asset model.
3224
+ # Composite asset models are asset models that contain specific
3225
+ # properties. Each composite model has a type that defines the
3226
+ # properties that the composite model supports. Use composite asset
3227
+ # models to define alarms on this asset model.
3228
+ #
3084
3229
  # @option params [String] :client_token
3085
3230
  # A unique case-sensitive identifier that you can provide to ensure the
3086
3231
  # idempotency of the request. Don't reuse this client token if a new
@@ -3103,7 +3248,8 @@ module Aws::IoTSiteWise
3103
3248
  # {
3104
3249
  # id: "ID",
3105
3250
  # name: "Name", # required
3106
- # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN
3251
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
3252
+ # data_type_spec: "Name",
3107
3253
  # unit: "PropertyUnit",
3108
3254
  # type: { # required
3109
3255
  # attribute: {
@@ -3150,6 +3296,58 @@ module Aws::IoTSiteWise
3150
3296
  # child_asset_model_id: "ID", # required
3151
3297
  # },
3152
3298
  # ],
3299
+ # asset_model_composite_models: [
3300
+ # {
3301
+ # name: "Name", # required
3302
+ # description: "Description",
3303
+ # type: "Name", # required
3304
+ # properties: [
3305
+ # {
3306
+ # id: "ID",
3307
+ # name: "Name", # required
3308
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
3309
+ # data_type_spec: "Name",
3310
+ # unit: "PropertyUnit",
3311
+ # type: { # required
3312
+ # attribute: {
3313
+ # default_value: "DefaultValue",
3314
+ # },
3315
+ # measurement: {
3316
+ # },
3317
+ # transform: {
3318
+ # expression: "Expression", # required
3319
+ # variables: [ # required
3320
+ # {
3321
+ # name: "VariableName", # required
3322
+ # value: { # required
3323
+ # property_id: "Macro", # required
3324
+ # hierarchy_id: "Macro",
3325
+ # },
3326
+ # },
3327
+ # ],
3328
+ # },
3329
+ # metric: {
3330
+ # expression: "Expression", # required
3331
+ # variables: [ # required
3332
+ # {
3333
+ # name: "VariableName", # required
3334
+ # value: { # required
3335
+ # property_id: "Macro", # required
3336
+ # hierarchy_id: "Macro",
3337
+ # },
3338
+ # },
3339
+ # ],
3340
+ # window: { # required
3341
+ # tumbling: {
3342
+ # interval: "Interval", # required
3343
+ # },
3344
+ # },
3345
+ # },
3346
+ # },
3347
+ # },
3348
+ # ],
3349
+ # },
3350
+ # ],
3153
3351
  # client_token: "ClientToken",
3154
3352
  # })
3155
3353
  #
@@ -3491,7 +3689,7 @@ module Aws::IoTSiteWise
3491
3689
  params: params,
3492
3690
  config: config)
3493
3691
  context[:gem_name] = 'aws-sdk-iotsitewise'
3494
- context[:gem_version] = '1.15.0'
3692
+ context[:gem_version] = '1.16.0'
3495
3693
  Seahorse::Client::Request.new(handlers, context)
3496
3694
  end
3497
3695
 
@@ -23,12 +23,19 @@ module Aws::IoTSiteWise
23
23
  AggregatedValues = Shapes::ListShape.new(name: 'AggregatedValues')
24
24
  Aggregates = Shapes::StructureShape.new(name: 'Aggregates')
25
25
  AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
26
+ AssetCompositeModel = Shapes::StructureShape.new(name: 'AssetCompositeModel')
27
+ AssetCompositeModels = Shapes::ListShape.new(name: 'AssetCompositeModels')
26
28
  AssetErrorCode = Shapes::StringShape.new(name: 'AssetErrorCode')
27
29
  AssetErrorDetails = Shapes::StructureShape.new(name: 'AssetErrorDetails')
28
30
  AssetErrorMessage = Shapes::StringShape.new(name: 'AssetErrorMessage')
29
31
  AssetHierarchies = Shapes::ListShape.new(name: 'AssetHierarchies')
30
32
  AssetHierarchy = Shapes::StructureShape.new(name: 'AssetHierarchy')
33
+ AssetHierarchyInfo = Shapes::StructureShape.new(name: 'AssetHierarchyInfo')
31
34
  AssetIDs = Shapes::ListShape.new(name: 'AssetIDs')
35
+ AssetModelCompositeModel = Shapes::StructureShape.new(name: 'AssetModelCompositeModel')
36
+ AssetModelCompositeModelDefinition = Shapes::StructureShape.new(name: 'AssetModelCompositeModelDefinition')
37
+ AssetModelCompositeModelDefinitions = Shapes::ListShape.new(name: 'AssetModelCompositeModelDefinitions')
38
+ AssetModelCompositeModels = Shapes::ListShape.new(name: 'AssetModelCompositeModels')
32
39
  AssetModelHierarchies = Shapes::ListShape.new(name: 'AssetModelHierarchies')
33
40
  AssetModelHierarchy = Shapes::StructureShape.new(name: 'AssetModelHierarchy')
34
41
  AssetModelHierarchyDefinition = Shapes::StructureShape.new(name: 'AssetModelHierarchyDefinition')
@@ -47,6 +54,9 @@ module Aws::IoTSiteWise
47
54
  AssetPropertyValue = Shapes::StructureShape.new(name: 'AssetPropertyValue')
48
55
  AssetPropertyValueHistory = Shapes::ListShape.new(name: 'AssetPropertyValueHistory')
49
56
  AssetPropertyValues = Shapes::ListShape.new(name: 'AssetPropertyValues')
57
+ AssetRelationshipSummaries = Shapes::ListShape.new(name: 'AssetRelationshipSummaries')
58
+ AssetRelationshipSummary = Shapes::StructureShape.new(name: 'AssetRelationshipSummary')
59
+ AssetRelationshipType = Shapes::StringShape.new(name: 'AssetRelationshipType')
50
60
  AssetState = Shapes::StringShape.new(name: 'AssetState')
51
61
  AssetStatus = Shapes::StructureShape.new(name: 'AssetStatus')
52
62
  AssetSummaries = Shapes::ListShape.new(name: 'AssetSummaries')
@@ -73,6 +83,7 @@ module Aws::IoTSiteWise
73
83
  CapabilityNamespace = Shapes::StringShape.new(name: 'CapabilityNamespace')
74
84
  CapabilitySyncStatus = Shapes::StringShape.new(name: 'CapabilitySyncStatus')
75
85
  ClientToken = Shapes::StringShape.new(name: 'ClientToken')
86
+ CompositeModelProperty = Shapes::StructureShape.new(name: 'CompositeModelProperty')
76
87
  ConfigurationErrorDetails = Shapes::StructureShape.new(name: 'ConfigurationErrorDetails')
77
88
  ConfigurationState = Shapes::StringShape.new(name: 'ConfigurationState')
78
89
  ConfigurationStatus = Shapes::StructureShape.new(name: 'ConfigurationStatus')
@@ -89,8 +100,6 @@ module Aws::IoTSiteWise
89
100
  CreateGatewayResponse = Shapes::StructureShape.new(name: 'CreateGatewayResponse')
90
101
  CreatePortalRequest = Shapes::StructureShape.new(name: 'CreatePortalRequest')
91
102
  CreatePortalResponse = Shapes::StructureShape.new(name: 'CreatePortalResponse')
92
- CreatePresignedPortalUrlRequest = Shapes::StructureShape.new(name: 'CreatePresignedPortalUrlRequest')
93
- CreatePresignedPortalUrlResponse = Shapes::StructureShape.new(name: 'CreatePresignedPortalUrlResponse')
94
103
  CreateProjectRequest = Shapes::StructureShape.new(name: 'CreateProjectRequest')
95
104
  CreateProjectResponse = Shapes::StructureShape.new(name: 'CreateProjectResponse')
96
105
  DashboardDefinition = Shapes::StringShape.new(name: 'DashboardDefinition')
@@ -177,6 +186,8 @@ module Aws::IoTSiteWise
177
186
  ListAccessPoliciesResponse = Shapes::StructureShape.new(name: 'ListAccessPoliciesResponse')
178
187
  ListAssetModelsRequest = Shapes::StructureShape.new(name: 'ListAssetModelsRequest')
179
188
  ListAssetModelsResponse = Shapes::StructureShape.new(name: 'ListAssetModelsResponse')
189
+ ListAssetRelationshipsRequest = Shapes::StructureShape.new(name: 'ListAssetRelationshipsRequest')
190
+ ListAssetRelationshipsResponse = Shapes::StructureShape.new(name: 'ListAssetRelationshipsResponse')
180
191
  ListAssetsFilter = Shapes::StringShape.new(name: 'ListAssetsFilter')
181
192
  ListAssetsRequest = Shapes::StructureShape.new(name: 'ListAssetsRequest')
182
193
  ListAssetsResponse = Shapes::StructureShape.new(name: 'ListAssetsResponse')
@@ -246,7 +257,6 @@ module Aws::IoTSiteWise
246
257
  ResourceType = Shapes::StringShape.new(name: 'ResourceType')
247
258
  SSOApplicationId = Shapes::StringShape.new(name: 'SSOApplicationId')
248
259
  ServiceUnavailableException = Shapes::StructureShape.new(name: 'ServiceUnavailableException')
249
- SessionDurationSeconds = Shapes::IntegerShape.new(name: 'SessionDurationSeconds')
250
260
  TagKey = Shapes::StringShape.new(name: 'TagKey')
251
261
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
252
262
  TagMap = Shapes::MapShape.new(name: 'TagMap')
@@ -262,7 +272,9 @@ module Aws::IoTSiteWise
262
272
  TooManyTagsException = Shapes::StructureShape.new(name: 'TooManyTagsException')
263
273
  Transform = Shapes::StructureShape.new(name: 'Transform')
264
274
  TraversalDirection = Shapes::StringShape.new(name: 'TraversalDirection')
275
+ TraversalType = Shapes::StringShape.new(name: 'TraversalType')
265
276
  TumblingWindow = Shapes::StructureShape.new(name: 'TumblingWindow')
277
+ UnauthorizedException = Shapes::StructureShape.new(name: 'UnauthorizedException')
266
278
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
267
279
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
268
280
  UpdateAccessPolicyRequest = Shapes::StructureShape.new(name: 'UpdateAccessPolicyRequest')
@@ -314,6 +326,14 @@ module Aws::IoTSiteWise
314
326
  Aggregates.add_member(:standard_deviation, Shapes::ShapeRef.new(shape: AggregatedDoubleValue, location_name: "standardDeviation"))
315
327
  Aggregates.struct_class = Types::Aggregates
316
328
 
329
+ AssetCompositeModel.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "name"))
330
+ AssetCompositeModel.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
331
+ AssetCompositeModel.add_member(:type, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "type"))
332
+ AssetCompositeModel.add_member(:properties, Shapes::ShapeRef.new(shape: AssetProperties, required: true, location_name: "properties"))
333
+ AssetCompositeModel.struct_class = Types::AssetCompositeModel
334
+
335
+ AssetCompositeModels.member = Shapes::ShapeRef.new(shape: AssetCompositeModel)
336
+
317
337
  AssetErrorDetails.add_member(:asset_id, Shapes::ShapeRef.new(shape: ID, required: true, location_name: "assetId"))
318
338
  AssetErrorDetails.add_member(:code, Shapes::ShapeRef.new(shape: AssetErrorCode, required: true, location_name: "code"))
319
339
  AssetErrorDetails.add_member(:message, Shapes::ShapeRef.new(shape: AssetErrorMessage, required: true, location_name: "message"))
@@ -325,8 +345,28 @@ module Aws::IoTSiteWise
325
345
  AssetHierarchy.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "name"))
326
346
  AssetHierarchy.struct_class = Types::AssetHierarchy
327
347
 
348
+ AssetHierarchyInfo.add_member(:parent_asset_id, Shapes::ShapeRef.new(shape: ID, location_name: "parentAssetId"))
349
+ AssetHierarchyInfo.add_member(:child_asset_id, Shapes::ShapeRef.new(shape: ID, location_name: "childAssetId"))
350
+ AssetHierarchyInfo.struct_class = Types::AssetHierarchyInfo
351
+
328
352
  AssetIDs.member = Shapes::ShapeRef.new(shape: ID)
329
353
 
354
+ AssetModelCompositeModel.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "name"))
355
+ AssetModelCompositeModel.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
356
+ AssetModelCompositeModel.add_member(:type, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "type"))
357
+ AssetModelCompositeModel.add_member(:properties, Shapes::ShapeRef.new(shape: AssetModelProperties, location_name: "properties"))
358
+ AssetModelCompositeModel.struct_class = Types::AssetModelCompositeModel
359
+
360
+ AssetModelCompositeModelDefinition.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "name"))
361
+ AssetModelCompositeModelDefinition.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
362
+ AssetModelCompositeModelDefinition.add_member(:type, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "type"))
363
+ AssetModelCompositeModelDefinition.add_member(:properties, Shapes::ShapeRef.new(shape: AssetModelPropertyDefinitions, location_name: "properties"))
364
+ AssetModelCompositeModelDefinition.struct_class = Types::AssetModelCompositeModelDefinition
365
+
366
+ AssetModelCompositeModelDefinitions.member = Shapes::ShapeRef.new(shape: AssetModelCompositeModelDefinition)
367
+
368
+ AssetModelCompositeModels.member = Shapes::ShapeRef.new(shape: AssetModelCompositeModel)
369
+
330
370
  AssetModelHierarchies.member = Shapes::ShapeRef.new(shape: AssetModelHierarchy)
331
371
 
332
372
  AssetModelHierarchy.add_member(:id, Shapes::ShapeRef.new(shape: ID, location_name: "id"))
@@ -345,12 +385,14 @@ module Aws::IoTSiteWise
345
385
  AssetModelProperty.add_member(:id, Shapes::ShapeRef.new(shape: ID, location_name: "id"))
346
386
  AssetModelProperty.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "name"))
347
387
  AssetModelProperty.add_member(:data_type, Shapes::ShapeRef.new(shape: PropertyDataType, required: true, location_name: "dataType"))
388
+ AssetModelProperty.add_member(:data_type_spec, Shapes::ShapeRef.new(shape: Name, location_name: "dataTypeSpec"))
348
389
  AssetModelProperty.add_member(:unit, Shapes::ShapeRef.new(shape: PropertyUnit, location_name: "unit"))
349
390
  AssetModelProperty.add_member(:type, Shapes::ShapeRef.new(shape: PropertyType, required: true, location_name: "type"))
350
391
  AssetModelProperty.struct_class = Types::AssetModelProperty
351
392
 
352
393
  AssetModelPropertyDefinition.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "name"))
353
394
  AssetModelPropertyDefinition.add_member(:data_type, Shapes::ShapeRef.new(shape: PropertyDataType, required: true, location_name: "dataType"))
395
+ AssetModelPropertyDefinition.add_member(:data_type_spec, Shapes::ShapeRef.new(shape: Name, location_name: "dataTypeSpec"))
354
396
  AssetModelPropertyDefinition.add_member(:unit, Shapes::ShapeRef.new(shape: PropertyUnit, location_name: "unit"))
355
397
  AssetModelPropertyDefinition.add_member(:type, Shapes::ShapeRef.new(shape: PropertyType, required: true, location_name: "type"))
356
398
  AssetModelPropertyDefinition.struct_class = Types::AssetModelPropertyDefinition
@@ -379,6 +421,7 @@ module Aws::IoTSiteWise
379
421
  AssetProperty.add_member(:alias, Shapes::ShapeRef.new(shape: PropertyAlias, location_name: "alias"))
380
422
  AssetProperty.add_member(:notification, Shapes::ShapeRef.new(shape: PropertyNotification, location_name: "notification"))
381
423
  AssetProperty.add_member(:data_type, Shapes::ShapeRef.new(shape: PropertyDataType, required: true, location_name: "dataType"))
424
+ AssetProperty.add_member(:data_type_spec, Shapes::ShapeRef.new(shape: Name, location_name: "dataTypeSpec"))
382
425
  AssetProperty.add_member(:unit, Shapes::ShapeRef.new(shape: PropertyUnit, location_name: "unit"))
383
426
  AssetProperty.struct_class = Types::AssetProperty
384
427
 
@@ -391,6 +434,12 @@ module Aws::IoTSiteWise
391
434
 
392
435
  AssetPropertyValues.member = Shapes::ShapeRef.new(shape: AssetPropertyValue)
393
436
 
437
+ AssetRelationshipSummaries.member = Shapes::ShapeRef.new(shape: AssetRelationshipSummary)
438
+
439
+ AssetRelationshipSummary.add_member(:hierarchy_info, Shapes::ShapeRef.new(shape: AssetHierarchyInfo, location_name: "hierarchyInfo"))
440
+ AssetRelationshipSummary.add_member(:relationship_type, Shapes::ShapeRef.new(shape: AssetRelationshipType, required: true, location_name: "relationshipType"))
441
+ AssetRelationshipSummary.struct_class = Types::AssetRelationshipSummary
442
+
394
443
  AssetStatus.add_member(:state, Shapes::ShapeRef.new(shape: AssetState, required: true, location_name: "state"))
395
444
  AssetStatus.add_member(:error, Shapes::ShapeRef.new(shape: ErrorDetails, location_name: "error"))
396
445
  AssetStatus.struct_class = Types::AssetStatus
@@ -467,6 +516,11 @@ module Aws::IoTSiteWise
467
516
  BatchPutAssetPropertyValueResponse.add_member(:error_entries, Shapes::ShapeRef.new(shape: BatchPutAssetPropertyErrorEntries, required: true, location_name: "errorEntries"))
468
517
  BatchPutAssetPropertyValueResponse.struct_class = Types::BatchPutAssetPropertyValueResponse
469
518
 
519
+ CompositeModelProperty.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "name"))
520
+ CompositeModelProperty.add_member(:type, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "type"))
521
+ CompositeModelProperty.add_member(:asset_property, Shapes::ShapeRef.new(shape: Property, required: true, location_name: "assetProperty"))
522
+ CompositeModelProperty.struct_class = Types::CompositeModelProperty
523
+
470
524
  ConfigurationErrorDetails.add_member(:code, Shapes::ShapeRef.new(shape: ErrorCode, required: true, location_name: "code"))
471
525
  ConfigurationErrorDetails.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
472
526
  ConfigurationErrorDetails.struct_class = Types::ConfigurationErrorDetails
@@ -495,6 +549,7 @@ module Aws::IoTSiteWise
495
549
  CreateAssetModelRequest.add_member(:asset_model_description, Shapes::ShapeRef.new(shape: Description, location_name: "assetModelDescription"))
496
550
  CreateAssetModelRequest.add_member(:asset_model_properties, Shapes::ShapeRef.new(shape: AssetModelPropertyDefinitions, location_name: "assetModelProperties"))
497
551
  CreateAssetModelRequest.add_member(:asset_model_hierarchies, Shapes::ShapeRef.new(shape: AssetModelHierarchyDefinitions, location_name: "assetModelHierarchies"))
552
+ CreateAssetModelRequest.add_member(:asset_model_composite_models, Shapes::ShapeRef.new(shape: AssetModelCompositeModelDefinitions, location_name: "assetModelCompositeModels"))
498
553
  CreateAssetModelRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
499
554
  CreateAssetModelRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
500
555
  CreateAssetModelRequest.struct_class = Types::CreateAssetModelRequest
@@ -553,13 +608,6 @@ module Aws::IoTSiteWise
553
608
  CreatePortalResponse.add_member(:sso_application_id, Shapes::ShapeRef.new(shape: SSOApplicationId, required: true, location_name: "ssoApplicationId"))
554
609
  CreatePortalResponse.struct_class = Types::CreatePortalResponse
555
610
 
556
- CreatePresignedPortalUrlRequest.add_member(:portal_id, Shapes::ShapeRef.new(shape: ID, required: true, location: "uri", location_name: "portalId"))
557
- CreatePresignedPortalUrlRequest.add_member(:session_duration_seconds, Shapes::ShapeRef.new(shape: SessionDurationSeconds, location: "querystring", location_name: "sessionDurationSeconds"))
558
- CreatePresignedPortalUrlRequest.struct_class = Types::CreatePresignedPortalUrlRequest
559
-
560
- CreatePresignedPortalUrlResponse.add_member(:presigned_portal_url, Shapes::ShapeRef.new(shape: Url, required: true, location_name: "presignedPortalUrl"))
561
- CreatePresignedPortalUrlResponse.struct_class = Types::CreatePresignedPortalUrlResponse
562
-
563
611
  CreateProjectRequest.add_member(:portal_id, Shapes::ShapeRef.new(shape: ID, required: true, location_name: "portalId"))
564
612
  CreateProjectRequest.add_member(:project_name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "projectName"))
565
613
  CreateProjectRequest.add_member(:project_description, Shapes::ShapeRef.new(shape: Description, location_name: "projectDescription"))
@@ -643,6 +691,7 @@ module Aws::IoTSiteWise
643
691
  DescribeAssetModelResponse.add_member(:asset_model_description, Shapes::ShapeRef.new(shape: Description, required: true, location_name: "assetModelDescription"))
644
692
  DescribeAssetModelResponse.add_member(:asset_model_properties, Shapes::ShapeRef.new(shape: AssetModelProperties, required: true, location_name: "assetModelProperties"))
645
693
  DescribeAssetModelResponse.add_member(:asset_model_hierarchies, Shapes::ShapeRef.new(shape: AssetModelHierarchies, required: true, location_name: "assetModelHierarchies"))
694
+ DescribeAssetModelResponse.add_member(:asset_model_composite_models, Shapes::ShapeRef.new(shape: AssetModelCompositeModels, location_name: "assetModelCompositeModels"))
646
695
  DescribeAssetModelResponse.add_member(:asset_model_creation_date, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "assetModelCreationDate"))
647
696
  DescribeAssetModelResponse.add_member(:asset_model_last_update_date, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "assetModelLastUpdateDate"))
648
697
  DescribeAssetModelResponse.add_member(:asset_model_status, Shapes::ShapeRef.new(shape: AssetModelStatus, required: true, location_name: "assetModelStatus"))
@@ -655,7 +704,8 @@ module Aws::IoTSiteWise
655
704
  DescribeAssetPropertyResponse.add_member(:asset_id, Shapes::ShapeRef.new(shape: ID, required: true, location_name: "assetId"))
656
705
  DescribeAssetPropertyResponse.add_member(:asset_name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "assetName"))
657
706
  DescribeAssetPropertyResponse.add_member(:asset_model_id, Shapes::ShapeRef.new(shape: ID, required: true, location_name: "assetModelId"))
658
- DescribeAssetPropertyResponse.add_member(:asset_property, Shapes::ShapeRef.new(shape: Property, required: true, location_name: "assetProperty"))
707
+ DescribeAssetPropertyResponse.add_member(:asset_property, Shapes::ShapeRef.new(shape: Property, location_name: "assetProperty"))
708
+ DescribeAssetPropertyResponse.add_member(:composite_model, Shapes::ShapeRef.new(shape: CompositeModelProperty, location_name: "compositeModel"))
659
709
  DescribeAssetPropertyResponse.struct_class = Types::DescribeAssetPropertyResponse
660
710
 
661
711
  DescribeAssetRequest.add_member(:asset_id, Shapes::ShapeRef.new(shape: ID, required: true, location: "uri", location_name: "assetId"))
@@ -667,6 +717,7 @@ module Aws::IoTSiteWise
667
717
  DescribeAssetResponse.add_member(:asset_model_id, Shapes::ShapeRef.new(shape: ID, required: true, location_name: "assetModelId"))
668
718
  DescribeAssetResponse.add_member(:asset_properties, Shapes::ShapeRef.new(shape: AssetProperties, required: true, location_name: "assetProperties"))
669
719
  DescribeAssetResponse.add_member(:asset_hierarchies, Shapes::ShapeRef.new(shape: AssetHierarchies, required: true, location_name: "assetHierarchies"))
720
+ DescribeAssetResponse.add_member(:asset_composite_models, Shapes::ShapeRef.new(shape: AssetCompositeModels, location_name: "assetCompositeModels"))
670
721
  DescribeAssetResponse.add_member(:asset_creation_date, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "assetCreationDate"))
671
722
  DescribeAssetResponse.add_member(:asset_last_update_date, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "assetLastUpdateDate"))
672
723
  DescribeAssetResponse.add_member(:asset_status, Shapes::ShapeRef.new(shape: AssetStatus, required: true, location_name: "assetStatus"))
@@ -881,6 +932,16 @@ module Aws::IoTSiteWise
881
932
  ListAssetModelsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
882
933
  ListAssetModelsResponse.struct_class = Types::ListAssetModelsResponse
883
934
 
935
+ ListAssetRelationshipsRequest.add_member(:asset_id, Shapes::ShapeRef.new(shape: ID, required: true, location: "uri", location_name: "assetId"))
936
+ ListAssetRelationshipsRequest.add_member(:traversal_type, Shapes::ShapeRef.new(shape: TraversalType, required: true, location: "querystring", location_name: "traversalType"))
937
+ ListAssetRelationshipsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
938
+ ListAssetRelationshipsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
939
+ ListAssetRelationshipsRequest.struct_class = Types::ListAssetRelationshipsRequest
940
+
941
+ ListAssetRelationshipsResponse.add_member(:asset_relationship_summaries, Shapes::ShapeRef.new(shape: AssetRelationshipSummaries, required: true, location_name: "assetRelationshipSummaries"))
942
+ ListAssetRelationshipsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
943
+ ListAssetRelationshipsResponse.struct_class = Types::ListAssetRelationshipsResponse
944
+
884
945
  ListAssetsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
885
946
  ListAssetsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
886
947
  ListAssetsRequest.add_member(:asset_model_id, Shapes::ShapeRef.new(shape: ID, location: "querystring", location_name: "assetModelId"))
@@ -1089,6 +1150,9 @@ module Aws::IoTSiteWise
1089
1150
  TumblingWindow.add_member(:interval, Shapes::ShapeRef.new(shape: Interval, required: true, location_name: "interval"))
1090
1151
  TumblingWindow.struct_class = Types::TumblingWindow
1091
1152
 
1153
+ UnauthorizedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, required: true, location_name: "message"))
1154
+ UnauthorizedException.struct_class = Types::UnauthorizedException
1155
+
1092
1156
  UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location: "querystring", location_name: "resourceArn"))
1093
1157
  UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location: "querystring", location_name: "tagKeys"))
1094
1158
  UntagResourceRequest.struct_class = Types::UntagResourceRequest
@@ -1109,6 +1173,7 @@ module Aws::IoTSiteWise
1109
1173
  UpdateAssetModelRequest.add_member(:asset_model_description, Shapes::ShapeRef.new(shape: Description, location_name: "assetModelDescription"))
1110
1174
  UpdateAssetModelRequest.add_member(:asset_model_properties, Shapes::ShapeRef.new(shape: AssetModelProperties, location_name: "assetModelProperties"))
1111
1175
  UpdateAssetModelRequest.add_member(:asset_model_hierarchies, Shapes::ShapeRef.new(shape: AssetModelHierarchies, location_name: "assetModelHierarchies"))
1176
+ UpdateAssetModelRequest.add_member(:asset_model_composite_models, Shapes::ShapeRef.new(shape: AssetModelCompositeModels, location_name: "assetModelCompositeModels"))
1112
1177
  UpdateAssetModelRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
1113
1178
  UpdateAssetModelRequest.struct_class = Types::UpdateAssetModelRequest
1114
1179
 
@@ -1369,20 +1434,6 @@ module Aws::IoTSiteWise
1369
1434
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1370
1435
  end)
1371
1436
 
1372
- api.add_operation(:create_presigned_portal_url, Seahorse::Model::Operation.new.tap do |o|
1373
- o.name = "CreatePresignedPortalUrl"
1374
- o.http_method = "GET"
1375
- o.http_request_uri = "/portals/{portalId}/presigned-url"
1376
- o.endpoint_pattern = {
1377
- "hostPrefix" => "monitor.",
1378
- }
1379
- o.input = Shapes::ShapeRef.new(shape: CreatePresignedPortalUrlRequest)
1380
- o.output = Shapes::ShapeRef.new(shape: CreatePresignedPortalUrlResponse)
1381
- o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1382
- o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1383
- o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1384
- end)
1385
-
1386
1437
  api.add_operation(:create_project, Seahorse::Model::Operation.new.tap do |o|
1387
1438
  o.name = "CreateProject"
1388
1439
  o.http_method = "POST"
@@ -1784,6 +1835,27 @@ module Aws::IoTSiteWise
1784
1835
  )
1785
1836
  end)
1786
1837
 
1838
+ api.add_operation(:list_asset_relationships, Seahorse::Model::Operation.new.tap do |o|
1839
+ o.name = "ListAssetRelationships"
1840
+ o.http_method = "GET"
1841
+ o.http_request_uri = "/assets/{assetId}/assetRelationships"
1842
+ o.endpoint_pattern = {
1843
+ "hostPrefix" => "model.",
1844
+ }
1845
+ o.input = Shapes::ShapeRef.new(shape: ListAssetRelationshipsRequest)
1846
+ o.output = Shapes::ShapeRef.new(shape: ListAssetRelationshipsResponse)
1847
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1848
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1849
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1850
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1851
+ o[:pager] = Aws::Pager.new(
1852
+ limit_key: "max_results",
1853
+ tokens: {
1854
+ "next_token" => "next_token"
1855
+ }
1856
+ )
1857
+ end)
1858
+
1787
1859
  api.add_operation(:list_assets, Seahorse::Model::Operation.new.tap do |o|
1788
1860
  o.name = "ListAssets"
1789
1861
  o.http_method = "GET"
@@ -1936,6 +2008,9 @@ module Aws::IoTSiteWise
1936
2008
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1937
2009
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1938
2010
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2011
+ o.errors << Shapes::ShapeRef.new(shape: ConflictingOperationException)
2012
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
2013
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1939
2014
  end)
1940
2015
 
1941
2016
  api.add_operation(:put_default_encryption_configuration, Seahorse::Model::Operation.new.tap do |o|
@@ -1977,6 +2052,9 @@ module Aws::IoTSiteWise
1977
2052
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1978
2053
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1979
2054
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2055
+ o.errors << Shapes::ShapeRef.new(shape: ConflictingOperationException)
2056
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
2057
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1980
2058
  o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
1981
2059
  end)
1982
2060
 
@@ -1990,6 +2068,9 @@ module Aws::IoTSiteWise
1990
2068
  o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
1991
2069
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1992
2070
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2071
+ o.errors << Shapes::ShapeRef.new(shape: ConflictingOperationException)
2072
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
2073
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1993
2074
  end)
1994
2075
 
1995
2076
  api.add_operation(:update_access_policy, Seahorse::Model::Operation.new.tap do |o|