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.
@@ -36,6 +36,7 @@ module Aws::IoTSiteWise
36
36
  # * {ServiceUnavailableException}
37
37
  # * {ThrottlingException}
38
38
  # * {TooManyTagsException}
39
+ # * {UnauthorizedException}
39
40
  #
40
41
  # Additionally, error classes are dynamically generated for service errors based on the error code
41
42
  # if they are not defined above.
@@ -203,5 +204,20 @@ module Aws::IoTSiteWise
203
204
  end
204
205
  end
205
206
 
207
+ class UnauthorizedException < ServiceError
208
+
209
+ # @param [Seahorse::Client::RequestContext] context
210
+ # @param [String] message
211
+ # @param [Aws::IoTSiteWise::Types::UnauthorizedException] data
212
+ def initialize(context, message, data = Aws::EmptyStructure.new)
213
+ super(context, message, data)
214
+ end
215
+
216
+ # @return [String]
217
+ def message
218
+ @message || @data[:message]
219
+ end
220
+ end
221
+
206
222
  end
207
223
  end
@@ -112,6 +112,36 @@ module Aws::IoTSiteWise
112
112
  include Aws::Structure
113
113
  end
114
114
 
115
+ # Contains information about a composite model in an asset. This object
116
+ # contains the asset's properties that you define in the composite
117
+ # model.
118
+ #
119
+ # @!attribute [rw] name
120
+ # The name of the composite model.
121
+ # @return [String]
122
+ #
123
+ # @!attribute [rw] description
124
+ # The description of the composite model.
125
+ # @return [String]
126
+ #
127
+ # @!attribute [rw] type
128
+ # The type of the composite model. For alarm composite models, this
129
+ # type is `AWS/ALARM`.
130
+ # @return [String]
131
+ #
132
+ # @!attribute [rw] properties
133
+ # The asset properties that this composite model defines.
134
+ # @return [Array<Types::AssetProperty>]
135
+ #
136
+ class AssetCompositeModel < Struct.new(
137
+ :name,
138
+ :description,
139
+ :type,
140
+ :properties)
141
+ SENSITIVE = []
142
+ include Aws::Structure
143
+ end
144
+
115
145
  # Contains error details for the requested associate project asset
116
146
  # action.
117
147
  #
@@ -158,6 +188,191 @@ module Aws::IoTSiteWise
158
188
  include Aws::Structure
159
189
  end
160
190
 
191
+ # Contains information about a parent asset and a child asset that are
192
+ # related through an asset hierarchy.
193
+ #
194
+ # @!attribute [rw] parent_asset_id
195
+ # The ID of the parent asset in this asset relationship.
196
+ # @return [String]
197
+ #
198
+ # @!attribute [rw] child_asset_id
199
+ # The ID of the child asset in this asset relationship.
200
+ # @return [String]
201
+ #
202
+ class AssetHierarchyInfo < Struct.new(
203
+ :parent_asset_id,
204
+ :child_asset_id)
205
+ SENSITIVE = []
206
+ include Aws::Structure
207
+ end
208
+
209
+ # Contains information about a composite model in an asset model. This
210
+ # object contains the asset property definitions that you define in the
211
+ # composite model.
212
+ #
213
+ # @note When making an API call, you may pass AssetModelCompositeModel
214
+ # data as a hash:
215
+ #
216
+ # {
217
+ # name: "Name", # required
218
+ # description: "Description",
219
+ # type: "Name", # required
220
+ # properties: [
221
+ # {
222
+ # id: "ID",
223
+ # name: "Name", # required
224
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
225
+ # data_type_spec: "Name",
226
+ # unit: "PropertyUnit",
227
+ # type: { # required
228
+ # attribute: {
229
+ # default_value: "DefaultValue",
230
+ # },
231
+ # measurement: {
232
+ # },
233
+ # transform: {
234
+ # expression: "Expression", # required
235
+ # variables: [ # required
236
+ # {
237
+ # name: "VariableName", # required
238
+ # value: { # required
239
+ # property_id: "Macro", # required
240
+ # hierarchy_id: "Macro",
241
+ # },
242
+ # },
243
+ # ],
244
+ # },
245
+ # metric: {
246
+ # expression: "Expression", # required
247
+ # variables: [ # required
248
+ # {
249
+ # name: "VariableName", # required
250
+ # value: { # required
251
+ # property_id: "Macro", # required
252
+ # hierarchy_id: "Macro",
253
+ # },
254
+ # },
255
+ # ],
256
+ # window: { # required
257
+ # tumbling: {
258
+ # interval: "Interval", # required
259
+ # },
260
+ # },
261
+ # },
262
+ # },
263
+ # },
264
+ # ],
265
+ # }
266
+ #
267
+ # @!attribute [rw] name
268
+ # The name of the composite model.
269
+ # @return [String]
270
+ #
271
+ # @!attribute [rw] description
272
+ # The description of the composite model.
273
+ # @return [String]
274
+ #
275
+ # @!attribute [rw] type
276
+ # The type of the composite model. For alarm composite models, this
277
+ # type is `AWS/ALARM`.
278
+ # @return [String]
279
+ #
280
+ # @!attribute [rw] properties
281
+ # The asset property definitions for this composite model.
282
+ # @return [Array<Types::AssetModelProperty>]
283
+ #
284
+ class AssetModelCompositeModel < Struct.new(
285
+ :name,
286
+ :description,
287
+ :type,
288
+ :properties)
289
+ SENSITIVE = []
290
+ include Aws::Structure
291
+ end
292
+
293
+ # Contains a composite model definition in an asset model. This
294
+ # composite model definition is applied to all assets created from the
295
+ # asset model.
296
+ #
297
+ # @note When making an API call, you may pass AssetModelCompositeModelDefinition
298
+ # data as a hash:
299
+ #
300
+ # {
301
+ # name: "Name", # required
302
+ # description: "Description",
303
+ # type: "Name", # required
304
+ # properties: [
305
+ # {
306
+ # name: "Name", # required
307
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
308
+ # data_type_spec: "Name",
309
+ # unit: "PropertyUnit",
310
+ # type: { # required
311
+ # attribute: {
312
+ # default_value: "DefaultValue",
313
+ # },
314
+ # measurement: {
315
+ # },
316
+ # transform: {
317
+ # expression: "Expression", # required
318
+ # variables: [ # required
319
+ # {
320
+ # name: "VariableName", # required
321
+ # value: { # required
322
+ # property_id: "Macro", # required
323
+ # hierarchy_id: "Macro",
324
+ # },
325
+ # },
326
+ # ],
327
+ # },
328
+ # metric: {
329
+ # expression: "Expression", # required
330
+ # variables: [ # required
331
+ # {
332
+ # name: "VariableName", # required
333
+ # value: { # required
334
+ # property_id: "Macro", # required
335
+ # hierarchy_id: "Macro",
336
+ # },
337
+ # },
338
+ # ],
339
+ # window: { # required
340
+ # tumbling: {
341
+ # interval: "Interval", # required
342
+ # },
343
+ # },
344
+ # },
345
+ # },
346
+ # },
347
+ # ],
348
+ # }
349
+ #
350
+ # @!attribute [rw] name
351
+ # The name of the composite model.
352
+ # @return [String]
353
+ #
354
+ # @!attribute [rw] description
355
+ # The description of the composite model.
356
+ # @return [String]
357
+ #
358
+ # @!attribute [rw] type
359
+ # The type of the composite model. For alarm composite models, this
360
+ # type is `AWS/ALARM`.
361
+ # @return [String]
362
+ #
363
+ # @!attribute [rw] properties
364
+ # The asset property definitions for this composite model.
365
+ # @return [Array<Types::AssetModelPropertyDefinition>]
366
+ #
367
+ class AssetModelCompositeModelDefinition < Struct.new(
368
+ :name,
369
+ :description,
370
+ :type,
371
+ :properties)
372
+ SENSITIVE = []
373
+ include Aws::Structure
374
+ end
375
+
161
376
  # Describes an asset hierarchy that contains a hierarchy's name, ID,
162
377
  # and child asset model ID that specifies the type of asset that can be
163
378
  # in this hierarchy.
@@ -239,7 +454,8 @@ module Aws::IoTSiteWise
239
454
  # {
240
455
  # id: "ID",
241
456
  # name: "Name", # required
242
- # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN
457
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
458
+ # data_type_spec: "Name",
243
459
  # unit: "PropertyUnit",
244
460
  # type: { # required
245
461
  # attribute: {
@@ -291,6 +507,11 @@ module Aws::IoTSiteWise
291
507
  # The data type of the asset model property.
292
508
  # @return [String]
293
509
  #
510
+ # @!attribute [rw] data_type_spec
511
+ # The data type of the structure for this property. This parameter
512
+ # exists on properties that have the `STRUCT` data type.
513
+ # @return [String]
514
+ #
294
515
  # @!attribute [rw] unit
295
516
  # The unit of the asset model property, such as `Newtons` or `RPM`.
296
517
  # @return [String]
@@ -303,6 +524,7 @@ module Aws::IoTSiteWise
303
524
  :id,
304
525
  :name,
305
526
  :data_type,
527
+ :data_type_spec,
306
528
  :unit,
307
529
  :type)
308
530
  SENSITIVE = []
@@ -317,7 +539,8 @@ module Aws::IoTSiteWise
317
539
  #
318
540
  # {
319
541
  # name: "Name", # required
320
- # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN
542
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
543
+ # data_type_spec: "Name",
321
544
  # unit: "PropertyUnit",
322
545
  # type: { # required
323
546
  # attribute: {
@@ -363,6 +586,18 @@ module Aws::IoTSiteWise
363
586
  #
364
587
  # @!attribute [rw] data_type
365
588
  # The data type of the property definition.
589
+ #
590
+ # If you specify `STRUCT`, you must also specify `dataTypeSpec` to
591
+ # identify the type of the structure for this property.
592
+ # @return [String]
593
+ #
594
+ # @!attribute [rw] data_type_spec
595
+ # The data type of the structure for this property. This parameter is
596
+ # required on properties that have the `STRUCT` data type.
597
+ #
598
+ # The options for this parameter depend on the type of the composite
599
+ # model in which you define this property. Use `AWS/ALARM_STATE` for
600
+ # alarm state in alarm composite models.
366
601
  # @return [String]
367
602
  #
368
603
  # @!attribute [rw] unit
@@ -377,6 +612,7 @@ module Aws::IoTSiteWise
377
612
  class AssetModelPropertyDefinition < Struct.new(
378
613
  :name,
379
614
  :data_type,
615
+ :data_type_spec,
380
616
  :unit,
381
617
  :type)
382
618
  SENSITIVE = []
@@ -489,6 +725,11 @@ module Aws::IoTSiteWise
489
725
  # The data type of the asset property.
490
726
  # @return [String]
491
727
  #
728
+ # @!attribute [rw] data_type_spec
729
+ # The data type of the structure for this property. This parameter
730
+ # exists on properties that have the `STRUCT` data type.
731
+ # @return [String]
732
+ #
492
733
  # @!attribute [rw] unit
493
734
  # The unit (such as `Newtons` or `RPM`) of the asset property.
494
735
  # @return [String]
@@ -499,6 +740,7 @@ module Aws::IoTSiteWise
499
740
  :alias,
500
741
  :notification,
501
742
  :data_type,
743
+ :data_type_spec,
502
744
  :unit)
503
745
  SENSITIVE = []
504
746
  include Aws::Structure
@@ -543,6 +785,32 @@ module Aws::IoTSiteWise
543
785
  include Aws::Structure
544
786
  end
545
787
 
788
+ # Contains information about assets that are related to one another.
789
+ #
790
+ # @!attribute [rw] hierarchy_info
791
+ # The assets that are related through an asset hierarchy.
792
+ #
793
+ # This object is present if the `relationshipType` is `HIERARCHY`.
794
+ # @return [Types::AssetHierarchyInfo]
795
+ #
796
+ # @!attribute [rw] relationship_type
797
+ # The relationship type of the assets in this relationship. This value
798
+ # is one of the following:
799
+ #
800
+ # * `HIERARCHY` – The assets are related through an asset hierarchy.
801
+ # If you specify this relationship type, this asset relationship
802
+ # includes the `hierarchyInfo` object.
803
+ #
804
+ # ^
805
+ # @return [String]
806
+ #
807
+ class AssetRelationshipSummary < Struct.new(
808
+ :hierarchy_info,
809
+ :relationship_type)
810
+ SENSITIVE = []
811
+ include Aws::Structure
812
+ end
813
+
546
814
  # Contains information about the current status of an asset. For more
547
815
  # information, see [Asset and model states][1] in the *AWS IoT SiteWise
548
816
  # User Guide*.
@@ -937,10 +1205,36 @@ module Aws::IoTSiteWise
937
1205
  include Aws::Structure
938
1206
  end
939
1207
 
1208
+ # Contains information about a composite model property on an asset.
1209
+ #
1210
+ # @!attribute [rw] name
1211
+ # The name of the property.
1212
+ # @return [String]
1213
+ #
1214
+ # @!attribute [rw] type
1215
+ # The type of the composite model that defines this property.
1216
+ # @return [String]
1217
+ #
1218
+ # @!attribute [rw] asset_property
1219
+ # Contains asset property information.
1220
+ # @return [Types::Property]
1221
+ #
1222
+ class CompositeModelProperty < Struct.new(
1223
+ :name,
1224
+ :type,
1225
+ :asset_property)
1226
+ SENSITIVE = []
1227
+ include Aws::Structure
1228
+ end
1229
+
1230
+ # Contains the details of an AWS IoT SiteWise configuration error.
1231
+ #
940
1232
  # @!attribute [rw] code
1233
+ # The error code.
941
1234
  # @return [String]
942
1235
  #
943
1236
  # @!attribute [rw] message
1237
+ # The error message.
944
1238
  # @return [String]
945
1239
  #
946
1240
  class ConfigurationErrorDetails < Struct.new(
@@ -950,10 +1244,14 @@ module Aws::IoTSiteWise
950
1244
  include Aws::Structure
951
1245
  end
952
1246
 
1247
+ # Contains current status information for the configuration.
1248
+ #
953
1249
  # @!attribute [rw] state
1250
+ # The current state of the configuration.
954
1251
  # @return [String]
955
1252
  #
956
1253
  # @!attribute [rw] error
1254
+ # Contains associated error information, if any.
957
1255
  # @return [Types::ConfigurationErrorDetails]
958
1256
  #
959
1257
  class ConfigurationStatus < Struct.new(
@@ -1090,7 +1388,8 @@ module Aws::IoTSiteWise
1090
1388
  # asset_model_properties: [
1091
1389
  # {
1092
1390
  # name: "Name", # required
1093
- # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN
1391
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
1392
+ # data_type_spec: "Name",
1094
1393
  # unit: "PropertyUnit",
1095
1394
  # type: { # required
1096
1395
  # attribute: {
@@ -1136,6 +1435,57 @@ module Aws::IoTSiteWise
1136
1435
  # child_asset_model_id: "ID", # required
1137
1436
  # },
1138
1437
  # ],
1438
+ # asset_model_composite_models: [
1439
+ # {
1440
+ # name: "Name", # required
1441
+ # description: "Description",
1442
+ # type: "Name", # required
1443
+ # properties: [
1444
+ # {
1445
+ # name: "Name", # required
1446
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
1447
+ # data_type_spec: "Name",
1448
+ # unit: "PropertyUnit",
1449
+ # type: { # required
1450
+ # attribute: {
1451
+ # default_value: "DefaultValue",
1452
+ # },
1453
+ # measurement: {
1454
+ # },
1455
+ # transform: {
1456
+ # expression: "Expression", # required
1457
+ # variables: [ # required
1458
+ # {
1459
+ # name: "VariableName", # required
1460
+ # value: { # required
1461
+ # property_id: "Macro", # required
1462
+ # hierarchy_id: "Macro",
1463
+ # },
1464
+ # },
1465
+ # ],
1466
+ # },
1467
+ # metric: {
1468
+ # expression: "Expression", # required
1469
+ # variables: [ # required
1470
+ # {
1471
+ # name: "VariableName", # required
1472
+ # value: { # required
1473
+ # property_id: "Macro", # required
1474
+ # hierarchy_id: "Macro",
1475
+ # },
1476
+ # },
1477
+ # ],
1478
+ # window: { # required
1479
+ # tumbling: {
1480
+ # interval: "Interval", # required
1481
+ # },
1482
+ # },
1483
+ # },
1484
+ # },
1485
+ # },
1486
+ # ],
1487
+ # },
1488
+ # ],
1139
1489
  # client_token: "ClientToken",
1140
1490
  # tags: {
1141
1491
  # "TagKey" => "TagValue",
@@ -1178,6 +1528,14 @@ module Aws::IoTSiteWise
1178
1528
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
1179
1529
  # @return [Array<Types::AssetModelHierarchyDefinition>]
1180
1530
  #
1531
+ # @!attribute [rw] asset_model_composite_models
1532
+ # The composite asset models that are part of this asset model.
1533
+ # Composite asset models are asset models that contain specific
1534
+ # properties. Each composite model has a type that defines the
1535
+ # properties that the composite model supports. Use composite asset
1536
+ # models to define alarms on this asset model.
1537
+ # @return [Array<Types::AssetModelCompositeModelDefinition>]
1538
+ #
1181
1539
  # @!attribute [rw] client_token
1182
1540
  # A unique case-sensitive identifier that you can provide to ensure
1183
1541
  # the idempotency of the request. Don't reuse this client token if a
@@ -1202,6 +1560,7 @@ module Aws::IoTSiteWise
1202
1560
  :asset_model_description,
1203
1561
  :asset_model_properties,
1204
1562
  :asset_model_hierarchies,
1563
+ :asset_model_composite_models,
1205
1564
  :client_token,
1206
1565
  :tags)
1207
1566
  SENSITIVE = []
@@ -1542,10 +1901,8 @@ module Aws::IoTSiteWise
1542
1901
  # Regions.
1543
1902
  #
1544
1903
  # * `IAM` – The portal uses AWS Identity and Access Management (IAM)
1545
- # to authenticate users and manage user permissions. IAM users must
1546
- # have the `iotsitewise:CreatePresignedPortalUrl` permission to sign
1547
- # in to the portal. This option is only available in the China
1548
- # Regions.
1904
+ # to authenticate users and manage user permissions. This option is
1905
+ # only available in the China Regions.
1549
1906
  #
1550
1907
  # You can't change this value after you create a portal.
1551
1908
  #
@@ -1586,13 +1943,8 @@ module Aws::IoTSiteWise
1586
1943
  # @!attribute [rw] portal_start_url
1587
1944
  # The URL for the AWS IoT SiteWise Monitor portal. You can use this
1588
1945
  # URL to access portals that use AWS SSO for authentication. For
1589
- # portals that use IAM for authentication, you must use the
1590
- # [CreatePresignedPortalUrl][1] operation to create a URL that you can
1591
- # use to access the portal.
1592
- #
1593
- #
1594
- #
1595
- # [1]: https://docs.aws.amazon.com/AWS IoT SiteWise API ReferenceAPI_CreatePresignedPortalUrl.html
1946
+ # portals that use IAM for authentication, you must use the AWS IoT
1947
+ # SiteWise console to get a URL that you can use to access the portal.
1596
1948
  # @return [String]
1597
1949
  #
1598
1950
  # @!attribute [rw] portal_status
@@ -1614,45 +1966,6 @@ module Aws::IoTSiteWise
1614
1966
  include Aws::Structure
1615
1967
  end
1616
1968
 
1617
- # @note When making an API call, you may pass CreatePresignedPortalUrlRequest
1618
- # data as a hash:
1619
- #
1620
- # {
1621
- # portal_id: "ID", # required
1622
- # session_duration_seconds: 1,
1623
- # }
1624
- #
1625
- # @!attribute [rw] portal_id
1626
- # The ID of the portal to access.
1627
- # @return [String]
1628
- #
1629
- # @!attribute [rw] session_duration_seconds
1630
- # The duration (in seconds) for which the session at the URL is valid.
1631
- #
1632
- # Default: 43,200 seconds (12 hours)
1633
- # @return [Integer]
1634
- #
1635
- class CreatePresignedPortalUrlRequest < Struct.new(
1636
- :portal_id,
1637
- :session_duration_seconds)
1638
- SENSITIVE = []
1639
- include Aws::Structure
1640
- end
1641
-
1642
- # @!attribute [rw] presigned_portal_url
1643
- # The pre-signed URL to the portal. The URL contains the portal ID and
1644
- # an authentication token that lets you access the portal. The URL has
1645
- # the following format.
1646
- #
1647
- # `https://<portal-id>.app.iotsitewise.aws/iam?token=<encrypted-token>`
1648
- # @return [String]
1649
- #
1650
- class CreatePresignedPortalUrlResponse < Struct.new(
1651
- :presigned_portal_url)
1652
- SENSITIVE = []
1653
- include Aws::Structure
1654
- end
1655
-
1656
1969
  # @note When making an API call, you may pass CreateProjectRequest
1657
1970
  # data as a hash:
1658
1971
  #
@@ -2091,6 +2404,10 @@ module Aws::IoTSiteWise
2091
2404
  #
2092
2405
  # @!attribute [rw] asset_model_properties
2093
2406
  # The list of asset properties for the asset model.
2407
+ #
2408
+ # This object doesn't include properties that you define in composite
2409
+ # models. You can find composite model properties in the
2410
+ # `assetModelCompositeModels` object.
2094
2411
  # @return [Array<Types::AssetModelProperty>]
2095
2412
  #
2096
2413
  # @!attribute [rw] asset_model_hierarchies
@@ -2100,6 +2417,10 @@ module Aws::IoTSiteWise
2100
2417
  # model.
2101
2418
  # @return [Array<Types::AssetModelHierarchy>]
2102
2419
  #
2420
+ # @!attribute [rw] asset_model_composite_models
2421
+ # The list of composite asset models for the asset model.
2422
+ # @return [Array<Types::AssetModelCompositeModel>]
2423
+ #
2103
2424
  # @!attribute [rw] asset_model_creation_date
2104
2425
  # The date the asset model was created, in Unix epoch time.
2105
2426
  # @return [Time]
@@ -2120,6 +2441,7 @@ module Aws::IoTSiteWise
2120
2441
  :asset_model_description,
2121
2442
  :asset_model_properties,
2122
2443
  :asset_model_hierarchies,
2444
+ :asset_model_composite_models,
2123
2445
  :asset_model_creation_date,
2124
2446
  :asset_model_last_update_date,
2125
2447
  :asset_model_status)
@@ -2164,13 +2486,23 @@ module Aws::IoTSiteWise
2164
2486
  #
2165
2487
  # @!attribute [rw] asset_property
2166
2488
  # The asset property's definition, alias, and notification state.
2489
+ #
2490
+ # This response includes this object for normal asset properties. If
2491
+ # you describe an asset property in a composite model, this response
2492
+ # includes the asset property information in `compositeModel`.
2167
2493
  # @return [Types::Property]
2168
2494
  #
2495
+ # @!attribute [rw] composite_model
2496
+ # The composite asset model that declares this asset property, if this
2497
+ # asset property exists in a composite model.
2498
+ # @return [Types::CompositeModelProperty]
2499
+ #
2169
2500
  class DescribeAssetPropertyResponse < Struct.new(
2170
2501
  :asset_id,
2171
2502
  :asset_name,
2172
2503
  :asset_model_id,
2173
- :asset_property)
2504
+ :asset_property,
2505
+ :composite_model)
2174
2506
  SENSITIVE = []
2175
2507
  include Aws::Structure
2176
2508
  end
@@ -2216,6 +2548,10 @@ module Aws::IoTSiteWise
2216
2548
  #
2217
2549
  # @!attribute [rw] asset_properties
2218
2550
  # The list of asset properties for the asset.
2551
+ #
2552
+ # This object doesn't include properties that you define in composite
2553
+ # models. You can find composite model properties in the
2554
+ # `assetCompositeModels` object.
2219
2555
  # @return [Array<Types::AssetProperty>]
2220
2556
  #
2221
2557
  # @!attribute [rw] asset_hierarchies
@@ -2223,6 +2559,10 @@ module Aws::IoTSiteWise
2223
2559
  # hierarchy specifies allowed parent/child asset relationships.
2224
2560
  # @return [Array<Types::AssetHierarchy>]
2225
2561
  #
2562
+ # @!attribute [rw] asset_composite_models
2563
+ # The composite models for the asset.
2564
+ # @return [Array<Types::AssetCompositeModel>]
2565
+ #
2226
2566
  # @!attribute [rw] asset_creation_date
2227
2567
  # The date the asset was created, in Unix epoch time.
2228
2568
  # @return [Time]
@@ -2243,6 +2583,7 @@ module Aws::IoTSiteWise
2243
2583
  :asset_model_id,
2244
2584
  :asset_properties,
2245
2585
  :asset_hierarchies,
2586
+ :asset_composite_models,
2246
2587
  :asset_creation_date,
2247
2588
  :asset_last_update_date,
2248
2589
  :asset_status)
@@ -2549,13 +2890,8 @@ module Aws::IoTSiteWise
2549
2890
  # @!attribute [rw] portal_start_url
2550
2891
  # The URL for the AWS IoT SiteWise Monitor portal. You can use this
2551
2892
  # URL to access portals that use AWS SSO for authentication. For
2552
- # portals that use IAM for authentication, you must use the
2553
- # [CreatePresignedPortalUrl][1] operation to create a URL that you can
2554
- # use to access the portal.
2555
- #
2556
- #
2557
- #
2558
- # [1]: https://docs.aws.amazon.com/AWS IoT SiteWise API ReferenceAPI_CreatePresignedPortalUrl.html
2893
+ # portals that use IAM for authentication, you must use the AWS IoT
2894
+ # SiteWise console to get a URL that you can use to access the portal.
2559
2895
  # @return [String]
2560
2896
  #
2561
2897
  # @!attribute [rw] portal_contact_email
@@ -3175,10 +3511,8 @@ module Aws::IoTSiteWise
3175
3511
  # }
3176
3512
  #
3177
3513
  # @!attribute [rw] arn
3178
- # The ARN of the IAM user. IAM users must have the
3179
- # `iotsitewise:CreatePresignedPortalUrl` permission to sign in to the
3180
- # portal. For more information, see [IAM ARNs][1] in the *IAM User
3181
- # Guide*.
3514
+ # The ARN of the IAM user. For more information, see [IAM ARNs][1] in
3515
+ # the *IAM User Guide*.
3182
3516
  #
3183
3517
  # <note markdown="1"> If you delete the IAM user, access policies that contain this
3184
3518
  # identity include an empty `arn`. You can delete the access policy
@@ -3492,6 +3826,65 @@ module Aws::IoTSiteWise
3492
3826
  include Aws::Structure
3493
3827
  end
3494
3828
 
3829
+ # @note When making an API call, you may pass ListAssetRelationshipsRequest
3830
+ # data as a hash:
3831
+ #
3832
+ # {
3833
+ # asset_id: "ID", # required
3834
+ # traversal_type: "PATH_TO_ROOT", # required, accepts PATH_TO_ROOT
3835
+ # next_token: "NextToken",
3836
+ # max_results: 1,
3837
+ # }
3838
+ #
3839
+ # @!attribute [rw] asset_id
3840
+ # The ID of the asset.
3841
+ # @return [String]
3842
+ #
3843
+ # @!attribute [rw] traversal_type
3844
+ # The type of traversal to use to identify asset relationships. Choose
3845
+ # the following option:
3846
+ #
3847
+ # * `PATH_TO_ROOT` – Identify the asset's parent assets up to the
3848
+ # root asset. The asset that you specify in `assetId` is the first
3849
+ # result in the list of `assetRelationshipSummaries`, and the root
3850
+ # asset is the last result.
3851
+ #
3852
+ # ^
3853
+ # @return [String]
3854
+ #
3855
+ # @!attribute [rw] next_token
3856
+ # The token to be used for the next set of paginated results.
3857
+ # @return [String]
3858
+ #
3859
+ # @!attribute [rw] max_results
3860
+ # The maximum number of results to be returned per paginated request.
3861
+ # @return [Integer]
3862
+ #
3863
+ class ListAssetRelationshipsRequest < Struct.new(
3864
+ :asset_id,
3865
+ :traversal_type,
3866
+ :next_token,
3867
+ :max_results)
3868
+ SENSITIVE = []
3869
+ include Aws::Structure
3870
+ end
3871
+
3872
+ # @!attribute [rw] asset_relationship_summaries
3873
+ # A list that summarizes each asset relationship.
3874
+ # @return [Array<Types::AssetRelationshipSummary>]
3875
+ #
3876
+ # @!attribute [rw] next_token
3877
+ # The token for the next set of results, or null if there are no
3878
+ # additional results.
3879
+ # @return [String]
3880
+ #
3881
+ class ListAssetRelationshipsResponse < Struct.new(
3882
+ :asset_relationship_summaries,
3883
+ :next_token)
3884
+ SENSITIVE = []
3885
+ include Aws::Structure
3886
+ end
3887
+
3495
3888
  # @note When making an API call, you may pass ListAssetsRequest
3496
3889
  # data as a hash:
3497
3890
  #
@@ -4089,13 +4482,8 @@ module Aws::IoTSiteWise
4089
4482
  # @!attribute [rw] start_url
4090
4483
  # The URL for the AWS IoT SiteWise Monitor portal. You can use this
4091
4484
  # URL to access portals that use AWS SSO for authentication. For
4092
- # portals that use IAM for authentication, you must use the
4093
- # [CreatePresignedPortalUrl][1] operation to create a URL that you can
4094
- # use to access the portal.
4095
- #
4096
- #
4097
- #
4098
- # [1]: https://docs.aws.amazon.com/AWS IoT SiteWise API ReferenceAPI_CreatePresignedPortalUrl.html
4485
+ # portals that use IAM for authentication, you must use the AWS IoT
4486
+ # SiteWise console to get a URL that you can use to access the portal.
4099
4487
  # @return [String]
4100
4488
  #
4101
4489
  # @!attribute [rw] creation_date
@@ -4756,6 +5144,17 @@ module Aws::IoTSiteWise
4756
5144
  include Aws::Structure
4757
5145
  end
4758
5146
 
5147
+ # You are not authorized.
5148
+ #
5149
+ # @!attribute [rw] message
5150
+ # @return [String]
5151
+ #
5152
+ class UnauthorizedException < Struct.new(
5153
+ :message)
5154
+ SENSITIVE = []
5155
+ include Aws::Structure
5156
+ end
5157
+
4759
5158
  # @note When making an API call, you may pass UntagResourceRequest
4760
5159
  # data as a hash:
4761
5160
  #
@@ -4864,7 +5263,8 @@ module Aws::IoTSiteWise
4864
5263
  # {
4865
5264
  # id: "ID",
4866
5265
  # name: "Name", # required
4867
- # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN
5266
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
5267
+ # data_type_spec: "Name",
4868
5268
  # unit: "PropertyUnit",
4869
5269
  # type: { # required
4870
5270
  # attribute: {
@@ -4911,6 +5311,58 @@ module Aws::IoTSiteWise
4911
5311
  # child_asset_model_id: "ID", # required
4912
5312
  # },
4913
5313
  # ],
5314
+ # asset_model_composite_models: [
5315
+ # {
5316
+ # name: "Name", # required
5317
+ # description: "Description",
5318
+ # type: "Name", # required
5319
+ # properties: [
5320
+ # {
5321
+ # id: "ID",
5322
+ # name: "Name", # required
5323
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
5324
+ # data_type_spec: "Name",
5325
+ # unit: "PropertyUnit",
5326
+ # type: { # required
5327
+ # attribute: {
5328
+ # default_value: "DefaultValue",
5329
+ # },
5330
+ # measurement: {
5331
+ # },
5332
+ # transform: {
5333
+ # expression: "Expression", # required
5334
+ # variables: [ # required
5335
+ # {
5336
+ # name: "VariableName", # required
5337
+ # value: { # required
5338
+ # property_id: "Macro", # required
5339
+ # hierarchy_id: "Macro",
5340
+ # },
5341
+ # },
5342
+ # ],
5343
+ # },
5344
+ # metric: {
5345
+ # expression: "Expression", # required
5346
+ # variables: [ # required
5347
+ # {
5348
+ # name: "VariableName", # required
5349
+ # value: { # required
5350
+ # property_id: "Macro", # required
5351
+ # hierarchy_id: "Macro",
5352
+ # },
5353
+ # },
5354
+ # ],
5355
+ # window: { # required
5356
+ # tumbling: {
5357
+ # interval: "Interval", # required
5358
+ # },
5359
+ # },
5360
+ # },
5361
+ # },
5362
+ # },
5363
+ # ],
5364
+ # },
5365
+ # ],
4914
5366
  # client_token: "ClientToken",
4915
5367
  # }
4916
5368
  #
@@ -4955,6 +5407,14 @@ module Aws::IoTSiteWise
4955
5407
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
4956
5408
  # @return [Array<Types::AssetModelHierarchy>]
4957
5409
  #
5410
+ # @!attribute [rw] asset_model_composite_models
5411
+ # The composite asset models that are part of this asset model.
5412
+ # Composite asset models are asset models that contain specific
5413
+ # properties. Each composite model has a type that defines the
5414
+ # properties that the composite model supports. Use composite asset
5415
+ # models to define alarms on this asset model.
5416
+ # @return [Array<Types::AssetModelCompositeModel>]
5417
+ #
4958
5418
  # @!attribute [rw] client_token
4959
5419
  # A unique case-sensitive identifier that you can provide to ensure
4960
5420
  # the idempotency of the request. Don't reuse this client token if a
@@ -4970,6 +5430,7 @@ module Aws::IoTSiteWise
4970
5430
  :asset_model_description,
4971
5431
  :asset_model_properties,
4972
5432
  :asset_model_hierarchies,
5433
+ :asset_model_composite_models,
4973
5434
  :client_token)
4974
5435
  SENSITIVE = []
4975
5436
  include Aws::Structure