aws-sdk-iotsitewise 1.56.0 → 1.57.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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.56.0'
6527
+ context[:gem_version] = '1.57.0'
5061
6528
  Seahorse::Client::Request.new(handlers, context)
5062
6529
  end
5063
6530