aws-sdk-iotsitewise 1.55.0 → 1.57.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.
@@ -397,20 +397,38 @@ module Aws::IoTSiteWise
397
397
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/add-associated-assets.html
398
398
  #
399
399
  # @option params [required, String] :asset_id
400
- # The ID of the parent asset.
400
+ # The ID of the parent asset. This can be either the actual ID in UUID
401
+ # format, or else `externalId:` followed by the external ID, if it has
402
+ # one. For more information, see [Referencing objects with external
403
+ # IDs][1] in the *IoT SiteWise User Guide*.
404
+ #
405
+ #
406
+ #
407
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
401
408
  #
402
409
  # @option params [required, String] :hierarchy_id
403
- # The ID of a hierarchy in the parent asset's model. Hierarchies allow
404
- # different groupings of assets to be formed that all come from the same
405
- # asset model. For more information, see [Asset hierarchies][1] in the
406
- # *IoT SiteWise User Guide*.
410
+ # The ID of a hierarchy in the parent asset's model. (This can be
411
+ # either the actual ID in UUID format, or else `externalId:` followed by
412
+ # the external ID, if it has one. For more information, see [Referencing
413
+ # objects with external IDs][1] in the *IoT SiteWise User Guide*.)
414
+ # Hierarchies allow different groupings of assets to be formed that all
415
+ # come from the same asset model. For more information, see [Asset
416
+ # hierarchies][2] in the *IoT SiteWise User Guide*.
407
417
  #
408
418
  #
409
419
  #
410
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
420
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
421
+ # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
411
422
  #
412
423
  # @option params [required, String] :child_asset_id
413
- # The ID of the child asset to be associated.
424
+ # The ID of the child asset to be associated. This can be either the
425
+ # actual ID in UUID format, or else `externalId:` followed by the
426
+ # external ID, if it has one. For more information, see [Referencing
427
+ # objects with external IDs][1] in the *IoT SiteWise User Guide*.
428
+ #
429
+ #
430
+ #
431
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
414
432
  #
415
433
  # @option params [String] :client_token
416
434
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -425,9 +443,9 @@ module Aws::IoTSiteWise
425
443
  # @example Request syntax with placeholder values
426
444
  #
427
445
  # resp = client.associate_assets({
428
- # asset_id: "ID", # required
429
- # hierarchy_id: "ID", # required
430
- # child_asset_id: "ID", # required
446
+ # asset_id: "CustomID", # required
447
+ # hierarchy_id: "CustomID", # required
448
+ # child_asset_id: "CustomID", # required
431
449
  # client_token: "ClientToken",
432
450
  # })
433
451
  #
@@ -444,10 +462,25 @@ module Aws::IoTSiteWise
444
462
  # The alias that identifies the time series.
445
463
  #
446
464
  # @option params [required, String] :asset_id
447
- # The ID of the asset in which the asset property was created.
465
+ # The ID of the asset in which the asset property was created. This can
466
+ # be either the actual ID in UUID format, or else `externalId:` followed
467
+ # by the external ID, if it has one. For more information, see
468
+ # [Referencing objects with external IDs][1] in the *IoT SiteWise User
469
+ # Guide*.
470
+ #
471
+ #
472
+ #
473
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
448
474
  #
449
475
  # @option params [required, String] :property_id
450
- # The ID of the asset property.
476
+ # The ID of the asset property. This can be either the actual ID in UUID
477
+ # format, or else `externalId:` followed by the external ID, if it has
478
+ # one. For more information, see [Referencing objects with external
479
+ # IDs][1] in the *IoT SiteWise User Guide*.
480
+ #
481
+ #
482
+ #
483
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
451
484
  #
452
485
  # @option params [String] :client_token
453
486
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -463,8 +496,8 @@ module Aws::IoTSiteWise
463
496
  #
464
497
  # resp = client.associate_time_series_to_asset_property({
465
498
  # alias: "PropertyAlias", # required
466
- # asset_id: "ID", # required
467
- # property_id: "ID", # required
499
+ # asset_id: "CustomID", # required
500
+ # property_id: "CustomID", # required
468
501
  # client_token: "ClientToken",
469
502
  # })
470
503
  #
@@ -976,7 +1009,14 @@ module Aws::IoTSiteWise
976
1009
  # A friendly name for the asset.
977
1010
  #
978
1011
  # @option params [required, String] :asset_model_id
979
- # The ID of the asset model from which to create the asset.
1012
+ # The ID of the asset model from which to create the asset. This can be
1013
+ # either the actual ID in UUID format, or else `externalId:` followed by
1014
+ # the external ID, if it has one. For more information, see [Referencing
1015
+ # objects with external IDs][1] in the *IoT SiteWise User Guide*.
1016
+ #
1017
+ #
1018
+ #
1019
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
980
1020
  #
981
1021
  # @option params [String] :client_token
982
1022
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -998,6 +1038,22 @@ module Aws::IoTSiteWise
998
1038
  # @option params [String] :asset_description
999
1039
  # A description for the asset.
1000
1040
  #
1041
+ # @option params [String] :asset_id
1042
+ # The ID to assign to the asset, if desired. IoT SiteWise automatically
1043
+ # generates a unique ID for you, so this parameter is never required.
1044
+ # However, if you prefer to supply your own ID instead, you can specify
1045
+ # it here in UUID format. If you specify your own ID, it must be
1046
+ # globally unique.
1047
+ #
1048
+ # @option params [String] :asset_external_id
1049
+ # An external ID to assign to the asset. The external ID must be unique
1050
+ # within your Amazon Web Services account. For more information, see
1051
+ # [Using external IDs][1] in the *IoT SiteWise User Guide*.
1052
+ #
1053
+ #
1054
+ #
1055
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
1056
+ #
1001
1057
  # @return [Types::CreateAssetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1002
1058
  #
1003
1059
  # * {Types::CreateAssetResponse#asset_id #asset_id} => String
@@ -1008,12 +1064,14 @@ module Aws::IoTSiteWise
1008
1064
  #
1009
1065
  # resp = client.create_asset({
1010
1066
  # asset_name: "Name", # required
1011
- # asset_model_id: "ID", # required
1067
+ # asset_model_id: "CustomID", # required
1012
1068
  # client_token: "ClientToken",
1013
1069
  # tags: {
1014
1070
  # "TagKey" => "TagValue",
1015
1071
  # },
1016
1072
  # asset_description: "Description",
1073
+ # asset_id: "ID",
1074
+ # asset_external_id: "ExternalId",
1017
1075
  # })
1018
1076
  #
1019
1077
  # @example Response structure
@@ -1041,6 +1099,17 @@ module Aws::IoTSiteWise
1041
1099
  # model's property and hierarchy definitions. For more information, see
1042
1100
  # [Defining asset models][1] in the *IoT SiteWise User Guide*.
1043
1101
  #
1102
+ # You can create two types of asset models, `ASSET_MODEL` or
1103
+ # `COMPONENT_MODEL`.
1104
+ #
1105
+ # * **ASSET\_MODEL** – (default) An asset model that you can use to
1106
+ # create assets. Can't be included as a component in another asset
1107
+ # model.
1108
+ #
1109
+ # * **COMPONENT\_MODEL** – A reusable component that you can include in
1110
+ # the composite models of other asset models. You can't create assets
1111
+ # directly from this type of asset model.
1112
+ #
1044
1113
  #
1045
1114
  #
1046
1115
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/define-models.html
@@ -1078,11 +1147,22 @@ module Aws::IoTSiteWise
1078
1147
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
1079
1148
  #
1080
1149
  # @option params [Array<Types::AssetModelCompositeModelDefinition>] :asset_model_composite_models
1081
- # The composite asset models that are part of this asset model.
1082
- # Composite asset models are asset models that contain specific
1083
- # properties. Each composite model has a type that defines the
1084
- # properties that the composite model supports. Use composite asset
1085
- # models to define alarms on this asset model.
1150
+ # The composite models that are part of this asset model. It groups
1151
+ # properties (such as attributes, measurements, transforms, and metrics)
1152
+ # and child composite models that model parts of your industrial
1153
+ # equipment. Each composite model has a type that defines the properties
1154
+ # that the composite model supports. Use composite models to define
1155
+ # alarms on this asset model.
1156
+ #
1157
+ # <note markdown="1"> When creating custom composite models, you need to use
1158
+ # [CreateAssetModelCompositeModel][1]. For more information, see
1159
+ # &lt;LINK&gt;.
1160
+ #
1161
+ # </note>
1162
+ #
1163
+ #
1164
+ #
1165
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModelCompositeModel.html
1086
1166
  #
1087
1167
  # @option params [String] :client_token
1088
1168
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -1101,6 +1181,33 @@ module Aws::IoTSiteWise
1101
1181
  #
1102
1182
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html
1103
1183
  #
1184
+ # @option params [String] :asset_model_id
1185
+ # The ID to assign to the asset model, if desired. IoT SiteWise
1186
+ # automatically generates a unique ID for you, so this parameter is
1187
+ # never required. However, if you prefer to supply your own ID instead,
1188
+ # you can specify it here in UUID format. If you specify your own ID, it
1189
+ # must be globally unique.
1190
+ #
1191
+ # @option params [String] :asset_model_external_id
1192
+ # An external ID to assign to the asset model. The external ID must be
1193
+ # unique within your Amazon Web Services account. For more information,
1194
+ # see [Using external IDs][1] in the *IoT SiteWise User Guide*.
1195
+ #
1196
+ #
1197
+ #
1198
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
1199
+ #
1200
+ # @option params [String] :asset_model_type
1201
+ # The type of asset model.
1202
+ #
1203
+ # * **ASSET\_MODEL** – (default) An asset model that you can use to
1204
+ # create assets. Can't be included as a component in another asset
1205
+ # model.
1206
+ #
1207
+ # * **COMPONENT\_MODEL** – A reusable component that you can include in
1208
+ # the composite models of other asset models. You can't create assets
1209
+ # directly from this type of asset model.
1210
+ #
1104
1211
  # @return [Types::CreateAssetModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1105
1212
  #
1106
1213
  # * {Types::CreateAssetModelResponse#asset_model_id #asset_model_id} => String
@@ -1135,8 +1242,14 @@ module Aws::IoTSiteWise
1135
1242
  # {
1136
1243
  # name: "VariableName", # required
1137
1244
  # value: { # required
1138
- # property_id: "Macro", # required
1245
+ # property_id: "Macro",
1139
1246
  # hierarchy_id: "Macro",
1247
+ # property_path: [
1248
+ # {
1249
+ # id: "ID",
1250
+ # name: "Name",
1251
+ # },
1252
+ # ],
1140
1253
  # },
1141
1254
  # },
1142
1255
  # ],
@@ -1153,8 +1266,14 @@ module Aws::IoTSiteWise
1153
1266
  # {
1154
1267
  # name: "VariableName", # required
1155
1268
  # value: { # required
1156
- # property_id: "Macro", # required
1269
+ # property_id: "Macro",
1157
1270
  # hierarchy_id: "Macro",
1271
+ # property_path: [
1272
+ # {
1273
+ # id: "ID",
1274
+ # name: "Name",
1275
+ # },
1276
+ # ],
1158
1277
  # },
1159
1278
  # },
1160
1279
  # ],
@@ -1169,12 +1288,16 @@ module Aws::IoTSiteWise
1169
1288
  # },
1170
1289
  # },
1171
1290
  # },
1291
+ # id: "ID",
1292
+ # external_id: "ExternalId",
1172
1293
  # },
1173
1294
  # ],
1174
1295
  # asset_model_hierarchies: [
1175
1296
  # {
1176
1297
  # name: "Name", # required
1177
- # child_asset_model_id: "ID", # required
1298
+ # child_asset_model_id: "CustomID", # required
1299
+ # id: "ID",
1300
+ # external_id: "ExternalId",
1178
1301
  # },
1179
1302
  # ],
1180
1303
  # asset_model_composite_models: [
@@ -1205,8 +1328,14 @@ module Aws::IoTSiteWise
1205
1328
  # {
1206
1329
  # name: "VariableName", # required
1207
1330
  # value: { # required
1208
- # property_id: "Macro", # required
1331
+ # property_id: "Macro",
1209
1332
  # hierarchy_id: "Macro",
1333
+ # property_path: [
1334
+ # {
1335
+ # id: "ID",
1336
+ # name: "Name",
1337
+ # },
1338
+ # ],
1210
1339
  # },
1211
1340
  # },
1212
1341
  # ],
@@ -1223,8 +1352,14 @@ module Aws::IoTSiteWise
1223
1352
  # {
1224
1353
  # name: "VariableName", # required
1225
1354
  # value: { # required
1226
- # property_id: "Macro", # required
1355
+ # property_id: "Macro",
1227
1356
  # hierarchy_id: "Macro",
1357
+ # property_path: [
1358
+ # {
1359
+ # id: "ID",
1360
+ # name: "Name",
1361
+ # },
1362
+ # ],
1228
1363
  # },
1229
1364
  # },
1230
1365
  # ],
@@ -1239,14 +1374,21 @@ module Aws::IoTSiteWise
1239
1374
  # },
1240
1375
  # },
1241
1376
  # },
1377
+ # id: "ID",
1378
+ # external_id: "ExternalId",
1242
1379
  # },
1243
1380
  # ],
1381
+ # id: "ID",
1382
+ # external_id: "ExternalId",
1244
1383
  # },
1245
1384
  # ],
1246
1385
  # client_token: "ClientToken",
1247
1386
  # tags: {
1248
1387
  # "TagKey" => "TagValue",
1249
1388
  # },
1389
+ # asset_model_id: "ID",
1390
+ # asset_model_external_id: "ExternalId",
1391
+ # asset_model_type: "ASSET_MODEL", # accepts ASSET_MODEL, COMPONENT_MODEL
1250
1392
  # })
1251
1393
  #
1252
1394
  # @example Response structure
@@ -1267,13 +1409,212 @@ module Aws::IoTSiteWise
1267
1409
  req.send_request(options)
1268
1410
  end
1269
1411
 
1412
+ # Creates a custom composite model from specified property and hierarchy
1413
+ # definitions. There are two types of custom composite models, `inline`
1414
+ # and `component-model-based`.
1415
+ #
1416
+ # Use component-model-based custom composite models to define standard,
1417
+ # reusable components. A component-model-based custom composite model
1418
+ # consists of a name, a description, and the ID of the component model
1419
+ # it references. A component-model-based custom composite model has no
1420
+ # properties of its own; its referenced component model provides its
1421
+ # associated properties to any created assets. For more information, see
1422
+ # [Custom composite models (Components)][1] in the *IoT SiteWise User
1423
+ # Guide*.
1424
+ #
1425
+ # Use inline custom composite models to organize the properties of an
1426
+ # asset model. The properties of inline custom composite models are
1427
+ # local to the asset model where they are included and can't be used to
1428
+ # create multiple assets.
1429
+ #
1430
+ # To create a component-model-based model, specify the
1431
+ # `composedAssetModelId` of an existing asset model with
1432
+ # `assetModelType` of `COMPONENT_MODEL`.
1433
+ #
1434
+ # To create an inline model, specify the
1435
+ # `assetModelCompositeModelProperties` and don't include an
1436
+ # `composedAssetModelId`.
1437
+ #
1438
+ #
1439
+ #
1440
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/custom-composite-models.html
1441
+ #
1442
+ # @option params [required, String] :asset_model_id
1443
+ # The ID of the asset model this composite model is a part of.
1444
+ #
1445
+ # @option params [String] :parent_asset_model_composite_model_id
1446
+ # The ID of the parent composite model in this asset model relationship.
1447
+ #
1448
+ # @option params [String] :asset_model_composite_model_external_id
1449
+ # An external ID to assign to the composite model.
1450
+ #
1451
+ # If the composite model is a derived composite model, or one nested
1452
+ # inside a component model, you can only set the external ID using
1453
+ # `UpdateAssetModelCompositeModel` and specifying the derived ID of the
1454
+ # model or property from the created model it's a part of.
1455
+ #
1456
+ # @option params [String] :asset_model_composite_model_id
1457
+ # The ID of the composite model. IoT SiteWise automatically generates a
1458
+ # unique ID for you, so this parameter is never required. However, if
1459
+ # you prefer to supply your own ID instead, you can specify it here in
1460
+ # UUID format. If you specify your own ID, it must be globally unique.
1461
+ #
1462
+ # @option params [String] :asset_model_composite_model_description
1463
+ # A description for the composite model.
1464
+ #
1465
+ # @option params [required, String] :asset_model_composite_model_name
1466
+ # A unique, friendly name for the composite model.
1467
+ #
1468
+ # @option params [required, String] :asset_model_composite_model_type
1469
+ # The composite model type. Valid values are `AWS/ALARM`, `CUSTOM`, or `
1470
+ # AWS/L4E_ANOMALY`.
1471
+ #
1472
+ # @option params [String] :client_token
1473
+ # A unique case-sensitive identifier that you can provide to ensure the
1474
+ # idempotency of the request. Don't reuse this client token if a new
1475
+ # idempotent request is required.
1476
+ #
1477
+ # **A suitable default value is auto-generated.** You should normally
1478
+ # not need to pass this option.**
1479
+ #
1480
+ # @option params [String] :composed_asset_model_id
1481
+ # The ID of a composite model on this asset.
1482
+ #
1483
+ # @option params [Array<Types::AssetModelPropertyDefinition>] :asset_model_composite_model_properties
1484
+ # The property definitions of the composite model. For more information,
1485
+ # see &lt;LINK&gt;.
1486
+ #
1487
+ # You can specify up to 200 properties per composite model. For more
1488
+ # information, see [Quotas][1] in the *IoT SiteWise User Guide*.
1489
+ #
1490
+ #
1491
+ #
1492
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
1493
+ #
1494
+ # @return [Types::CreateAssetModelCompositeModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1495
+ #
1496
+ # * {Types::CreateAssetModelCompositeModelResponse#asset_model_composite_model_id #asset_model_composite_model_id} => String
1497
+ # * {Types::CreateAssetModelCompositeModelResponse#asset_model_composite_model_path #asset_model_composite_model_path} => Array&lt;Types::AssetModelCompositeModelPathSegment&gt;
1498
+ # * {Types::CreateAssetModelCompositeModelResponse#asset_model_status #asset_model_status} => Types::AssetModelStatus
1499
+ #
1500
+ # @example Request syntax with placeholder values
1501
+ #
1502
+ # resp = client.create_asset_model_composite_model({
1503
+ # asset_model_id: "CustomID", # required
1504
+ # parent_asset_model_composite_model_id: "CustomID",
1505
+ # asset_model_composite_model_external_id: "ExternalId",
1506
+ # asset_model_composite_model_id: "ID",
1507
+ # asset_model_composite_model_description: "Description",
1508
+ # asset_model_composite_model_name: "Name", # required
1509
+ # asset_model_composite_model_type: "Name", # required
1510
+ # client_token: "ClientToken",
1511
+ # composed_asset_model_id: "CustomID",
1512
+ # asset_model_composite_model_properties: [
1513
+ # {
1514
+ # name: "Name", # required
1515
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
1516
+ # data_type_spec: "Name",
1517
+ # unit: "PropertyUnit",
1518
+ # type: { # required
1519
+ # attribute: {
1520
+ # default_value: "DefaultValue",
1521
+ # },
1522
+ # measurement: {
1523
+ # processing_config: {
1524
+ # forwarding_config: { # required
1525
+ # state: "DISABLED", # required, accepts DISABLED, ENABLED
1526
+ # },
1527
+ # },
1528
+ # },
1529
+ # transform: {
1530
+ # expression: "Expression", # required
1531
+ # variables: [ # required
1532
+ # {
1533
+ # name: "VariableName", # required
1534
+ # value: { # required
1535
+ # property_id: "Macro",
1536
+ # hierarchy_id: "Macro",
1537
+ # property_path: [
1538
+ # {
1539
+ # id: "ID",
1540
+ # name: "Name",
1541
+ # },
1542
+ # ],
1543
+ # },
1544
+ # },
1545
+ # ],
1546
+ # processing_config: {
1547
+ # compute_location: "EDGE", # required, accepts EDGE, CLOUD
1548
+ # forwarding_config: {
1549
+ # state: "DISABLED", # required, accepts DISABLED, ENABLED
1550
+ # },
1551
+ # },
1552
+ # },
1553
+ # metric: {
1554
+ # expression: "Expression", # required
1555
+ # variables: [ # required
1556
+ # {
1557
+ # name: "VariableName", # required
1558
+ # value: { # required
1559
+ # property_id: "Macro",
1560
+ # hierarchy_id: "Macro",
1561
+ # property_path: [
1562
+ # {
1563
+ # id: "ID",
1564
+ # name: "Name",
1565
+ # },
1566
+ # ],
1567
+ # },
1568
+ # },
1569
+ # ],
1570
+ # window: { # required
1571
+ # tumbling: {
1572
+ # interval: "Interval", # required
1573
+ # offset: "Offset",
1574
+ # },
1575
+ # },
1576
+ # processing_config: {
1577
+ # compute_location: "EDGE", # required, accepts EDGE, CLOUD
1578
+ # },
1579
+ # },
1580
+ # },
1581
+ # id: "ID",
1582
+ # external_id: "ExternalId",
1583
+ # },
1584
+ # ],
1585
+ # })
1586
+ #
1587
+ # @example Response structure
1588
+ #
1589
+ # resp.asset_model_composite_model_id #=> String
1590
+ # resp.asset_model_composite_model_path #=> Array
1591
+ # resp.asset_model_composite_model_path[0].id #=> String
1592
+ # resp.asset_model_composite_model_path[0].name #=> String
1593
+ # resp.asset_model_status.state #=> String, one of "CREATING", "ACTIVE", "UPDATING", "PROPAGATING", "DELETING", "FAILED"
1594
+ # resp.asset_model_status.error.code #=> String, one of "VALIDATION_ERROR", "INTERNAL_FAILURE"
1595
+ # resp.asset_model_status.error.message #=> String
1596
+ # resp.asset_model_status.error.details #=> Array
1597
+ # resp.asset_model_status.error.details[0].code #=> String, one of "INCOMPATIBLE_COMPUTE_LOCATION", "INCOMPATIBLE_FORWARDING_CONFIGURATION"
1598
+ # resp.asset_model_status.error.details[0].message #=> String
1599
+ #
1600
+ # @overload create_asset_model_composite_model(params = {})
1601
+ # @param [Hash] params ({})
1602
+ def create_asset_model_composite_model(params = {}, options = {})
1603
+ req = build_request(:create_asset_model_composite_model, params)
1604
+ req.send_request(options)
1605
+ end
1606
+
1270
1607
  # Defines a job to ingest data to IoT SiteWise from Amazon S3. For more
1271
1608
  # information, see [Create a bulk import job (CLI)][1] in the *Amazon
1272
1609
  # Simple Storage Service User Guide*.
1273
1610
  #
1274
- # You must enable IoT SiteWise to export data to Amazon S3 before you
1275
- # create a bulk import job. For more information about how to configure
1276
- # storage settings, see [PutStorageConfiguration][2].
1611
+ # Before you create a bulk import job, you must enable IoT SiteWise warm
1612
+ # tier or IoT SiteWise cold tier. For more information about how to
1613
+ # configure storage settings, see [PutStorageConfiguration][2].
1614
+ #
1615
+ # Bulk import is designed to store historical data to IoT SiteWise. It
1616
+ # does not trigger computations or notifications on IoT SiteWise warm or
1617
+ # cold tier storage.
1277
1618
  #
1278
1619
  #
1279
1620
  #
@@ -1302,6 +1643,15 @@ module Aws::IoTSiteWise
1302
1643
  # Contains the configuration information of a job, such as the file
1303
1644
  # format used to save data in Amazon S3.
1304
1645
  #
1646
+ # @option params [Boolean] :adaptive_ingestion
1647
+ # If set to true, ingest new data into IoT SiteWise storage.
1648
+ # Measurements with notifications, metrics and transforms are computed.
1649
+ # If set to false, historical data is ingested into IoT SiteWise as is.
1650
+ #
1651
+ # @option params [Boolean] :delete_files_after_import
1652
+ # If set to true, your data files is deleted from S3, after ingestion
1653
+ # into IoT SiteWise storage.
1654
+ #
1305
1655
  # @return [Types::CreateBulkImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1306
1656
  #
1307
1657
  # * {Types::CreateBulkImportJobResponse#job_id #job_id} => String
@@ -1327,10 +1677,14 @@ module Aws::IoTSiteWise
1327
1677
  # job_configuration: { # required
1328
1678
  # file_format: { # required
1329
1679
  # csv: {
1330
- # column_names: ["ALIAS"], # accepts ALIAS, ASSET_ID, PROPERTY_ID, DATA_TYPE, TIMESTAMP_SECONDS, TIMESTAMP_NANO_OFFSET, QUALITY, VALUE
1680
+ # column_names: ["ALIAS"], # required, accepts ALIAS, ASSET_ID, PROPERTY_ID, DATA_TYPE, TIMESTAMP_SECONDS, TIMESTAMP_NANO_OFFSET, QUALITY, VALUE
1681
+ # },
1682
+ # parquet: {
1331
1683
  # },
1332
1684
  # },
1333
1685
  # },
1686
+ # adaptive_ingestion: false,
1687
+ # delete_files_after_import: false,
1334
1688
  # })
1335
1689
  #
1336
1690
  # @example Response structure
@@ -1531,13 +1885,12 @@ module Aws::IoTSiteWise
1531
1885
  # The service to use to authenticate users to the portal. Choose from
1532
1886
  # the following options:
1533
1887
  #
1534
- # * `SSO` – The portal uses IAM Identity Center (successor to Single
1535
- # Sign-On) to authenticate users and manage user permissions. Before
1536
- # you can create a portal that uses IAM Identity Center, you must
1537
- # enable IAM Identity Center. For more information, see [Enabling IAM
1538
- # Identity Center][1] in the *IoT SiteWise User Guide*. This option is
1539
- # only available in Amazon Web Services Regions other than the China
1540
- # Regions.
1888
+ # * `SSO` – The portal uses IAM Identity Center to authenticate users
1889
+ # and manage user permissions. Before you can create a portal that
1890
+ # uses IAM Identity Center, you must enable IAM Identity Center. For
1891
+ # more information, see [Enabling IAM Identity Center][1] in the *IoT
1892
+ # SiteWise User Guide*. This option is only available in Amazon Web
1893
+ # Services Regions other than the China Regions.
1541
1894
  #
1542
1895
  # * `IAM` – The portal uses Identity and Access Management to
1543
1896
  # authenticate users and manage user permissions.
@@ -1727,7 +2080,14 @@ module Aws::IoTSiteWise
1727
2080
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DisassociateAssets.html
1728
2081
  #
1729
2082
  # @option params [required, String] :asset_id
1730
- # The ID of the asset to delete.
2083
+ # The ID of the asset to delete. This can be either the actual ID in
2084
+ # UUID format, or else `externalId:` followed by the external ID, if it
2085
+ # has one. For more information, see [Referencing objects with external
2086
+ # IDs][1] in the *IoT SiteWise User Guide*.
2087
+ #
2088
+ #
2089
+ #
2090
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
1731
2091
  #
1732
2092
  # @option params [String] :client_token
1733
2093
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -1744,7 +2104,7 @@ module Aws::IoTSiteWise
1744
2104
  # @example Request syntax with placeholder values
1745
2105
  #
1746
2106
  # resp = client.delete_asset({
1747
- # asset_id: "ID", # required
2107
+ # asset_id: "CustomID", # required
1748
2108
  # client_token: "ClientToken",
1749
2109
  # })
1750
2110
  #
@@ -1776,7 +2136,14 @@ module Aws::IoTSiteWise
1776
2136
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/delete-assets-and-models.html
1777
2137
  #
1778
2138
  # @option params [required, String] :asset_model_id
1779
- # The ID of the asset model to delete.
2139
+ # The ID of the asset model to delete. This can be either the actual ID
2140
+ # in UUID format, or else `externalId:` followed by the external ID, if
2141
+ # it has one. For more information, see [Referencing objects with
2142
+ # external IDs][1] in the *IoT SiteWise User Guide*.
2143
+ #
2144
+ #
2145
+ #
2146
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
1780
2147
  #
1781
2148
  # @option params [String] :client_token
1782
2149
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -1793,7 +2160,7 @@ module Aws::IoTSiteWise
1793
2160
  # @example Request syntax with placeholder values
1794
2161
  #
1795
2162
  # resp = client.delete_asset_model({
1796
- # asset_model_id: "ID", # required
2163
+ # asset_model_id: "CustomID", # required
1797
2164
  # client_token: "ClientToken",
1798
2165
  # })
1799
2166
  #
@@ -1813,6 +2180,59 @@ module Aws::IoTSiteWise
1813
2180
  req.send_request(options)
1814
2181
  end
1815
2182
 
2183
+ # Deletes a composite model. This action can't be undone. You must
2184
+ # delete all assets created from a composite model before you can delete
2185
+ # the model. Also, you can't delete a composite model if a parent asset
2186
+ # model exists that contains a property formula expression that depends
2187
+ # on the asset model that you want to delete. For more information, see
2188
+ # [Deleting assets and models][1] in the *IoT SiteWise User Guide*.
2189
+ #
2190
+ #
2191
+ #
2192
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/delete-assets-and-models.html
2193
+ #
2194
+ # @option params [required, String] :asset_model_id
2195
+ # The ID of the asset model, in UUID format.
2196
+ #
2197
+ # @option params [required, String] :asset_model_composite_model_id
2198
+ # The ID of a composite model on this asset model.
2199
+ #
2200
+ # @option params [String] :client_token
2201
+ # A unique case-sensitive identifier that you can provide to ensure the
2202
+ # idempotency of the request. Don't reuse this client token if a new
2203
+ # idempotent request is required.
2204
+ #
2205
+ # **A suitable default value is auto-generated.** You should normally
2206
+ # not need to pass this option.**
2207
+ #
2208
+ # @return [Types::DeleteAssetModelCompositeModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2209
+ #
2210
+ # * {Types::DeleteAssetModelCompositeModelResponse#asset_model_status #asset_model_status} => Types::AssetModelStatus
2211
+ #
2212
+ # @example Request syntax with placeholder values
2213
+ #
2214
+ # resp = client.delete_asset_model_composite_model({
2215
+ # asset_model_id: "CustomID", # required
2216
+ # asset_model_composite_model_id: "CustomID", # required
2217
+ # client_token: "ClientToken",
2218
+ # })
2219
+ #
2220
+ # @example Response structure
2221
+ #
2222
+ # resp.asset_model_status.state #=> String, one of "CREATING", "ACTIVE", "UPDATING", "PROPAGATING", "DELETING", "FAILED"
2223
+ # resp.asset_model_status.error.code #=> String, one of "VALIDATION_ERROR", "INTERNAL_FAILURE"
2224
+ # resp.asset_model_status.error.message #=> String
2225
+ # resp.asset_model_status.error.details #=> Array
2226
+ # resp.asset_model_status.error.details[0].code #=> String, one of "INCOMPATIBLE_COMPUTE_LOCATION", "INCOMPATIBLE_FORWARDING_CONFIGURATION"
2227
+ # resp.asset_model_status.error.details[0].message #=> String
2228
+ #
2229
+ # @overload delete_asset_model_composite_model(params = {})
2230
+ # @param [Hash] params ({})
2231
+ def delete_asset_model_composite_model(params = {}, options = {})
2232
+ req = build_request(:delete_asset_model_composite_model, params)
2233
+ req.send_request(options)
2234
+ end
2235
+
1816
2236
  # Deletes a dashboard from IoT SiteWise Monitor.
1817
2237
  #
1818
2238
  # @option params [required, String] :dashboard_id
@@ -1950,10 +2370,25 @@ module Aws::IoTSiteWise
1950
2370
  # The alias that identifies the time series.
1951
2371
  #
1952
2372
  # @option params [String] :asset_id
1953
- # The ID of the asset in which the asset property was created.
2373
+ # The ID of the asset in which the asset property was created. This can
2374
+ # be either the actual ID in UUID format, or else `externalId:` followed
2375
+ # by the external ID, if it has one. For more information, see
2376
+ # [Referencing objects with external IDs][1] in the *IoT SiteWise User
2377
+ # Guide*.
2378
+ #
2379
+ #
2380
+ #
2381
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
1954
2382
  #
1955
2383
  # @option params [String] :property_id
1956
- # The ID of the asset property.
2384
+ # The ID of the asset property. This can be either the actual ID in UUID
2385
+ # format, or else `externalId:` followed by the external ID, if it has
2386
+ # one. For more information, see [Referencing objects with external
2387
+ # IDs][1] in the *IoT SiteWise User Guide*.
2388
+ #
2389
+ #
2390
+ #
2391
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
1957
2392
  #
1958
2393
  # @option params [String] :client_token
1959
2394
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -1969,8 +2404,8 @@ module Aws::IoTSiteWise
1969
2404
  #
1970
2405
  # resp = client.delete_time_series({
1971
2406
  # alias: "PropertyAlias",
1972
- # asset_id: "ID",
1973
- # property_id: "ID",
2407
+ # asset_id: "CustomID",
2408
+ # property_id: "CustomID",
1974
2409
  # client_token: "ClientToken",
1975
2410
  # })
1976
2411
  #
@@ -2024,10 +2459,51 @@ module Aws::IoTSiteWise
2024
2459
  req.send_request(options)
2025
2460
  end
2026
2461
 
2462
+ # Retrieves information about an action.
2463
+ #
2464
+ # @option params [required, String] :action_id
2465
+ # The ID of the action.
2466
+ #
2467
+ # @return [Types::DescribeActionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2468
+ #
2469
+ # * {Types::DescribeActionResponse#action_id #action_id} => String
2470
+ # * {Types::DescribeActionResponse#target_resource #target_resource} => Types::TargetResource
2471
+ # * {Types::DescribeActionResponse#action_definition_id #action_definition_id} => String
2472
+ # * {Types::DescribeActionResponse#action_payload #action_payload} => Types::ActionPayload
2473
+ # * {Types::DescribeActionResponse#execution_time #execution_time} => Time
2474
+ #
2475
+ # @example Request syntax with placeholder values
2476
+ #
2477
+ # resp = client.describe_action({
2478
+ # action_id: "ID", # required
2479
+ # })
2480
+ #
2481
+ # @example Response structure
2482
+ #
2483
+ # resp.action_id #=> String
2484
+ # resp.target_resource.asset_id #=> String
2485
+ # resp.action_definition_id #=> String
2486
+ # resp.action_payload.string_value #=> String
2487
+ # resp.execution_time #=> Time
2488
+ #
2489
+ # @overload describe_action(params = {})
2490
+ # @param [Hash] params ({})
2491
+ def describe_action(params = {}, options = {})
2492
+ req = build_request(:describe_action, params)
2493
+ req.send_request(options)
2494
+ end
2495
+
2027
2496
  # Retrieves information about an asset.
2028
2497
  #
2029
2498
  # @option params [required, String] :asset_id
2030
- # The ID of the asset.
2499
+ # The ID of the asset. This can be either the actual ID in UUID format,
2500
+ # or else `externalId:` followed by the external ID, if it has one. For
2501
+ # more information, see [Referencing objects with external IDs][1] in
2502
+ # the *IoT SiteWise User Guide*.
2503
+ #
2504
+ #
2505
+ #
2506
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2031
2507
  #
2032
2508
  # @option params [Boolean] :exclude_properties
2033
2509
  # Whether or not to exclude asset properties from the response.
@@ -2045,11 +2521,13 @@ module Aws::IoTSiteWise
2045
2521
  # * {Types::DescribeAssetResponse#asset_last_update_date #asset_last_update_date} => Time
2046
2522
  # * {Types::DescribeAssetResponse#asset_status #asset_status} => Types::AssetStatus
2047
2523
  # * {Types::DescribeAssetResponse#asset_description #asset_description} => String
2524
+ # * {Types::DescribeAssetResponse#asset_composite_model_summaries #asset_composite_model_summaries} => Array&lt;Types::AssetCompositeModelSummary&gt;
2525
+ # * {Types::DescribeAssetResponse#asset_external_id #asset_external_id} => String
2048
2526
  #
2049
2527
  # @example Request syntax with placeholder values
2050
2528
  #
2051
2529
  # resp = client.describe_asset({
2052
- # asset_id: "ID", # required
2530
+ # asset_id: "CustomID", # required
2053
2531
  # exclude_properties: false,
2054
2532
  # })
2055
2533
  #
@@ -2068,9 +2546,14 @@ module Aws::IoTSiteWise
2068
2546
  # resp.asset_properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
2069
2547
  # resp.asset_properties[0].data_type_spec #=> String
2070
2548
  # resp.asset_properties[0].unit #=> String
2549
+ # resp.asset_properties[0].path #=> Array
2550
+ # resp.asset_properties[0].path[0].id #=> String
2551
+ # resp.asset_properties[0].path[0].name #=> String
2552
+ # resp.asset_properties[0].external_id #=> String
2071
2553
  # resp.asset_hierarchies #=> Array
2072
2554
  # resp.asset_hierarchies[0].id #=> String
2073
2555
  # resp.asset_hierarchies[0].name #=> String
2556
+ # resp.asset_hierarchies[0].external_id #=> String
2074
2557
  # resp.asset_composite_models #=> Array
2075
2558
  # resp.asset_composite_models[0].name #=> String
2076
2559
  # resp.asset_composite_models[0].description #=> String
@@ -2084,7 +2567,12 @@ module Aws::IoTSiteWise
2084
2567
  # resp.asset_composite_models[0].properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
2085
2568
  # resp.asset_composite_models[0].properties[0].data_type_spec #=> String
2086
2569
  # resp.asset_composite_models[0].properties[0].unit #=> String
2570
+ # resp.asset_composite_models[0].properties[0].path #=> Array
2571
+ # resp.asset_composite_models[0].properties[0].path[0].id #=> String
2572
+ # resp.asset_composite_models[0].properties[0].path[0].name #=> String
2573
+ # resp.asset_composite_models[0].properties[0].external_id #=> String
2087
2574
  # resp.asset_composite_models[0].id #=> String
2575
+ # resp.asset_composite_models[0].external_id #=> String
2088
2576
  # resp.asset_creation_date #=> Time
2089
2577
  # resp.asset_last_update_date #=> Time
2090
2578
  # resp.asset_status.state #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "FAILED"
@@ -2094,6 +2582,16 @@ module Aws::IoTSiteWise
2094
2582
  # resp.asset_status.error.details[0].code #=> String, one of "INCOMPATIBLE_COMPUTE_LOCATION", "INCOMPATIBLE_FORWARDING_CONFIGURATION"
2095
2583
  # resp.asset_status.error.details[0].message #=> String
2096
2584
  # resp.asset_description #=> String
2585
+ # resp.asset_composite_model_summaries #=> Array
2586
+ # resp.asset_composite_model_summaries[0].id #=> String
2587
+ # resp.asset_composite_model_summaries[0].external_id #=> String
2588
+ # resp.asset_composite_model_summaries[0].name #=> String
2589
+ # resp.asset_composite_model_summaries[0].type #=> String
2590
+ # resp.asset_composite_model_summaries[0].description #=> String
2591
+ # resp.asset_composite_model_summaries[0].path #=> Array
2592
+ # resp.asset_composite_model_summaries[0].path[0].id #=> String
2593
+ # resp.asset_composite_model_summaries[0].path[0].name #=> String
2594
+ # resp.asset_external_id #=> String
2097
2595
  #
2098
2596
  #
2099
2597
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -2108,31 +2606,135 @@ module Aws::IoTSiteWise
2108
2606
  req.send_request(options)
2109
2607
  end
2110
2608
 
2111
- # Retrieves information about an asset model.
2609
+ # Retrieves information about an asset composite model (also known as an
2610
+ # asset component). An `AssetCompositeModel` is an instance of an
2611
+ # `AssetModelCompositeModel`. If you want to see information about the
2612
+ # model this is based on, call [DescribeAssetModelCompositeModel][1].
2112
2613
  #
2113
- # @option params [required, String] :asset_model_id
2114
- # The ID of the asset model.
2115
2614
  #
2116
- # @option params [Boolean] :exclude_properties
2117
- # Whether or not to exclude asset model properties from the response.
2118
2615
  #
2119
- # @return [Types::DescribeAssetModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2616
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModelCompositeModel.html
2120
2617
  #
2121
- # * {Types::DescribeAssetModelResponse#asset_model_id #asset_model_id} => String
2122
- # * {Types::DescribeAssetModelResponse#asset_model_arn #asset_model_arn} => String
2123
- # * {Types::DescribeAssetModelResponse#asset_model_name #asset_model_name} => String
2124
- # * {Types::DescribeAssetModelResponse#asset_model_description #asset_model_description} => String
2125
- # * {Types::DescribeAssetModelResponse#asset_model_properties #asset_model_properties} => Array&lt;Types::AssetModelProperty&gt;
2126
- # * {Types::DescribeAssetModelResponse#asset_model_hierarchies #asset_model_hierarchies} => Array&lt;Types::AssetModelHierarchy&gt;
2127
- # * {Types::DescribeAssetModelResponse#asset_model_composite_models #asset_model_composite_models} => Array&lt;Types::AssetModelCompositeModel&gt;
2128
- # * {Types::DescribeAssetModelResponse#asset_model_creation_date #asset_model_creation_date} => Time
2129
- # * {Types::DescribeAssetModelResponse#asset_model_last_update_date #asset_model_last_update_date} => Time
2130
- # * {Types::DescribeAssetModelResponse#asset_model_status #asset_model_status} => Types::AssetModelStatus
2618
+ # @option params [required, String] :asset_id
2619
+ # The ID of the asset. This can be either the actual ID in UUID format,
2620
+ # or else `externalId:` followed by the external ID, if it has one. For
2621
+ # more information, see [Referencing objects with external IDs][1] in
2622
+ # the *IoT SiteWise User Guide*.
2131
2623
  #
2132
- # @example Request syntax with placeholder values
2133
2624
  #
2134
- # resp = client.describe_asset_model({
2135
- # asset_model_id: "ID", # required
2625
+ #
2626
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2627
+ #
2628
+ # @option params [required, String] :asset_composite_model_id
2629
+ # The ID of a composite model on this asset. This can be either the
2630
+ # actual ID in UUID format, or else `externalId:` followed by the
2631
+ # external ID, if it has one. For more information, see [Referencing
2632
+ # objects with external IDs][1] in the *IoT SiteWise User Guide*.
2633
+ #
2634
+ #
2635
+ #
2636
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2637
+ #
2638
+ # @return [Types::DescribeAssetCompositeModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2639
+ #
2640
+ # * {Types::DescribeAssetCompositeModelResponse#asset_id #asset_id} => String
2641
+ # * {Types::DescribeAssetCompositeModelResponse#asset_composite_model_id #asset_composite_model_id} => String
2642
+ # * {Types::DescribeAssetCompositeModelResponse#asset_composite_model_external_id #asset_composite_model_external_id} => String
2643
+ # * {Types::DescribeAssetCompositeModelResponse#asset_composite_model_path #asset_composite_model_path} => Array&lt;Types::AssetCompositeModelPathSegment&gt;
2644
+ # * {Types::DescribeAssetCompositeModelResponse#asset_composite_model_name #asset_composite_model_name} => String
2645
+ # * {Types::DescribeAssetCompositeModelResponse#asset_composite_model_description #asset_composite_model_description} => String
2646
+ # * {Types::DescribeAssetCompositeModelResponse#asset_composite_model_type #asset_composite_model_type} => String
2647
+ # * {Types::DescribeAssetCompositeModelResponse#asset_composite_model_properties #asset_composite_model_properties} => Array&lt;Types::AssetProperty&gt;
2648
+ # * {Types::DescribeAssetCompositeModelResponse#asset_composite_model_summaries #asset_composite_model_summaries} => Array&lt;Types::AssetCompositeModelSummary&gt;
2649
+ # * {Types::DescribeAssetCompositeModelResponse#action_definitions #action_definitions} => Array&lt;Types::ActionDefinition&gt;
2650
+ #
2651
+ # @example Request syntax with placeholder values
2652
+ #
2653
+ # resp = client.describe_asset_composite_model({
2654
+ # asset_id: "CustomID", # required
2655
+ # asset_composite_model_id: "CustomID", # required
2656
+ # })
2657
+ #
2658
+ # @example Response structure
2659
+ #
2660
+ # resp.asset_id #=> String
2661
+ # resp.asset_composite_model_id #=> String
2662
+ # resp.asset_composite_model_external_id #=> String
2663
+ # resp.asset_composite_model_path #=> Array
2664
+ # resp.asset_composite_model_path[0].id #=> String
2665
+ # resp.asset_composite_model_path[0].name #=> String
2666
+ # resp.asset_composite_model_name #=> String
2667
+ # resp.asset_composite_model_description #=> String
2668
+ # resp.asset_composite_model_type #=> String
2669
+ # resp.asset_composite_model_properties #=> Array
2670
+ # resp.asset_composite_model_properties[0].id #=> String
2671
+ # resp.asset_composite_model_properties[0].name #=> String
2672
+ # resp.asset_composite_model_properties[0].alias #=> String
2673
+ # resp.asset_composite_model_properties[0].notification.topic #=> String
2674
+ # resp.asset_composite_model_properties[0].notification.state #=> String, one of "ENABLED", "DISABLED"
2675
+ # resp.asset_composite_model_properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
2676
+ # resp.asset_composite_model_properties[0].data_type_spec #=> String
2677
+ # resp.asset_composite_model_properties[0].unit #=> String
2678
+ # resp.asset_composite_model_properties[0].path #=> Array
2679
+ # resp.asset_composite_model_properties[0].path[0].id #=> String
2680
+ # resp.asset_composite_model_properties[0].path[0].name #=> String
2681
+ # resp.asset_composite_model_properties[0].external_id #=> String
2682
+ # resp.asset_composite_model_summaries #=> Array
2683
+ # resp.asset_composite_model_summaries[0].id #=> String
2684
+ # resp.asset_composite_model_summaries[0].external_id #=> String
2685
+ # resp.asset_composite_model_summaries[0].name #=> String
2686
+ # resp.asset_composite_model_summaries[0].type #=> String
2687
+ # resp.asset_composite_model_summaries[0].description #=> String
2688
+ # resp.asset_composite_model_summaries[0].path #=> Array
2689
+ # resp.asset_composite_model_summaries[0].path[0].id #=> String
2690
+ # resp.asset_composite_model_summaries[0].path[0].name #=> String
2691
+ # resp.action_definitions #=> Array
2692
+ # resp.action_definitions[0].action_definition_id #=> String
2693
+ # resp.action_definitions[0].action_name #=> String
2694
+ # resp.action_definitions[0].action_type #=> String
2695
+ #
2696
+ # @overload describe_asset_composite_model(params = {})
2697
+ # @param [Hash] params ({})
2698
+ def describe_asset_composite_model(params = {}, options = {})
2699
+ req = build_request(:describe_asset_composite_model, params)
2700
+ req.send_request(options)
2701
+ end
2702
+
2703
+ # Retrieves information about an asset model.
2704
+ #
2705
+ # @option params [required, String] :asset_model_id
2706
+ # The ID of the asset model. This can be either the actual ID in UUID
2707
+ # format, or else `externalId:` followed by the external ID, if it has
2708
+ # one. For more information, see [Referencing objects with external
2709
+ # IDs][1] in the *IoT SiteWise User Guide*.
2710
+ #
2711
+ #
2712
+ #
2713
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2714
+ #
2715
+ # @option params [Boolean] :exclude_properties
2716
+ # Whether or not to exclude asset model properties from the response.
2717
+ #
2718
+ # @return [Types::DescribeAssetModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2719
+ #
2720
+ # * {Types::DescribeAssetModelResponse#asset_model_id #asset_model_id} => String
2721
+ # * {Types::DescribeAssetModelResponse#asset_model_arn #asset_model_arn} => String
2722
+ # * {Types::DescribeAssetModelResponse#asset_model_name #asset_model_name} => String
2723
+ # * {Types::DescribeAssetModelResponse#asset_model_description #asset_model_description} => String
2724
+ # * {Types::DescribeAssetModelResponse#asset_model_properties #asset_model_properties} => Array&lt;Types::AssetModelProperty&gt;
2725
+ # * {Types::DescribeAssetModelResponse#asset_model_hierarchies #asset_model_hierarchies} => Array&lt;Types::AssetModelHierarchy&gt;
2726
+ # * {Types::DescribeAssetModelResponse#asset_model_composite_models #asset_model_composite_models} => Array&lt;Types::AssetModelCompositeModel&gt;
2727
+ # * {Types::DescribeAssetModelResponse#asset_model_creation_date #asset_model_creation_date} => Time
2728
+ # * {Types::DescribeAssetModelResponse#asset_model_last_update_date #asset_model_last_update_date} => Time
2729
+ # * {Types::DescribeAssetModelResponse#asset_model_status #asset_model_status} => Types::AssetModelStatus
2730
+ # * {Types::DescribeAssetModelResponse#asset_model_type #asset_model_type} => String
2731
+ # * {Types::DescribeAssetModelResponse#asset_model_composite_model_summaries #asset_model_composite_model_summaries} => Array&lt;Types::AssetModelCompositeModelSummary&gt;
2732
+ # * {Types::DescribeAssetModelResponse#asset_model_external_id #asset_model_external_id} => String
2733
+ #
2734
+ # @example Request syntax with placeholder values
2735
+ #
2736
+ # resp = client.describe_asset_model({
2737
+ # asset_model_id: "CustomID", # required
2136
2738
  # exclude_properties: false,
2137
2739
  # })
2138
2740
  #
@@ -2155,6 +2757,9 @@ module Aws::IoTSiteWise
2155
2757
  # resp.asset_model_properties[0].type.transform.variables[0].name #=> String
2156
2758
  # resp.asset_model_properties[0].type.transform.variables[0].value.property_id #=> String
2157
2759
  # resp.asset_model_properties[0].type.transform.variables[0].value.hierarchy_id #=> String
2760
+ # resp.asset_model_properties[0].type.transform.variables[0].value.property_path #=> Array
2761
+ # resp.asset_model_properties[0].type.transform.variables[0].value.property_path[0].id #=> String
2762
+ # resp.asset_model_properties[0].type.transform.variables[0].value.property_path[0].name #=> String
2158
2763
  # resp.asset_model_properties[0].type.transform.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
2159
2764
  # resp.asset_model_properties[0].type.transform.processing_config.forwarding_config.state #=> String, one of "DISABLED", "ENABLED"
2160
2765
  # resp.asset_model_properties[0].type.metric.expression #=> String
@@ -2162,13 +2767,21 @@ module Aws::IoTSiteWise
2162
2767
  # resp.asset_model_properties[0].type.metric.variables[0].name #=> String
2163
2768
  # resp.asset_model_properties[0].type.metric.variables[0].value.property_id #=> String
2164
2769
  # resp.asset_model_properties[0].type.metric.variables[0].value.hierarchy_id #=> String
2770
+ # resp.asset_model_properties[0].type.metric.variables[0].value.property_path #=> Array
2771
+ # resp.asset_model_properties[0].type.metric.variables[0].value.property_path[0].id #=> String
2772
+ # resp.asset_model_properties[0].type.metric.variables[0].value.property_path[0].name #=> String
2165
2773
  # resp.asset_model_properties[0].type.metric.window.tumbling.interval #=> String
2166
2774
  # resp.asset_model_properties[0].type.metric.window.tumbling.offset #=> String
2167
2775
  # resp.asset_model_properties[0].type.metric.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
2776
+ # resp.asset_model_properties[0].path #=> Array
2777
+ # resp.asset_model_properties[0].path[0].id #=> String
2778
+ # resp.asset_model_properties[0].path[0].name #=> String
2779
+ # resp.asset_model_properties[0].external_id #=> String
2168
2780
  # resp.asset_model_hierarchies #=> Array
2169
2781
  # resp.asset_model_hierarchies[0].id #=> String
2170
2782
  # resp.asset_model_hierarchies[0].name #=> String
2171
2783
  # resp.asset_model_hierarchies[0].child_asset_model_id #=> String
2784
+ # resp.asset_model_hierarchies[0].external_id #=> String
2172
2785
  # resp.asset_model_composite_models #=> Array
2173
2786
  # resp.asset_model_composite_models[0].name #=> String
2174
2787
  # resp.asset_model_composite_models[0].description #=> String
@@ -2186,6 +2799,9 @@ module Aws::IoTSiteWise
2186
2799
  # resp.asset_model_composite_models[0].properties[0].type.transform.variables[0].name #=> String
2187
2800
  # resp.asset_model_composite_models[0].properties[0].type.transform.variables[0].value.property_id #=> String
2188
2801
  # resp.asset_model_composite_models[0].properties[0].type.transform.variables[0].value.hierarchy_id #=> String
2802
+ # resp.asset_model_composite_models[0].properties[0].type.transform.variables[0].value.property_path #=> Array
2803
+ # resp.asset_model_composite_models[0].properties[0].type.transform.variables[0].value.property_path[0].id #=> String
2804
+ # resp.asset_model_composite_models[0].properties[0].type.transform.variables[0].value.property_path[0].name #=> String
2189
2805
  # resp.asset_model_composite_models[0].properties[0].type.transform.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
2190
2806
  # resp.asset_model_composite_models[0].properties[0].type.transform.processing_config.forwarding_config.state #=> String, one of "DISABLED", "ENABLED"
2191
2807
  # resp.asset_model_composite_models[0].properties[0].type.metric.expression #=> String
@@ -2193,10 +2809,18 @@ module Aws::IoTSiteWise
2193
2809
  # resp.asset_model_composite_models[0].properties[0].type.metric.variables[0].name #=> String
2194
2810
  # resp.asset_model_composite_models[0].properties[0].type.metric.variables[0].value.property_id #=> String
2195
2811
  # resp.asset_model_composite_models[0].properties[0].type.metric.variables[0].value.hierarchy_id #=> String
2812
+ # resp.asset_model_composite_models[0].properties[0].type.metric.variables[0].value.property_path #=> Array
2813
+ # resp.asset_model_composite_models[0].properties[0].type.metric.variables[0].value.property_path[0].id #=> String
2814
+ # resp.asset_model_composite_models[0].properties[0].type.metric.variables[0].value.property_path[0].name #=> String
2196
2815
  # resp.asset_model_composite_models[0].properties[0].type.metric.window.tumbling.interval #=> String
2197
2816
  # resp.asset_model_composite_models[0].properties[0].type.metric.window.tumbling.offset #=> String
2198
2817
  # resp.asset_model_composite_models[0].properties[0].type.metric.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
2818
+ # resp.asset_model_composite_models[0].properties[0].path #=> Array
2819
+ # resp.asset_model_composite_models[0].properties[0].path[0].id #=> String
2820
+ # resp.asset_model_composite_models[0].properties[0].path[0].name #=> String
2821
+ # resp.asset_model_composite_models[0].properties[0].external_id #=> String
2199
2822
  # resp.asset_model_composite_models[0].id #=> String
2823
+ # resp.asset_model_composite_models[0].external_id #=> String
2200
2824
  # resp.asset_model_creation_date #=> Time
2201
2825
  # resp.asset_model_last_update_date #=> Time
2202
2826
  # resp.asset_model_status.state #=> String, one of "CREATING", "ACTIVE", "UPDATING", "PROPAGATING", "DELETING", "FAILED"
@@ -2205,6 +2829,17 @@ module Aws::IoTSiteWise
2205
2829
  # resp.asset_model_status.error.details #=> Array
2206
2830
  # resp.asset_model_status.error.details[0].code #=> String, one of "INCOMPATIBLE_COMPUTE_LOCATION", "INCOMPATIBLE_FORWARDING_CONFIGURATION"
2207
2831
  # resp.asset_model_status.error.details[0].message #=> String
2832
+ # resp.asset_model_type #=> String, one of "ASSET_MODEL", "COMPONENT_MODEL"
2833
+ # resp.asset_model_composite_model_summaries #=> Array
2834
+ # resp.asset_model_composite_model_summaries[0].id #=> String
2835
+ # resp.asset_model_composite_model_summaries[0].external_id #=> String
2836
+ # resp.asset_model_composite_model_summaries[0].name #=> String
2837
+ # resp.asset_model_composite_model_summaries[0].type #=> String
2838
+ # resp.asset_model_composite_model_summaries[0].description #=> String
2839
+ # resp.asset_model_composite_model_summaries[0].path #=> Array
2840
+ # resp.asset_model_composite_model_summaries[0].path[0].id #=> String
2841
+ # resp.asset_model_composite_model_summaries[0].path[0].name #=> String
2842
+ # resp.asset_model_external_id #=> String
2208
2843
  #
2209
2844
  #
2210
2845
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -2219,6 +2854,122 @@ module Aws::IoTSiteWise
2219
2854
  req.send_request(options)
2220
2855
  end
2221
2856
 
2857
+ # Retrieves information about an asset model composite model (also known
2858
+ # as an asset model component). For more information, see [Custom
2859
+ # composite models (Components)][1] in the *IoT SiteWise User Guide*.
2860
+ #
2861
+ #
2862
+ #
2863
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/custom-composite-models.html
2864
+ #
2865
+ # @option params [required, String] :asset_model_id
2866
+ # The ID of the asset model. This can be either the actual ID in UUID
2867
+ # format, or else `externalId:` followed by the external ID, if it has
2868
+ # one. For more information, see [Referencing objects with external
2869
+ # IDs][1] in the *IoT SiteWise User Guide*.
2870
+ #
2871
+ #
2872
+ #
2873
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2874
+ #
2875
+ # @option params [required, String] :asset_model_composite_model_id
2876
+ # The ID of a composite model on this asset model. This can be either
2877
+ # the actual ID in UUID format, or else `externalId:` followed by the
2878
+ # external ID, if it has one. For more information, see [Referencing
2879
+ # objects with external IDs][1] in the *IoT SiteWise User Guide*.
2880
+ #
2881
+ #
2882
+ #
2883
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2884
+ #
2885
+ # @return [Types::DescribeAssetModelCompositeModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2886
+ #
2887
+ # * {Types::DescribeAssetModelCompositeModelResponse#asset_model_id #asset_model_id} => String
2888
+ # * {Types::DescribeAssetModelCompositeModelResponse#asset_model_composite_model_id #asset_model_composite_model_id} => String
2889
+ # * {Types::DescribeAssetModelCompositeModelResponse#asset_model_composite_model_external_id #asset_model_composite_model_external_id} => String
2890
+ # * {Types::DescribeAssetModelCompositeModelResponse#asset_model_composite_model_path #asset_model_composite_model_path} => Array&lt;Types::AssetModelCompositeModelPathSegment&gt;
2891
+ # * {Types::DescribeAssetModelCompositeModelResponse#asset_model_composite_model_name #asset_model_composite_model_name} => String
2892
+ # * {Types::DescribeAssetModelCompositeModelResponse#asset_model_composite_model_description #asset_model_composite_model_description} => String
2893
+ # * {Types::DescribeAssetModelCompositeModelResponse#asset_model_composite_model_type #asset_model_composite_model_type} => String
2894
+ # * {Types::DescribeAssetModelCompositeModelResponse#asset_model_composite_model_properties #asset_model_composite_model_properties} => Array&lt;Types::AssetModelProperty&gt;
2895
+ # * {Types::DescribeAssetModelCompositeModelResponse#composition_details #composition_details} => Types::CompositionDetails
2896
+ # * {Types::DescribeAssetModelCompositeModelResponse#asset_model_composite_model_summaries #asset_model_composite_model_summaries} => Array&lt;Types::AssetModelCompositeModelSummary&gt;
2897
+ # * {Types::DescribeAssetModelCompositeModelResponse#action_definitions #action_definitions} => Array&lt;Types::ActionDefinition&gt;
2898
+ #
2899
+ # @example Request syntax with placeholder values
2900
+ #
2901
+ # resp = client.describe_asset_model_composite_model({
2902
+ # asset_model_id: "CustomID", # required
2903
+ # asset_model_composite_model_id: "CustomID", # required
2904
+ # })
2905
+ #
2906
+ # @example Response structure
2907
+ #
2908
+ # resp.asset_model_id #=> String
2909
+ # resp.asset_model_composite_model_id #=> String
2910
+ # resp.asset_model_composite_model_external_id #=> String
2911
+ # resp.asset_model_composite_model_path #=> Array
2912
+ # resp.asset_model_composite_model_path[0].id #=> String
2913
+ # resp.asset_model_composite_model_path[0].name #=> String
2914
+ # resp.asset_model_composite_model_name #=> String
2915
+ # resp.asset_model_composite_model_description #=> String
2916
+ # resp.asset_model_composite_model_type #=> String
2917
+ # resp.asset_model_composite_model_properties #=> Array
2918
+ # resp.asset_model_composite_model_properties[0].id #=> String
2919
+ # resp.asset_model_composite_model_properties[0].name #=> String
2920
+ # resp.asset_model_composite_model_properties[0].data_type #=> String, one of "STRING", "INTEGER", "DOUBLE", "BOOLEAN", "STRUCT"
2921
+ # resp.asset_model_composite_model_properties[0].data_type_spec #=> String
2922
+ # resp.asset_model_composite_model_properties[0].unit #=> String
2923
+ # resp.asset_model_composite_model_properties[0].type.attribute.default_value #=> String
2924
+ # resp.asset_model_composite_model_properties[0].type.measurement.processing_config.forwarding_config.state #=> String, one of "DISABLED", "ENABLED"
2925
+ # resp.asset_model_composite_model_properties[0].type.transform.expression #=> String
2926
+ # resp.asset_model_composite_model_properties[0].type.transform.variables #=> Array
2927
+ # resp.asset_model_composite_model_properties[0].type.transform.variables[0].name #=> String
2928
+ # resp.asset_model_composite_model_properties[0].type.transform.variables[0].value.property_id #=> String
2929
+ # resp.asset_model_composite_model_properties[0].type.transform.variables[0].value.hierarchy_id #=> String
2930
+ # resp.asset_model_composite_model_properties[0].type.transform.variables[0].value.property_path #=> Array
2931
+ # resp.asset_model_composite_model_properties[0].type.transform.variables[0].value.property_path[0].id #=> String
2932
+ # resp.asset_model_composite_model_properties[0].type.transform.variables[0].value.property_path[0].name #=> String
2933
+ # resp.asset_model_composite_model_properties[0].type.transform.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
2934
+ # resp.asset_model_composite_model_properties[0].type.transform.processing_config.forwarding_config.state #=> String, one of "DISABLED", "ENABLED"
2935
+ # resp.asset_model_composite_model_properties[0].type.metric.expression #=> String
2936
+ # resp.asset_model_composite_model_properties[0].type.metric.variables #=> Array
2937
+ # resp.asset_model_composite_model_properties[0].type.metric.variables[0].name #=> String
2938
+ # resp.asset_model_composite_model_properties[0].type.metric.variables[0].value.property_id #=> String
2939
+ # resp.asset_model_composite_model_properties[0].type.metric.variables[0].value.hierarchy_id #=> String
2940
+ # resp.asset_model_composite_model_properties[0].type.metric.variables[0].value.property_path #=> Array
2941
+ # resp.asset_model_composite_model_properties[0].type.metric.variables[0].value.property_path[0].id #=> String
2942
+ # resp.asset_model_composite_model_properties[0].type.metric.variables[0].value.property_path[0].name #=> String
2943
+ # resp.asset_model_composite_model_properties[0].type.metric.window.tumbling.interval #=> String
2944
+ # resp.asset_model_composite_model_properties[0].type.metric.window.tumbling.offset #=> String
2945
+ # resp.asset_model_composite_model_properties[0].type.metric.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
2946
+ # resp.asset_model_composite_model_properties[0].path #=> Array
2947
+ # resp.asset_model_composite_model_properties[0].path[0].id #=> String
2948
+ # resp.asset_model_composite_model_properties[0].path[0].name #=> String
2949
+ # resp.asset_model_composite_model_properties[0].external_id #=> String
2950
+ # resp.composition_details.composition_relationship #=> Array
2951
+ # resp.composition_details.composition_relationship[0].id #=> String
2952
+ # resp.asset_model_composite_model_summaries #=> Array
2953
+ # resp.asset_model_composite_model_summaries[0].id #=> String
2954
+ # resp.asset_model_composite_model_summaries[0].external_id #=> String
2955
+ # resp.asset_model_composite_model_summaries[0].name #=> String
2956
+ # resp.asset_model_composite_model_summaries[0].type #=> String
2957
+ # resp.asset_model_composite_model_summaries[0].description #=> String
2958
+ # resp.asset_model_composite_model_summaries[0].path #=> Array
2959
+ # resp.asset_model_composite_model_summaries[0].path[0].id #=> String
2960
+ # resp.asset_model_composite_model_summaries[0].path[0].name #=> String
2961
+ # resp.action_definitions #=> Array
2962
+ # resp.action_definitions[0].action_definition_id #=> String
2963
+ # resp.action_definitions[0].action_name #=> String
2964
+ # resp.action_definitions[0].action_type #=> String
2965
+ #
2966
+ # @overload describe_asset_model_composite_model(params = {})
2967
+ # @param [Hash] params ({})
2968
+ def describe_asset_model_composite_model(params = {}, options = {})
2969
+ req = build_request(:describe_asset_model_composite_model, params)
2970
+ req.send_request(options)
2971
+ end
2972
+
2222
2973
  # Retrieves information about an asset property.
2223
2974
  #
2224
2975
  # <note markdown="1"> When you call this operation for an attribute property, this response
@@ -2236,10 +2987,24 @@ module Aws::IoTSiteWise
2236
2987
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_GetAssetPropertyValue.html
2237
2988
  #
2238
2989
  # @option params [required, String] :asset_id
2239
- # The ID of the asset.
2990
+ # The ID of the asset. This can be either the actual ID in UUID format,
2991
+ # or else `externalId:` followed by the external ID, if it has one. For
2992
+ # more information, see [Referencing objects with external IDs][1] in
2993
+ # the *IoT SiteWise User Guide*.
2994
+ #
2995
+ #
2996
+ #
2997
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2240
2998
  #
2241
2999
  # @option params [required, String] :property_id
2242
- # The ID of the asset property.
3000
+ # The ID of the asset property. This can be either the actual ID in UUID
3001
+ # format, or else `externalId:` followed by the external ID, if it has
3002
+ # one. For more information, see [Referencing objects with external
3003
+ # IDs][1] in the *IoT SiteWise User Guide*.
3004
+ #
3005
+ #
3006
+ #
3007
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2243
3008
  #
2244
3009
  # @return [Types::DescribeAssetPropertyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2245
3010
  #
@@ -2248,12 +3013,13 @@ module Aws::IoTSiteWise
2248
3013
  # * {Types::DescribeAssetPropertyResponse#asset_model_id #asset_model_id} => String
2249
3014
  # * {Types::DescribeAssetPropertyResponse#asset_property #asset_property} => Types::Property
2250
3015
  # * {Types::DescribeAssetPropertyResponse#composite_model #composite_model} => Types::CompositeModelProperty
3016
+ # * {Types::DescribeAssetPropertyResponse#asset_external_id #asset_external_id} => String
2251
3017
  #
2252
3018
  # @example Request syntax with placeholder values
2253
3019
  #
2254
3020
  # resp = client.describe_asset_property({
2255
- # asset_id: "ID", # required
2256
- # property_id: "ID", # required
3021
+ # asset_id: "CustomID", # required
3022
+ # property_id: "CustomID", # required
2257
3023
  # })
2258
3024
  #
2259
3025
  # @example Response structure
@@ -2275,6 +3041,9 @@ module Aws::IoTSiteWise
2275
3041
  # resp.asset_property.type.transform.variables[0].name #=> String
2276
3042
  # resp.asset_property.type.transform.variables[0].value.property_id #=> String
2277
3043
  # resp.asset_property.type.transform.variables[0].value.hierarchy_id #=> String
3044
+ # resp.asset_property.type.transform.variables[0].value.property_path #=> Array
3045
+ # resp.asset_property.type.transform.variables[0].value.property_path[0].id #=> String
3046
+ # resp.asset_property.type.transform.variables[0].value.property_path[0].name #=> String
2278
3047
  # resp.asset_property.type.transform.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
2279
3048
  # resp.asset_property.type.transform.processing_config.forwarding_config.state #=> String, one of "DISABLED", "ENABLED"
2280
3049
  # resp.asset_property.type.metric.expression #=> String
@@ -2282,9 +3051,16 @@ module Aws::IoTSiteWise
2282
3051
  # resp.asset_property.type.metric.variables[0].name #=> String
2283
3052
  # resp.asset_property.type.metric.variables[0].value.property_id #=> String
2284
3053
  # resp.asset_property.type.metric.variables[0].value.hierarchy_id #=> String
3054
+ # resp.asset_property.type.metric.variables[0].value.property_path #=> Array
3055
+ # resp.asset_property.type.metric.variables[0].value.property_path[0].id #=> String
3056
+ # resp.asset_property.type.metric.variables[0].value.property_path[0].name #=> String
2285
3057
  # resp.asset_property.type.metric.window.tumbling.interval #=> String
2286
3058
  # resp.asset_property.type.metric.window.tumbling.offset #=> String
2287
3059
  # resp.asset_property.type.metric.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
3060
+ # resp.asset_property.path #=> Array
3061
+ # resp.asset_property.path[0].id #=> String
3062
+ # resp.asset_property.path[0].name #=> String
3063
+ # resp.asset_property.external_id #=> String
2288
3064
  # resp.composite_model.name #=> String
2289
3065
  # resp.composite_model.type #=> String
2290
3066
  # resp.composite_model.asset_property.id #=> String
@@ -2301,6 +3077,9 @@ module Aws::IoTSiteWise
2301
3077
  # resp.composite_model.asset_property.type.transform.variables[0].name #=> String
2302
3078
  # resp.composite_model.asset_property.type.transform.variables[0].value.property_id #=> String
2303
3079
  # resp.composite_model.asset_property.type.transform.variables[0].value.hierarchy_id #=> String
3080
+ # resp.composite_model.asset_property.type.transform.variables[0].value.property_path #=> Array
3081
+ # resp.composite_model.asset_property.type.transform.variables[0].value.property_path[0].id #=> String
3082
+ # resp.composite_model.asset_property.type.transform.variables[0].value.property_path[0].name #=> String
2304
3083
  # resp.composite_model.asset_property.type.transform.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
2305
3084
  # resp.composite_model.asset_property.type.transform.processing_config.forwarding_config.state #=> String, one of "DISABLED", "ENABLED"
2306
3085
  # resp.composite_model.asset_property.type.metric.expression #=> String
@@ -2308,10 +3087,19 @@ module Aws::IoTSiteWise
2308
3087
  # resp.composite_model.asset_property.type.metric.variables[0].name #=> String
2309
3088
  # resp.composite_model.asset_property.type.metric.variables[0].value.property_id #=> String
2310
3089
  # resp.composite_model.asset_property.type.metric.variables[0].value.hierarchy_id #=> String
3090
+ # resp.composite_model.asset_property.type.metric.variables[0].value.property_path #=> Array
3091
+ # resp.composite_model.asset_property.type.metric.variables[0].value.property_path[0].id #=> String
3092
+ # resp.composite_model.asset_property.type.metric.variables[0].value.property_path[0].name #=> String
2311
3093
  # resp.composite_model.asset_property.type.metric.window.tumbling.interval #=> String
2312
3094
  # resp.composite_model.asset_property.type.metric.window.tumbling.offset #=> String
2313
3095
  # resp.composite_model.asset_property.type.metric.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
3096
+ # resp.composite_model.asset_property.path #=> Array
3097
+ # resp.composite_model.asset_property.path[0].id #=> String
3098
+ # resp.composite_model.asset_property.path[0].name #=> String
3099
+ # resp.composite_model.asset_property.external_id #=> String
2314
3100
  # resp.composite_model.id #=> String
3101
+ # resp.composite_model.external_id #=> String
3102
+ # resp.asset_external_id #=> String
2315
3103
  #
2316
3104
  # @overload describe_asset_property(params = {})
2317
3105
  # @param [Hash] params ({})
@@ -2342,6 +3130,8 @@ module Aws::IoTSiteWise
2342
3130
  # * {Types::DescribeBulkImportJobResponse#job_configuration #job_configuration} => Types::JobConfiguration
2343
3131
  # * {Types::DescribeBulkImportJobResponse#job_creation_date #job_creation_date} => Time
2344
3132
  # * {Types::DescribeBulkImportJobResponse#job_last_update_date #job_last_update_date} => Time
3133
+ # * {Types::DescribeBulkImportJobResponse#adaptive_ingestion #adaptive_ingestion} => Boolean
3134
+ # * {Types::DescribeBulkImportJobResponse#delete_files_after_import #delete_files_after_import} => Boolean
2345
3135
  #
2346
3136
  # @example Request syntax with placeholder values
2347
3137
  #
@@ -2365,6 +3155,8 @@ module Aws::IoTSiteWise
2365
3155
  # resp.job_configuration.file_format.csv.column_names[0] #=> String, one of "ALIAS", "ASSET_ID", "PROPERTY_ID", "DATA_TYPE", "TIMESTAMP_SECONDS", "TIMESTAMP_NANO_OFFSET", "QUALITY", "VALUE"
2366
3156
  # resp.job_creation_date #=> Time
2367
3157
  # resp.job_last_update_date #=> Time
3158
+ # resp.adaptive_ingestion #=> Boolean
3159
+ # resp.delete_files_after_import #=> Boolean
2368
3160
  #
2369
3161
  # @overload describe_bulk_import_job(params = {})
2370
3162
  # @param [Hash] params ({})
@@ -2664,6 +3456,8 @@ module Aws::IoTSiteWise
2664
3456
  # * {Types::DescribeStorageConfigurationResponse#retention_period #retention_period} => Types::RetentionPeriod
2665
3457
  # * {Types::DescribeStorageConfigurationResponse#configuration_status #configuration_status} => Types::ConfigurationStatus
2666
3458
  # * {Types::DescribeStorageConfigurationResponse#last_update_date #last_update_date} => Time
3459
+ # * {Types::DescribeStorageConfigurationResponse#warm_tier #warm_tier} => String
3460
+ # * {Types::DescribeStorageConfigurationResponse#warm_tier_retention_period #warm_tier_retention_period} => Types::WarmTierRetentionPeriod
2667
3461
  #
2668
3462
  # @example Response structure
2669
3463
  #
@@ -2677,6 +3471,9 @@ module Aws::IoTSiteWise
2677
3471
  # resp.configuration_status.error.code #=> String, one of "VALIDATION_ERROR", "INTERNAL_FAILURE"
2678
3472
  # resp.configuration_status.error.message #=> String
2679
3473
  # resp.last_update_date #=> Time
3474
+ # resp.warm_tier #=> String, one of "ENABLED", "DISABLED"
3475
+ # resp.warm_tier_retention_period.number_of_days #=> Integer
3476
+ # resp.warm_tier_retention_period.unlimited #=> Boolean
2680
3477
  #
2681
3478
  # @overload describe_storage_configuration(params = {})
2682
3479
  # @param [Hash] params ({})
@@ -2703,10 +3500,25 @@ module Aws::IoTSiteWise
2703
3500
  # The alias that identifies the time series.
2704
3501
  #
2705
3502
  # @option params [String] :asset_id
2706
- # The ID of the asset in which the asset property was created.
3503
+ # The ID of the asset in which the asset property was created. This can
3504
+ # be either the actual ID in UUID format, or else `externalId:` followed
3505
+ # by the external ID, if it has one. For more information, see
3506
+ # [Referencing objects with external IDs][1] in the *IoT SiteWise User
3507
+ # Guide*.
3508
+ #
3509
+ #
3510
+ #
3511
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2707
3512
  #
2708
3513
  # @option params [String] :property_id
2709
- # The ID of the asset property.
3514
+ # The ID of the asset property. This can be either the actual ID in UUID
3515
+ # format, or else `externalId:` followed by the external ID, if it has
3516
+ # one. For more information, see [Referencing objects with external
3517
+ # IDs][1] in the *IoT SiteWise User Guide*.
3518
+ #
3519
+ #
3520
+ #
3521
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2710
3522
  #
2711
3523
  # @return [Types::DescribeTimeSeriesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2712
3524
  #
@@ -2724,8 +3536,8 @@ module Aws::IoTSiteWise
2724
3536
  #
2725
3537
  # resp = client.describe_time_series({
2726
3538
  # alias: "PropertyAlias",
2727
- # asset_id: "ID",
2728
- # property_id: "ID",
3539
+ # asset_id: "CustomID",
3540
+ # property_id: "CustomID",
2729
3541
  # })
2730
3542
  #
2731
3543
  # @example Response structure
@@ -2752,20 +3564,39 @@ module Aws::IoTSiteWise
2752
3564
  #
2753
3565
  # @option params [required, String] :asset_id
2754
3566
  # The ID of the parent asset from which to disassociate the child asset.
3567
+ # This can be either the actual ID in UUID format, or else `externalId:`
3568
+ # followed by the external ID, if it has one. For more information, see
3569
+ # [Referencing objects with external IDs][1] in the *IoT SiteWise User
3570
+ # Guide*.
3571
+ #
3572
+ #
3573
+ #
3574
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2755
3575
  #
2756
3576
  # @option params [required, String] :hierarchy_id
2757
- # The ID of a hierarchy in the parent asset's model. Hierarchies allow
2758
- # different groupings of assets to be formed that all come from the same
2759
- # asset model. You can use the hierarchy ID to identify the correct
2760
- # asset to disassociate. For more information, see [Asset
2761
- # hierarchies][1] in the *IoT SiteWise User Guide*.
3577
+ # The ID of a hierarchy in the parent asset's model. (This can be
3578
+ # either the actual ID in UUID format, or else `externalId:` followed by
3579
+ # the external ID, if it has one. For more information, see [Referencing
3580
+ # objects with external IDs][1] in the *IoT SiteWise User Guide*.)
3581
+ # Hierarchies allow different groupings of assets to be formed that all
3582
+ # come from the same asset model. You can use the hierarchy ID to
3583
+ # identify the correct asset to disassociate. For more information, see
3584
+ # [Asset hierarchies][2] in the *IoT SiteWise User Guide*.
2762
3585
  #
2763
3586
  #
2764
3587
  #
2765
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
3588
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
3589
+ # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
2766
3590
  #
2767
3591
  # @option params [required, String] :child_asset_id
2768
- # The ID of the child asset to disassociate.
3592
+ # The ID of the child asset to disassociate. This can be either the
3593
+ # actual ID in UUID format, or else `externalId:` followed by the
3594
+ # external ID, if it has one. For more information, see [Referencing
3595
+ # objects with external IDs][1] in the *IoT SiteWise User Guide*.
3596
+ #
3597
+ #
3598
+ #
3599
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2769
3600
  #
2770
3601
  # @option params [String] :client_token
2771
3602
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -2780,9 +3611,9 @@ module Aws::IoTSiteWise
2780
3611
  # @example Request syntax with placeholder values
2781
3612
  #
2782
3613
  # resp = client.disassociate_assets({
2783
- # asset_id: "ID", # required
2784
- # hierarchy_id: "ID", # required
2785
- # child_asset_id: "ID", # required
3614
+ # asset_id: "CustomID", # required
3615
+ # hierarchy_id: "CustomID", # required
3616
+ # child_asset_id: "CustomID", # required
2786
3617
  # client_token: "ClientToken",
2787
3618
  # })
2788
3619
  #
@@ -2799,10 +3630,25 @@ module Aws::IoTSiteWise
2799
3630
  # The alias that identifies the time series.
2800
3631
  #
2801
3632
  # @option params [required, String] :asset_id
2802
- # The ID of the asset in which the asset property was created.
3633
+ # The ID of the asset in which the asset property was created. This can
3634
+ # be either the actual ID in UUID format, or else `externalId:` followed
3635
+ # by the external ID, if it has one. For more information, see
3636
+ # [Referencing objects with external IDs][1] in the *IoT SiteWise User
3637
+ # Guide*.
3638
+ #
3639
+ #
3640
+ #
3641
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2803
3642
  #
2804
3643
  # @option params [required, String] :property_id
2805
- # The ID of the asset property.
3644
+ # The ID of the asset property. This can be either the actual ID in UUID
3645
+ # format, or else `externalId:` followed by the external ID, if it has
3646
+ # one. For more information, see [Referencing objects with external
3647
+ # IDs][1] in the *IoT SiteWise User Guide*.
3648
+ #
3649
+ #
3650
+ #
3651
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
2806
3652
  #
2807
3653
  # @option params [String] :client_token
2808
3654
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -2818,8 +3664,8 @@ module Aws::IoTSiteWise
2818
3664
  #
2819
3665
  # resp = client.disassociate_time_series_from_asset_property({
2820
3666
  # alias: "PropertyAlias", # required
2821
- # asset_id: "ID", # required
2822
- # property_id: "ID", # required
3667
+ # asset_id: "CustomID", # required
3668
+ # property_id: "CustomID", # required
2823
3669
  # client_token: "ClientToken",
2824
3670
  # })
2825
3671
  #
@@ -2830,6 +3676,99 @@ module Aws::IoTSiteWise
2830
3676
  req.send_request(options)
2831
3677
  end
2832
3678
 
3679
+ # Executes an action on a target resource.
3680
+ #
3681
+ # @option params [required, Types::TargetResource] :target_resource
3682
+ # The resource the action will be taken on.
3683
+ #
3684
+ # @option params [required, String] :action_definition_id
3685
+ # The ID of the action definition.
3686
+ #
3687
+ # @option params [required, Types::ActionPayload] :action_payload
3688
+ # The JSON payload of the action.
3689
+ #
3690
+ # @option params [String] :client_token
3691
+ # A unique case-sensitive identifier that you can provide to ensure the
3692
+ # idempotency of the request. Don't reuse this client token if a new
3693
+ # idempotent request is required.
3694
+ #
3695
+ # @return [Types::ExecuteActionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3696
+ #
3697
+ # * {Types::ExecuteActionResponse#action_id #action_id} => String
3698
+ #
3699
+ # @example Request syntax with placeholder values
3700
+ #
3701
+ # resp = client.execute_action({
3702
+ # target_resource: { # required
3703
+ # asset_id: "CustomID", # required
3704
+ # },
3705
+ # action_definition_id: "ID", # required
3706
+ # action_payload: { # required
3707
+ # string_value: "ActionPayloadString", # required
3708
+ # },
3709
+ # client_token: "ClientToken",
3710
+ # })
3711
+ #
3712
+ # @example Response structure
3713
+ #
3714
+ # resp.action_id #=> String
3715
+ #
3716
+ # @overload execute_action(params = {})
3717
+ # @param [Hash] params ({})
3718
+ def execute_action(params = {}, options = {})
3719
+ req = build_request(:execute_action, params)
3720
+ req.send_request(options)
3721
+ end
3722
+
3723
+ # Run SQL queries to retrieve metadata and time-series data from asset
3724
+ # models, assets, measurements, metrics, transforms, and aggregates.
3725
+ #
3726
+ # @option params [required, String] :query_statement
3727
+ # The IoT SiteWise query statement.
3728
+ #
3729
+ # @option params [String] :next_token
3730
+ # The string that specifies the next page of results.
3731
+ #
3732
+ # @option params [Integer] :max_results
3733
+ # The maximum number of results to return at one time. The default is
3734
+ # 25.
3735
+ #
3736
+ # @return [Types::ExecuteQueryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3737
+ #
3738
+ # * {Types::ExecuteQueryResponse#columns #columns} => Array&lt;Types::ColumnInfo&gt;
3739
+ # * {Types::ExecuteQueryResponse#rows #rows} => Array&lt;Types::Row&gt;
3740
+ # * {Types::ExecuteQueryResponse#next_token #next_token} => String
3741
+ #
3742
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3743
+ #
3744
+ # @example Request syntax with placeholder values
3745
+ #
3746
+ # resp = client.execute_query({
3747
+ # query_statement: "QueryStatement", # required
3748
+ # next_token: "ExecuteQueryNextToken",
3749
+ # max_results: 1,
3750
+ # })
3751
+ #
3752
+ # @example Response structure
3753
+ #
3754
+ # resp.columns #=> Array
3755
+ # resp.columns[0].name #=> String
3756
+ # resp.columns[0].type.scalar_type #=> String, one of "BOOLEAN", "INT", "DOUBLE", "TIMESTAMP", "STRING"
3757
+ # resp.rows #=> Array
3758
+ # resp.rows[0].data #=> Array
3759
+ # resp.rows[0].data[0].scalar_value #=> String
3760
+ # resp.rows[0].data[0].array_value #=> Types::DatumList
3761
+ # resp.rows[0].data[0].row_value #=> Types::Row
3762
+ # resp.rows[0].data[0].null_value #=> Boolean
3763
+ # resp.next_token #=> String
3764
+ #
3765
+ # @overload execute_query(params = {})
3766
+ # @param [Hash] params ({})
3767
+ def execute_query(params = {}, options = {})
3768
+ req = build_request(:execute_query, params)
3769
+ req.send_request(options)
3770
+ end
3771
+
2833
3772
  # Gets aggregated values for an asset property. For more information,
2834
3773
  # see [Querying aggregates][1] in the *IoT SiteWise User Guide*.
2835
3774
  #
@@ -2847,10 +3786,10 @@ module Aws::IoTSiteWise
2847
3786
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetProperty.html
2848
3787
  #
2849
3788
  # @option params [String] :asset_id
2850
- # The ID of the asset.
3789
+ # The ID of the asset, in UUID format.
2851
3790
  #
2852
3791
  # @option params [String] :property_id
2853
- # The ID of the asset property.
3792
+ # The ID of the asset property, in UUID format.
2854
3793
  #
2855
3794
  # @option params [String] :property_alias
2856
3795
  # The alias that identifies the property, such as an OPC-UA server data
@@ -2895,7 +3834,7 @@ module Aws::IoTSiteWise
2895
3834
  # * The size of the result set is equal to 1 MB.
2896
3835
  #
2897
3836
  # * The number of data points in the result set is equal to the value of
2898
- # `maxResults`. The maximum value of `maxResults` is 250.
3837
+ # `maxResults`. The maximum value of `maxResults` is 2500.
2899
3838
  #
2900
3839
  # @return [Types::GetAssetPropertyAggregatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2901
3840
  #
@@ -2957,10 +3896,10 @@ module Aws::IoTSiteWise
2957
3896
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetProperty.html
2958
3897
  #
2959
3898
  # @option params [String] :asset_id
2960
- # The ID of the asset.
3899
+ # The ID of the asset, in UUID format.
2961
3900
  #
2962
3901
  # @option params [String] :property_id
2963
- # The ID of the asset property.
3902
+ # The ID of the asset property, in UUID format.
2964
3903
  #
2965
3904
  # @option params [String] :property_alias
2966
3905
  # The alias that identifies the property, such as an OPC-UA server data
@@ -3019,10 +3958,10 @@ module Aws::IoTSiteWise
3019
3958
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetProperty.html
3020
3959
  #
3021
3960
  # @option params [String] :asset_id
3022
- # The ID of the asset.
3961
+ # The ID of the asset, in UUID format.
3023
3962
  #
3024
3963
  # @option params [String] :property_id
3025
- # The ID of the asset property.
3964
+ # The ID of the asset property, in UUID format.
3026
3965
  #
3027
3966
  # @option params [String] :property_alias
3028
3967
  # The alias that identifies the property, such as an OPC-UA server data
@@ -3125,10 +4064,10 @@ module Aws::IoTSiteWise
3125
4064
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_UpdateAssetProperty.html
3126
4065
  #
3127
4066
  # @option params [String] :asset_id
3128
- # The ID of the asset.
4067
+ # The ID of the asset, in UUID format.
3129
4068
  #
3130
4069
  # @option params [String] :property_id
3131
- # The ID of the asset property.
4070
+ # The ID of the asset property, in UUID format.
3132
4071
  #
3133
4072
  # @option params [String] :property_alias
3134
4073
  # The alias that identifies the property, such as an OPC-UA server data
@@ -3352,12 +4291,120 @@ module Aws::IoTSiteWise
3352
4291
  req.send_request(options)
3353
4292
  end
3354
4293
 
4294
+ # Retrieves a paginated list of actions for a specific target resource.
4295
+ #
4296
+ # @option params [required, String] :target_resource_type
4297
+ # The type of resource.
4298
+ #
4299
+ # @option params [required, String] :target_resource_id
4300
+ # The ID of the target resource.
4301
+ #
4302
+ # @option params [String] :next_token
4303
+ # The token to be used for the next set of paginated results.
4304
+ #
4305
+ # @option params [Integer] :max_results
4306
+ # The maximum number of results to return for each paginated request.
4307
+ #
4308
+ # @return [Types::ListActionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4309
+ #
4310
+ # * {Types::ListActionsResponse#action_summaries #action_summaries} => Array&lt;Types::ActionSummary&gt;
4311
+ # * {Types::ListActionsResponse#next_token #next_token} => String
4312
+ #
4313
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4314
+ #
4315
+ # @example Request syntax with placeholder values
4316
+ #
4317
+ # resp = client.list_actions({
4318
+ # target_resource_type: "ASSET", # required, accepts ASSET
4319
+ # target_resource_id: "CustomID", # required
4320
+ # next_token: "NextToken",
4321
+ # max_results: 1,
4322
+ # })
4323
+ #
4324
+ # @example Response structure
4325
+ #
4326
+ # resp.action_summaries #=> Array
4327
+ # resp.action_summaries[0].action_id #=> String
4328
+ # resp.action_summaries[0].action_definition_id #=> String
4329
+ # resp.action_summaries[0].target_resource.asset_id #=> String
4330
+ # resp.next_token #=> String
4331
+ #
4332
+ # @overload list_actions(params = {})
4333
+ # @param [Hash] params ({})
4334
+ def list_actions(params = {}, options = {})
4335
+ req = build_request(:list_actions, params)
4336
+ req.send_request(options)
4337
+ end
4338
+
4339
+ # Retrieves a paginated list of composite models associated with the
4340
+ # asset model
4341
+ #
4342
+ # @option params [required, String] :asset_model_id
4343
+ # The ID of the asset model. This can be either the actual ID in UUID
4344
+ # format, or else `externalId:` followed by the external ID, if it has
4345
+ # one. For more information, see [Referencing objects with external
4346
+ # IDs][1] in the *IoT SiteWise User Guide*.
4347
+ #
4348
+ #
4349
+ #
4350
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
4351
+ #
4352
+ # @option params [String] :next_token
4353
+ # The token to be used for the next set of paginated results.
4354
+ #
4355
+ # @option params [Integer] :max_results
4356
+ # The maximum number of results to return for each paginated request.
4357
+ #
4358
+ # Default: 50
4359
+ #
4360
+ # @return [Types::ListAssetModelCompositeModelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4361
+ #
4362
+ # * {Types::ListAssetModelCompositeModelsResponse#asset_model_composite_model_summaries #asset_model_composite_model_summaries} => Array&lt;Types::AssetModelCompositeModelSummary&gt;
4363
+ # * {Types::ListAssetModelCompositeModelsResponse#next_token #next_token} => String
4364
+ #
4365
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4366
+ #
4367
+ # @example Request syntax with placeholder values
4368
+ #
4369
+ # resp = client.list_asset_model_composite_models({
4370
+ # asset_model_id: "CustomID", # required
4371
+ # next_token: "NextToken",
4372
+ # max_results: 1,
4373
+ # })
4374
+ #
4375
+ # @example Response structure
4376
+ #
4377
+ # resp.asset_model_composite_model_summaries #=> Array
4378
+ # resp.asset_model_composite_model_summaries[0].id #=> String
4379
+ # resp.asset_model_composite_model_summaries[0].external_id #=> String
4380
+ # resp.asset_model_composite_model_summaries[0].name #=> String
4381
+ # resp.asset_model_composite_model_summaries[0].type #=> String
4382
+ # resp.asset_model_composite_model_summaries[0].description #=> String
4383
+ # resp.asset_model_composite_model_summaries[0].path #=> Array
4384
+ # resp.asset_model_composite_model_summaries[0].path[0].id #=> String
4385
+ # resp.asset_model_composite_model_summaries[0].path[0].name #=> String
4386
+ # resp.next_token #=> String
4387
+ #
4388
+ # @overload list_asset_model_composite_models(params = {})
4389
+ # @param [Hash] params ({})
4390
+ def list_asset_model_composite_models(params = {}, options = {})
4391
+ req = build_request(:list_asset_model_composite_models, params)
4392
+ req.send_request(options)
4393
+ end
4394
+
3355
4395
  # Retrieves a paginated list of properties associated with an asset
3356
4396
  # model. If you update properties associated with the model before you
3357
4397
  # finish listing all the properties, you need to start all over again.
3358
4398
  #
3359
4399
  # @option params [required, String] :asset_model_id
3360
- # The ID of the asset model.
4400
+ # The ID of the asset model. This can be either the actual ID in UUID
4401
+ # format, or else `externalId:` followed by the external ID, if it has
4402
+ # one. For more information, see [Referencing objects with external
4403
+ # IDs][1] in the *IoT SiteWise User Guide*.
4404
+ #
4405
+ #
4406
+ #
4407
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
3361
4408
  #
3362
4409
  # @option params [String] :next_token
3363
4410
  # The token to be used for the next set of paginated results.
@@ -3388,7 +4435,7 @@ module Aws::IoTSiteWise
3388
4435
  # @example Request syntax with placeholder values
3389
4436
  #
3390
4437
  # resp = client.list_asset_model_properties({
3391
- # asset_model_id: "ID", # required
4438
+ # asset_model_id: "CustomID", # required
3392
4439
  # next_token: "NextToken",
3393
4440
  # max_results: 1,
3394
4441
  # filter: "ALL", # accepts ALL, BASE
@@ -3409,6 +4456,9 @@ module Aws::IoTSiteWise
3409
4456
  # resp.asset_model_property_summaries[0].type.transform.variables[0].name #=> String
3410
4457
  # resp.asset_model_property_summaries[0].type.transform.variables[0].value.property_id #=> String
3411
4458
  # resp.asset_model_property_summaries[0].type.transform.variables[0].value.hierarchy_id #=> String
4459
+ # resp.asset_model_property_summaries[0].type.transform.variables[0].value.property_path #=> Array
4460
+ # resp.asset_model_property_summaries[0].type.transform.variables[0].value.property_path[0].id #=> String
4461
+ # resp.asset_model_property_summaries[0].type.transform.variables[0].value.property_path[0].name #=> String
3412
4462
  # resp.asset_model_property_summaries[0].type.transform.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
3413
4463
  # resp.asset_model_property_summaries[0].type.transform.processing_config.forwarding_config.state #=> String, one of "DISABLED", "ENABLED"
3414
4464
  # resp.asset_model_property_summaries[0].type.metric.expression #=> String
@@ -3416,10 +4466,17 @@ module Aws::IoTSiteWise
3416
4466
  # resp.asset_model_property_summaries[0].type.metric.variables[0].name #=> String
3417
4467
  # resp.asset_model_property_summaries[0].type.metric.variables[0].value.property_id #=> String
3418
4468
  # resp.asset_model_property_summaries[0].type.metric.variables[0].value.hierarchy_id #=> String
4469
+ # resp.asset_model_property_summaries[0].type.metric.variables[0].value.property_path #=> Array
4470
+ # resp.asset_model_property_summaries[0].type.metric.variables[0].value.property_path[0].id #=> String
4471
+ # resp.asset_model_property_summaries[0].type.metric.variables[0].value.property_path[0].name #=> String
3419
4472
  # resp.asset_model_property_summaries[0].type.metric.window.tumbling.interval #=> String
3420
4473
  # resp.asset_model_property_summaries[0].type.metric.window.tumbling.offset #=> String
3421
4474
  # resp.asset_model_property_summaries[0].type.metric.processing_config.compute_location #=> String, one of "EDGE", "CLOUD"
3422
4475
  # resp.asset_model_property_summaries[0].asset_model_composite_model_id #=> String
4476
+ # resp.asset_model_property_summaries[0].path #=> Array
4477
+ # resp.asset_model_property_summaries[0].path[0].id #=> String
4478
+ # resp.asset_model_property_summaries[0].path[0].name #=> String
4479
+ # resp.asset_model_property_summaries[0].external_id #=> String
3423
4480
  # resp.next_token #=> String
3424
4481
  #
3425
4482
  # @overload list_asset_model_properties(params = {})
@@ -3439,6 +4496,17 @@ module Aws::IoTSiteWise
3439
4496
  #
3440
4497
  # Default: 50
3441
4498
  #
4499
+ # @option params [Array<String>] :asset_model_types
4500
+ # The type of asset model.
4501
+ #
4502
+ # * **ASSET\_MODEL** – (default) An asset model that you can use to
4503
+ # create assets. Can't be included as a component in another asset
4504
+ # model.
4505
+ #
4506
+ # * **COMPONENT\_MODEL** – A reusable component that you can include in
4507
+ # the composite models of other asset models. You can't create assets
4508
+ # directly from this type of asset model.
4509
+ #
3442
4510
  # @return [Types::ListAssetModelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3443
4511
  #
3444
4512
  # * {Types::ListAssetModelsResponse#asset_model_summaries #asset_model_summaries} => Array&lt;Types::AssetModelSummary&gt;
@@ -3451,6 +4519,7 @@ module Aws::IoTSiteWise
3451
4519
  # resp = client.list_asset_models({
3452
4520
  # next_token: "NextToken",
3453
4521
  # max_results: 1,
4522
+ # asset_model_types: ["ASSET_MODEL"], # accepts ASSET_MODEL, COMPONENT_MODEL
3454
4523
  # })
3455
4524
  #
3456
4525
  # @example Response structure
@@ -3468,6 +4537,8 @@ module Aws::IoTSiteWise
3468
4537
  # resp.asset_model_summaries[0].status.error.details #=> Array
3469
4538
  # resp.asset_model_summaries[0].status.error.details[0].code #=> String, one of "INCOMPATIBLE_COMPUTE_LOCATION", "INCOMPATIBLE_FORWARDING_CONFIGURATION"
3470
4539
  # resp.asset_model_summaries[0].status.error.details[0].message #=> String
4540
+ # resp.asset_model_summaries[0].asset_model_type #=> String, one of "ASSET_MODEL", "COMPONENT_MODEL"
4541
+ # resp.asset_model_summaries[0].external_id #=> String
3471
4542
  # resp.next_token #=> String
3472
4543
  #
3473
4544
  # @overload list_asset_models(params = {})
@@ -3482,7 +4553,14 @@ module Aws::IoTSiteWise
3482
4553
  # listing all the properties, you need to start all over again.
3483
4554
  #
3484
4555
  # @option params [required, String] :asset_id
3485
- # The ID of the asset.
4556
+ # The ID of the asset. This can be either the actual ID in UUID format,
4557
+ # or else `externalId:` followed by the external ID, if it has one. For
4558
+ # more information, see [Referencing objects with external IDs][1] in
4559
+ # the *IoT SiteWise User Guide*.
4560
+ #
4561
+ #
4562
+ #
4563
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
3486
4564
  #
3487
4565
  # @option params [String] :next_token
3488
4566
  # The token to be used for the next set of paginated results.
@@ -3513,7 +4591,7 @@ module Aws::IoTSiteWise
3513
4591
  # @example Request syntax with placeholder values
3514
4592
  #
3515
4593
  # resp = client.list_asset_properties({
3516
- # asset_id: "ID", # required
4594
+ # asset_id: "CustomID", # required
3517
4595
  # next_token: "NextToken",
3518
4596
  # max_results: 1,
3519
4597
  # filter: "ALL", # accepts ALL, BASE
@@ -3528,6 +4606,10 @@ module Aws::IoTSiteWise
3528
4606
  # resp.asset_property_summaries[0].notification.topic #=> String
3529
4607
  # resp.asset_property_summaries[0].notification.state #=> String, one of "ENABLED", "DISABLED"
3530
4608
  # resp.asset_property_summaries[0].asset_composite_model_id #=> String
4609
+ # resp.asset_property_summaries[0].path #=> Array
4610
+ # resp.asset_property_summaries[0].path[0].id #=> String
4611
+ # resp.asset_property_summaries[0].path[0].name #=> String
4612
+ # resp.asset_property_summaries[0].external_id #=> String
3531
4613
  # resp.next_token #=> String
3532
4614
  #
3533
4615
  # @overload list_asset_properties(params = {})
@@ -3542,7 +4624,14 @@ module Aws::IoTSiteWise
3542
4624
  # associated assets between that asset and its root.
3543
4625
  #
3544
4626
  # @option params [required, String] :asset_id
3545
- # The ID of the asset.
4627
+ # The ID of the asset. This can be either the actual ID in UUID format,
4628
+ # or else `externalId:` followed by the external ID, if it has one. For
4629
+ # more information, see [Referencing objects with external IDs][1] in
4630
+ # the *IoT SiteWise User Guide*.
4631
+ #
4632
+ #
4633
+ #
4634
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
3546
4635
  #
3547
4636
  # @option params [required, String] :traversal_type
3548
4637
  # The type of traversal to use to identify asset relationships. Choose
@@ -3571,7 +4660,7 @@ module Aws::IoTSiteWise
3571
4660
  # @example Request syntax with placeholder values
3572
4661
  #
3573
4662
  # resp = client.list_asset_relationships({
3574
- # asset_id: "ID", # required
4663
+ # asset_id: "CustomID", # required
3575
4664
  # traversal_type: "PATH_TO_ROOT", # required, accepts PATH_TO_ROOT
3576
4665
  # next_token: "NextToken",
3577
4666
  # max_results: 1,
@@ -3619,7 +4708,14 @@ module Aws::IoTSiteWise
3619
4708
  #
3620
4709
  # @option params [String] :asset_model_id
3621
4710
  # The ID of the asset model by which to filter the list of assets. This
3622
- # parameter is required if you choose `ALL` for `filter`.
4711
+ # parameter is required if you choose `ALL` for `filter`. This can be
4712
+ # either the actual ID in UUID format, or else `externalId:` followed by
4713
+ # the external ID, if it has one. For more information, see [Referencing
4714
+ # objects with external IDs][1] in the *IoT SiteWise User Guide*.
4715
+ #
4716
+ #
4717
+ #
4718
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
3623
4719
  #
3624
4720
  # @option params [String] :filter
3625
4721
  # The filter for the requested list of assets. Choose one of the
@@ -3645,7 +4741,7 @@ module Aws::IoTSiteWise
3645
4741
  # resp = client.list_assets({
3646
4742
  # next_token: "NextToken",
3647
4743
  # max_results: 1,
3648
- # asset_model_id: "ID",
4744
+ # asset_model_id: "CustomID",
3649
4745
  # filter: "ALL", # accepts ALL, TOP_LEVEL
3650
4746
  # })
3651
4747
  #
@@ -3667,7 +4763,9 @@ module Aws::IoTSiteWise
3667
4763
  # resp.asset_summaries[0].hierarchies #=> Array
3668
4764
  # resp.asset_summaries[0].hierarchies[0].id #=> String
3669
4765
  # resp.asset_summaries[0].hierarchies[0].name #=> String
4766
+ # resp.asset_summaries[0].hierarchies[0].external_id #=> String
3670
4767
  # resp.asset_summaries[0].description #=> String
4768
+ # resp.asset_summaries[0].external_id #=> String
3671
4769
  # resp.next_token #=> String
3672
4770
  #
3673
4771
  # @overload list_assets(params = {})
@@ -3687,22 +4785,33 @@ module Aws::IoTSiteWise
3687
4785
  # * List an asset's parent asset.
3688
4786
  #
3689
4787
  # @option params [required, String] :asset_id
3690
- # The ID of the asset to query.
4788
+ # The ID of the asset to query. This can be either the actual ID in UUID
4789
+ # format, or else `externalId:` followed by the external ID, if it has
4790
+ # one. For more information, see [Referencing objects with external
4791
+ # IDs][1] in the *IoT SiteWise User Guide*.
4792
+ #
4793
+ #
4794
+ #
4795
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
3691
4796
  #
3692
4797
  # @option params [String] :hierarchy_id
3693
4798
  # The ID of the hierarchy by which child assets are associated to the
3694
- # asset. To find a hierarchy ID, use the [DescribeAsset][1] or
3695
- # [DescribeAssetModel][2] operations. This parameter is required if you
3696
- # choose `CHILD` for `traversalDirection`.
3697
- #
3698
- # For more information, see [Asset hierarchies][3] in the *IoT SiteWise
4799
+ # asset. (This can be either the actual ID in UUID format, or else
4800
+ # `externalId:` followed by the external ID, if it has one. For more
4801
+ # information, see [Referencing objects with external IDs][1] in the
4802
+ # *IoT SiteWise User Guide*.) To find a hierarchy ID, use the
4803
+ # [DescribeAsset][2] or [DescribeAssetModel][3] operations. This
4804
+ # parameter is required if you choose `CHILD` for `traversalDirection`.
4805
+ #
4806
+ # For more information, see [Asset hierarchies][4] in the *IoT SiteWise
3699
4807
  # User Guide*.
3700
4808
  #
3701
4809
  #
3702
4810
  #
3703
- # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAsset.html
3704
- # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html
3705
- # [3]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
4811
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
4812
+ # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAsset.html
4813
+ # [3]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html
4814
+ # [4]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html
3706
4815
  #
3707
4816
  # @option params [String] :traversal_direction
3708
4817
  # The direction to list associated assets. Choose one of the following
@@ -3734,8 +4843,8 @@ module Aws::IoTSiteWise
3734
4843
  # @example Request syntax with placeholder values
3735
4844
  #
3736
4845
  # resp = client.list_associated_assets({
3737
- # asset_id: "ID", # required
3738
- # hierarchy_id: "ID",
4846
+ # asset_id: "CustomID", # required
4847
+ # hierarchy_id: "CustomID",
3739
4848
  # traversal_direction: "PARENT", # accepts PARENT, CHILD
3740
4849
  # next_token: "NextToken",
3741
4850
  # max_results: 1,
@@ -3759,7 +4868,9 @@ module Aws::IoTSiteWise
3759
4868
  # resp.asset_summaries[0].hierarchies #=> Array
3760
4869
  # resp.asset_summaries[0].hierarchies[0].id #=> String
3761
4870
  # resp.asset_summaries[0].hierarchies[0].name #=> String
4871
+ # resp.asset_summaries[0].hierarchies[0].external_id #=> String
3762
4872
  # resp.asset_summaries[0].description #=> String
4873
+ # resp.asset_summaries[0].external_id #=> String
3763
4874
  # resp.next_token #=> String
3764
4875
  #
3765
4876
  # @overload list_associated_assets(params = {})
@@ -3817,6 +4928,57 @@ module Aws::IoTSiteWise
3817
4928
  req.send_request(options)
3818
4929
  end
3819
4930
 
4931
+ # Retrieves a paginated list of composition relationships for an asset
4932
+ # model of type `COMPONENT_MODEL`.
4933
+ #
4934
+ # @option params [required, String] :asset_model_id
4935
+ # The ID of the asset model. This can be either the actual ID in UUID
4936
+ # format, or else `externalId:` followed by the external ID, if it has
4937
+ # one. For more information, see [Referencing objects with external
4938
+ # IDs][1] in the *IoT SiteWise User Guide*.
4939
+ #
4940
+ #
4941
+ #
4942
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
4943
+ #
4944
+ # @option params [String] :next_token
4945
+ # The token to be used for the next set of paginated results.
4946
+ #
4947
+ # @option params [Integer] :max_results
4948
+ # The maximum number of results to return for each paginated request.
4949
+ #
4950
+ # Default: 50
4951
+ #
4952
+ # @return [Types::ListCompositionRelationshipsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4953
+ #
4954
+ # * {Types::ListCompositionRelationshipsResponse#composition_relationship_summaries #composition_relationship_summaries} => Array&lt;Types::CompositionRelationshipSummary&gt;
4955
+ # * {Types::ListCompositionRelationshipsResponse#next_token #next_token} => String
4956
+ #
4957
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4958
+ #
4959
+ # @example Request syntax with placeholder values
4960
+ #
4961
+ # resp = client.list_composition_relationships({
4962
+ # asset_model_id: "ID", # required
4963
+ # next_token: "NextToken",
4964
+ # max_results: 1,
4965
+ # })
4966
+ #
4967
+ # @example Response structure
4968
+ #
4969
+ # resp.composition_relationship_summaries #=> Array
4970
+ # resp.composition_relationship_summaries[0].asset_model_id #=> String
4971
+ # resp.composition_relationship_summaries[0].asset_model_composite_model_id #=> String
4972
+ # resp.composition_relationship_summaries[0].asset_model_composite_model_type #=> String
4973
+ # resp.next_token #=> String
4974
+ #
4975
+ # @overload list_composition_relationships(params = {})
4976
+ # @param [Hash] params ({})
4977
+ def list_composition_relationships(params = {}, options = {})
4978
+ req = build_request(:list_composition_relationships, params)
4979
+ req.send_request(options)
4980
+ end
4981
+
3820
4982
  # Retrieves a paginated list of dashboards for an IoT SiteWise Monitor
3821
4983
  # project.
3822
4984
  #
@@ -4082,7 +5244,15 @@ module Aws::IoTSiteWise
4082
5244
  # The maximum number of results to return for each paginated request.
4083
5245
  #
4084
5246
  # @option params [String] :asset_id
4085
- # The ID of the asset in which the asset property was created.
5247
+ # The ID of the asset in which the asset property was created. This can
5248
+ # be either the actual ID in UUID format, or else `externalId:` followed
5249
+ # by the external ID, if it has one. For more information, see
5250
+ # [Referencing objects with external IDs][1] in the *IoT SiteWise User
5251
+ # Guide*.
5252
+ #
5253
+ #
5254
+ #
5255
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
4086
5256
  #
4087
5257
  # @option params [String] :alias_prefix
4088
5258
  # The alias prefix of the time series.
@@ -4108,7 +5278,7 @@ module Aws::IoTSiteWise
4108
5278
  # resp = client.list_time_series({
4109
5279
  # next_token: "NextToken",
4110
5280
  # max_results: 1,
4111
- # asset_id: "ID",
5281
+ # asset_id: "CustomID",
4112
5282
  # alias_prefix: "PropertyAlias",
4113
5283
  # time_series_type: "ASSOCIATED", # accepts ASSOCIATED, DISASSOCIATED
4114
5284
  # })
@@ -4239,8 +5409,18 @@ module Aws::IoTSiteWise
4239
5409
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/data-streams.html
4240
5410
  #
4241
5411
  # @option params [Types::RetentionPeriod] :retention_period
4242
- # How many days your data is kept in the hot tier. By default, your data
4243
- # is kept indefinitely in the hot tier.
5412
+ # The number of days your data is kept in the hot tier. By default, your
5413
+ # data is kept indefinitely in the hot tier.
5414
+ #
5415
+ # @option params [String] :warm_tier
5416
+ # A service managed storage tier optimized for analytical queries. It
5417
+ # stores periodically uploaded, buffered and historical data ingested
5418
+ # with the CreaeBulkImportJob API.
5419
+ #
5420
+ # @option params [Types::WarmTierRetentionPeriod] :warm_tier_retention_period
5421
+ # Set this period to specify how long your data is stored in the warm
5422
+ # tier before it is deleted. You can set this only if cold tier is
5423
+ # enabled.
4244
5424
  #
4245
5425
  # @return [Types::PutStorageConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4246
5426
  #
@@ -4249,6 +5429,8 @@ module Aws::IoTSiteWise
4249
5429
  # * {Types::PutStorageConfigurationResponse#disassociated_data_storage #disassociated_data_storage} => String
4250
5430
  # * {Types::PutStorageConfigurationResponse#retention_period #retention_period} => Types::RetentionPeriod
4251
5431
  # * {Types::PutStorageConfigurationResponse#configuration_status #configuration_status} => Types::ConfigurationStatus
5432
+ # * {Types::PutStorageConfigurationResponse#warm_tier #warm_tier} => String
5433
+ # * {Types::PutStorageConfigurationResponse#warm_tier_retention_period #warm_tier_retention_period} => Types::WarmTierRetentionPeriod
4252
5434
  #
4253
5435
  # @example Request syntax with placeholder values
4254
5436
  #
@@ -4265,6 +5447,11 @@ module Aws::IoTSiteWise
4265
5447
  # number_of_days: 1,
4266
5448
  # unlimited: false,
4267
5449
  # },
5450
+ # warm_tier: "ENABLED", # accepts ENABLED, DISABLED
5451
+ # warm_tier_retention_period: {
5452
+ # number_of_days: 1,
5453
+ # unlimited: false,
5454
+ # },
4268
5455
  # })
4269
5456
  #
4270
5457
  # @example Response structure
@@ -4278,6 +5465,9 @@ module Aws::IoTSiteWise
4278
5465
  # resp.configuration_status.state #=> String, one of "ACTIVE", "UPDATE_IN_PROGRESS", "UPDATE_FAILED"
4279
5466
  # resp.configuration_status.error.code #=> String, one of "VALIDATION_ERROR", "INTERNAL_FAILURE"
4280
5467
  # resp.configuration_status.error.message #=> String
5468
+ # resp.warm_tier #=> String, one of "ENABLED", "DISABLED"
5469
+ # resp.warm_tier_retention_period.number_of_days #=> Integer
5470
+ # resp.warm_tier_retention_period.unlimited #=> Boolean
4281
5471
  #
4282
5472
  # @overload put_storage_configuration(params = {})
4283
5473
  # @param [Hash] params ({})
@@ -4424,7 +5614,14 @@ module Aws::IoTSiteWise
4424
5614
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-assets-and-models.html
4425
5615
  #
4426
5616
  # @option params [required, String] :asset_id
4427
- # The ID of the asset to update.
5617
+ # The ID of the asset to update. This can be either the actual ID in
5618
+ # UUID format, or else `externalId:` followed by the external ID, if it
5619
+ # has one. For more information, see [Referencing objects with external
5620
+ # IDs][1] in the *IoT SiteWise User Guide*.
5621
+ #
5622
+ #
5623
+ #
5624
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
4428
5625
  #
4429
5626
  # @option params [required, String] :asset_name
4430
5627
  # A friendly name for the asset.
@@ -4440,6 +5637,16 @@ module Aws::IoTSiteWise
4440
5637
  # @option params [String] :asset_description
4441
5638
  # A description for the asset.
4442
5639
  #
5640
+ # @option params [String] :asset_external_id
5641
+ # An external ID to assign to the asset. The asset must not already have
5642
+ # an external ID. The external ID must be unique within your Amazon Web
5643
+ # Services account. For more information, see [Using external IDs][1] in
5644
+ # the *IoT SiteWise User Guide*.
5645
+ #
5646
+ #
5647
+ #
5648
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
5649
+ #
4443
5650
  # @return [Types::UpdateAssetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4444
5651
  #
4445
5652
  # * {Types::UpdateAssetResponse#asset_status #asset_status} => Types::AssetStatus
@@ -4447,10 +5654,11 @@ module Aws::IoTSiteWise
4447
5654
  # @example Request syntax with placeholder values
4448
5655
  #
4449
5656
  # resp = client.update_asset({
4450
- # asset_id: "ID", # required
5657
+ # asset_id: "CustomID", # required
4451
5658
  # asset_name: "Name", # required
4452
5659
  # client_token: "ClientToken",
4453
5660
  # asset_description: "Description",
5661
+ # asset_external_id: "ExternalId",
4454
5662
  # })
4455
5663
  #
4456
5664
  # @example Response structure
@@ -4493,7 +5701,14 @@ module Aws::IoTSiteWise
4493
5701
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html
4494
5702
  #
4495
5703
  # @option params [required, String] :asset_model_id
4496
- # The ID of the asset model to update.
5704
+ # The ID of the asset model to update. This can be either the actual ID
5705
+ # in UUID format, or else `externalId:` followed by the external ID, if
5706
+ # it has one. For more information, see [Referencing objects with
5707
+ # external IDs][1] in the *IoT SiteWise User Guide*.
5708
+ #
5709
+ #
5710
+ #
5711
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
4497
5712
  #
4498
5713
  # @option params [required, String] :asset_model_name
4499
5714
  # A unique, friendly name for the asset model.
@@ -4529,11 +5744,22 @@ module Aws::IoTSiteWise
4529
5744
  # [2]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
4530
5745
  #
4531
5746
  # @option params [Array<Types::AssetModelCompositeModel>] :asset_model_composite_models
4532
- # The composite asset models that are part of this asset model.
4533
- # Composite asset models are asset models that contain specific
4534
- # properties. Each composite model has a type that defines the
4535
- # properties that the composite model supports. Use composite asset
4536
- # models to define alarms on this asset model.
5747
+ # The composite models that are part of this asset model. It groups
5748
+ # properties (such as attributes, measurements, transforms, and metrics)
5749
+ # and child composite models that model parts of your industrial
5750
+ # equipment. Each composite model has a type that defines the properties
5751
+ # that the composite model supports. Use composite models to define
5752
+ # alarms on this asset model.
5753
+ #
5754
+ # <note markdown="1"> When creating custom composite models, you need to use
5755
+ # [CreateAssetModelCompositeModel][1]. For more information, see
5756
+ # &lt;LINK&gt;.
5757
+ #
5758
+ # </note>
5759
+ #
5760
+ #
5761
+ #
5762
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_CreateAssetModelCompositeModel.html
4537
5763
  #
4538
5764
  # @option params [String] :client_token
4539
5765
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -4543,6 +5769,16 @@ module Aws::IoTSiteWise
4543
5769
  # **A suitable default value is auto-generated.** You should normally
4544
5770
  # not need to pass this option.**
4545
5771
  #
5772
+ # @option params [String] :asset_model_external_id
5773
+ # An external ID to assign to the asset model. The asset model must not
5774
+ # already have an external ID. The external ID must be unique within
5775
+ # your Amazon Web Services account. For more information, see [Using
5776
+ # external IDs][1] in the *IoT SiteWise User Guide*.
5777
+ #
5778
+ #
5779
+ #
5780
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids
5781
+ #
4546
5782
  # @return [Types::UpdateAssetModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4547
5783
  #
4548
5784
  # * {Types::UpdateAssetModelResponse#asset_model_status #asset_model_status} => Types::AssetModelStatus
@@ -4550,12 +5786,12 @@ module Aws::IoTSiteWise
4550
5786
  # @example Request syntax with placeholder values
4551
5787
  #
4552
5788
  # resp = client.update_asset_model({
4553
- # asset_model_id: "ID", # required
5789
+ # asset_model_id: "CustomID", # required
4554
5790
  # asset_model_name: "Name", # required
4555
5791
  # asset_model_description: "Description",
4556
5792
  # asset_model_properties: [
4557
5793
  # {
4558
- # id: "ID",
5794
+ # id: "CustomID",
4559
5795
  # name: "Name", # required
4560
5796
  # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
4561
5797
  # data_type_spec: "Name",
@@ -4577,8 +5813,14 @@ module Aws::IoTSiteWise
4577
5813
  # {
4578
5814
  # name: "VariableName", # required
4579
5815
  # value: { # required
4580
- # property_id: "Macro", # required
5816
+ # property_id: "Macro",
4581
5817
  # hierarchy_id: "Macro",
5818
+ # property_path: [
5819
+ # {
5820
+ # id: "ID",
5821
+ # name: "Name",
5822
+ # },
5823
+ # ],
4582
5824
  # },
4583
5825
  # },
4584
5826
  # ],
@@ -4595,8 +5837,14 @@ module Aws::IoTSiteWise
4595
5837
  # {
4596
5838
  # name: "VariableName", # required
4597
5839
  # value: { # required
4598
- # property_id: "Macro", # required
5840
+ # property_id: "Macro",
4599
5841
  # hierarchy_id: "Macro",
5842
+ # property_path: [
5843
+ # {
5844
+ # id: "ID",
5845
+ # name: "Name",
5846
+ # },
5847
+ # ],
4600
5848
  # },
4601
5849
  # },
4602
5850
  # ],
@@ -4611,13 +5859,21 @@ module Aws::IoTSiteWise
4611
5859
  # },
4612
5860
  # },
4613
5861
  # },
5862
+ # path: [
5863
+ # {
5864
+ # id: "ID",
5865
+ # name: "Name",
5866
+ # },
5867
+ # ],
5868
+ # external_id: "ExternalId",
4614
5869
  # },
4615
5870
  # ],
4616
5871
  # asset_model_hierarchies: [
4617
5872
  # {
4618
- # id: "ID",
5873
+ # id: "CustomID",
4619
5874
  # name: "Name", # required
4620
- # child_asset_model_id: "ID", # required
5875
+ # child_asset_model_id: "CustomID", # required
5876
+ # external_id: "ExternalId",
4621
5877
  # },
4622
5878
  # ],
4623
5879
  # asset_model_composite_models: [
@@ -4627,7 +5883,7 @@ module Aws::IoTSiteWise
4627
5883
  # type: "Name", # required
4628
5884
  # properties: [
4629
5885
  # {
4630
- # id: "ID",
5886
+ # id: "CustomID",
4631
5887
  # name: "Name", # required
4632
5888
  # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
4633
5889
  # data_type_spec: "Name",
@@ -4649,8 +5905,14 @@ module Aws::IoTSiteWise
4649
5905
  # {
4650
5906
  # name: "VariableName", # required
4651
5907
  # value: { # required
4652
- # property_id: "Macro", # required
5908
+ # property_id: "Macro",
4653
5909
  # hierarchy_id: "Macro",
5910
+ # property_path: [
5911
+ # {
5912
+ # id: "ID",
5913
+ # name: "Name",
5914
+ # },
5915
+ # ],
4654
5916
  # },
4655
5917
  # },
4656
5918
  # ],
@@ -4667,8 +5929,14 @@ module Aws::IoTSiteWise
4667
5929
  # {
4668
5930
  # name: "VariableName", # required
4669
5931
  # value: { # required
4670
- # property_id: "Macro", # required
5932
+ # property_id: "Macro",
4671
5933
  # hierarchy_id: "Macro",
5934
+ # property_path: [
5935
+ # {
5936
+ # id: "ID",
5937
+ # name: "Name",
5938
+ # },
5939
+ # ],
4672
5940
  # },
4673
5941
  # },
4674
5942
  # ],
@@ -4683,12 +5951,21 @@ module Aws::IoTSiteWise
4683
5951
  # },
4684
5952
  # },
4685
5953
  # },
5954
+ # path: [
5955
+ # {
5956
+ # id: "ID",
5957
+ # name: "Name",
5958
+ # },
5959
+ # ],
5960
+ # external_id: "ExternalId",
4686
5961
  # },
4687
5962
  # ],
4688
- # id: "ID",
5963
+ # id: "CustomID",
5964
+ # external_id: "ExternalId",
4689
5965
  # },
4690
5966
  # ],
4691
5967
  # client_token: "ClientToken",
5968
+ # asset_model_external_id: "ExternalId",
4692
5969
  # })
4693
5970
  #
4694
5971
  # @example Response structure
@@ -4707,6 +5984,182 @@ module Aws::IoTSiteWise
4707
5984
  req.send_request(options)
4708
5985
  end
4709
5986
 
5987
+ # Updates a composite model and all of the assets that were created from
5988
+ # the model. Each asset created from the model inherits the updated
5989
+ # asset model's property and hierarchy definitions. For more
5990
+ # information, see [Updating assets and models][1] in the *IoT SiteWise
5991
+ # User Guide*.
5992
+ #
5993
+ # If you remove a property from a composite asset model, IoT SiteWise
5994
+ # deletes all previous data for that property. You can’t change the type
5995
+ # or data type of an existing property.
5996
+ #
5997
+ # To replace an existing composite asset model property with a new one
5998
+ # with the same `name`, do the following:
5999
+ #
6000
+ # 1. Submit an `UpdateAssetModelCompositeModel` request with the
6001
+ # entire
6002
+ # existing property removed.
6003
+ #
6004
+ # 2. Submit a second `UpdateAssetModelCompositeModel` request that
6005
+ # includes the new property. The new asset property will have the
6006
+ # same `name` as the previous one and IoT SiteWise will generate a
6007
+ # new unique `id`.
6008
+ #
6009
+ #
6010
+ #
6011
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-assets-and-models.html
6012
+ #
6013
+ # @option params [required, String] :asset_model_id
6014
+ # The ID of the asset model, in UUID format.
6015
+ #
6016
+ # @option params [required, String] :asset_model_composite_model_id
6017
+ # The ID of a composite model on this asset model.
6018
+ #
6019
+ # @option params [String] :asset_model_composite_model_external_id
6020
+ # An external ID to assign to the asset model. You can only set the
6021
+ # external ID of the asset model if it wasn't set when it was created,
6022
+ # or you're setting it to the exact same thing as when it was created.
6023
+ #
6024
+ # @option params [String] :asset_model_composite_model_description
6025
+ # A description for the composite model.
6026
+ #
6027
+ # @option params [required, String] :asset_model_composite_model_name
6028
+ # A unique, friendly name for the composite model.
6029
+ #
6030
+ # @option params [String] :client_token
6031
+ # A unique case-sensitive identifier that you can provide to ensure the
6032
+ # idempotency of the request. Don't reuse this client token if a new
6033
+ # idempotent request is required.
6034
+ #
6035
+ # **A suitable default value is auto-generated.** You should normally
6036
+ # not need to pass this option.**
6037
+ #
6038
+ # @option params [Array<Types::AssetModelProperty>] :asset_model_composite_model_properties
6039
+ # The property definitions of the composite model. For more information,
6040
+ # see &lt;LINK&gt;.
6041
+ #
6042
+ # You can specify up to 200 properties per composite model. For more
6043
+ # information, see [Quotas][1] in the *IoT SiteWise User Guide*.
6044
+ #
6045
+ #
6046
+ #
6047
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
6048
+ #
6049
+ # @return [Types::UpdateAssetModelCompositeModelResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6050
+ #
6051
+ # * {Types::UpdateAssetModelCompositeModelResponse#asset_model_composite_model_path #asset_model_composite_model_path} => Array&lt;Types::AssetModelCompositeModelPathSegment&gt;
6052
+ # * {Types::UpdateAssetModelCompositeModelResponse#asset_model_status #asset_model_status} => Types::AssetModelStatus
6053
+ #
6054
+ # @example Request syntax with placeholder values
6055
+ #
6056
+ # resp = client.update_asset_model_composite_model({
6057
+ # asset_model_id: "CustomID", # required
6058
+ # asset_model_composite_model_id: "CustomID", # required
6059
+ # asset_model_composite_model_external_id: "ExternalId",
6060
+ # asset_model_composite_model_description: "Description",
6061
+ # asset_model_composite_model_name: "Name", # required
6062
+ # client_token: "ClientToken",
6063
+ # asset_model_composite_model_properties: [
6064
+ # {
6065
+ # id: "CustomID",
6066
+ # name: "Name", # required
6067
+ # data_type: "STRING", # required, accepts STRING, INTEGER, DOUBLE, BOOLEAN, STRUCT
6068
+ # data_type_spec: "Name",
6069
+ # unit: "PropertyUnit",
6070
+ # type: { # required
6071
+ # attribute: {
6072
+ # default_value: "DefaultValue",
6073
+ # },
6074
+ # measurement: {
6075
+ # processing_config: {
6076
+ # forwarding_config: { # required
6077
+ # state: "DISABLED", # required, accepts DISABLED, ENABLED
6078
+ # },
6079
+ # },
6080
+ # },
6081
+ # transform: {
6082
+ # expression: "Expression", # required
6083
+ # variables: [ # required
6084
+ # {
6085
+ # name: "VariableName", # required
6086
+ # value: { # required
6087
+ # property_id: "Macro",
6088
+ # hierarchy_id: "Macro",
6089
+ # property_path: [
6090
+ # {
6091
+ # id: "ID",
6092
+ # name: "Name",
6093
+ # },
6094
+ # ],
6095
+ # },
6096
+ # },
6097
+ # ],
6098
+ # processing_config: {
6099
+ # compute_location: "EDGE", # required, accepts EDGE, CLOUD
6100
+ # forwarding_config: {
6101
+ # state: "DISABLED", # required, accepts DISABLED, ENABLED
6102
+ # },
6103
+ # },
6104
+ # },
6105
+ # metric: {
6106
+ # expression: "Expression", # required
6107
+ # variables: [ # required
6108
+ # {
6109
+ # name: "VariableName", # required
6110
+ # value: { # required
6111
+ # property_id: "Macro",
6112
+ # hierarchy_id: "Macro",
6113
+ # property_path: [
6114
+ # {
6115
+ # id: "ID",
6116
+ # name: "Name",
6117
+ # },
6118
+ # ],
6119
+ # },
6120
+ # },
6121
+ # ],
6122
+ # window: { # required
6123
+ # tumbling: {
6124
+ # interval: "Interval", # required
6125
+ # offset: "Offset",
6126
+ # },
6127
+ # },
6128
+ # processing_config: {
6129
+ # compute_location: "EDGE", # required, accepts EDGE, CLOUD
6130
+ # },
6131
+ # },
6132
+ # },
6133
+ # path: [
6134
+ # {
6135
+ # id: "ID",
6136
+ # name: "Name",
6137
+ # },
6138
+ # ],
6139
+ # external_id: "ExternalId",
6140
+ # },
6141
+ # ],
6142
+ # })
6143
+ #
6144
+ # @example Response structure
6145
+ #
6146
+ # resp.asset_model_composite_model_path #=> Array
6147
+ # resp.asset_model_composite_model_path[0].id #=> String
6148
+ # resp.asset_model_composite_model_path[0].name #=> String
6149
+ # resp.asset_model_status.state #=> String, one of "CREATING", "ACTIVE", "UPDATING", "PROPAGATING", "DELETING", "FAILED"
6150
+ # resp.asset_model_status.error.code #=> String, one of "VALIDATION_ERROR", "INTERNAL_FAILURE"
6151
+ # resp.asset_model_status.error.message #=> String
6152
+ # resp.asset_model_status.error.details #=> Array
6153
+ # resp.asset_model_status.error.details[0].code #=> String, one of "INCOMPATIBLE_COMPUTE_LOCATION", "INCOMPATIBLE_FORWARDING_CONFIGURATION"
6154
+ # resp.asset_model_status.error.details[0].message #=> String
6155
+ #
6156
+ # @overload update_asset_model_composite_model(params = {})
6157
+ # @param [Hash] params ({})
6158
+ def update_asset_model_composite_model(params = {}, options = {})
6159
+ req = build_request(:update_asset_model_composite_model, params)
6160
+ req.send_request(options)
6161
+ end
6162
+
4710
6163
  # Updates an asset property's alias and notification state.
4711
6164
  #
4712
6165
  # This operation overwrites the property's existing alias and
@@ -4720,10 +6173,24 @@ module Aws::IoTSiteWise
4720
6173
  # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetProperty.html
4721
6174
  #
4722
6175
  # @option params [required, String] :asset_id
4723
- # The ID of the asset to be updated.
6176
+ # The ID of the asset to be updated. This can be either the actual ID in
6177
+ # UUID format, or else `externalId:` followed by the external ID, if it
6178
+ # has one. For more information, see [Referencing objects with external
6179
+ # IDs][1] in the *IoT SiteWise User Guide*.
6180
+ #
6181
+ #
6182
+ #
6183
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
4724
6184
  #
4725
6185
  # @option params [required, String] :property_id
4726
- # The ID of the asset property to be updated.
6186
+ # The ID of the asset property to be updated. This can be either the
6187
+ # actual ID in UUID format, or else `externalId:` followed by the
6188
+ # external ID, if it has one. For more information, see [Referencing
6189
+ # objects with external IDs][1] in the *IoT SiteWise User Guide*.
6190
+ #
6191
+ #
6192
+ #
6193
+ # [1]: https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references
4727
6194
  #
4728
6195
  # @option params [String] :property_alias
4729
6196
  # The alias that identifies the property, such as an OPC-UA server data
@@ -4770,8 +6237,8 @@ module Aws::IoTSiteWise
4770
6237
  # @example Request syntax with placeholder values
4771
6238
  #
4772
6239
  # resp = client.update_asset_property({
4773
- # asset_id: "ID", # required
4774
- # property_id: "ID", # required
6240
+ # asset_id: "CustomID", # required
6241
+ # property_id: "CustomID", # required
4775
6242
  # property_alias: "PropertyAlias",
4776
6243
  # property_notification_state: "ENABLED", # accepts ENABLED, DISABLED
4777
6244
  # client_token: "ClientToken",
@@ -5057,7 +6524,7 @@ module Aws::IoTSiteWise
5057
6524
  params: params,
5058
6525
  config: config)
5059
6526
  context[:gem_name] = 'aws-sdk-iotsitewise'
5060
- context[:gem_version] = '1.55.0'
6527
+ context[:gem_version] = '1.57.0'
5061
6528
  Seahorse::Client::Request.new(handlers, context)
5062
6529
  end
5063
6530