IoTSiteWise *********** Client ====== class IoTSiteWise.Client A low-level client representing AWS IoT SiteWise Welcome to the IoT SiteWise API Reference. IoT SiteWise is an Amazon Web Services service that connects Industrial Internet of Things (IIoT) devices to the power of the Amazon Web Services Cloud. For more information, see the IoT SiteWise User Guide. For information about IoT SiteWise quotas, see Quotas in the *IoT SiteWise User Guide*. import boto3 client = boto3.client('iotsitewise') These are the available methods: * associate_assets * associate_time_series_to_asset_property * batch_associate_project_assets * batch_disassociate_project_assets * batch_get_asset_property_aggregates * batch_get_asset_property_value * batch_get_asset_property_value_history * batch_put_asset_property_value * can_paginate * close * create_access_policy * create_asset * create_asset_model * create_asset_model_composite_model * create_bulk_import_job * create_computation_model * create_dashboard * create_dataset * create_gateway * create_portal * create_project * delete_access_policy * delete_asset * delete_asset_model * delete_asset_model_composite_model * delete_asset_model_interface_relationship * delete_computation_model * delete_dashboard * delete_dataset * delete_gateway * delete_portal * delete_project * delete_time_series * describe_access_policy * describe_action * describe_asset * describe_asset_composite_model * describe_asset_model * describe_asset_model_composite_model * describe_asset_model_interface_relationship * describe_asset_property * describe_bulk_import_job * describe_computation_model * describe_computation_model_execution_summary * describe_dashboard * describe_dataset * describe_default_encryption_configuration * describe_execution * describe_gateway * describe_gateway_capability_configuration * describe_logging_options * describe_portal * describe_project * describe_storage_configuration * describe_time_series * disassociate_assets * disassociate_time_series_from_asset_property * execute_action * execute_query * get_asset_property_aggregates * get_asset_property_value * get_asset_property_value_history * get_interpolated_asset_property_values * get_paginator * get_waiter * invoke_assistant * list_access_policies * list_actions * list_asset_model_composite_models * list_asset_model_properties * list_asset_models * list_asset_properties * list_asset_relationships * list_assets * list_associated_assets * list_bulk_import_jobs * list_composition_relationships * list_computation_model_data_binding_usages * list_computation_model_resolve_to_resources * list_computation_models * list_dashboards * list_datasets * list_executions * list_gateways * list_interface_relationships * list_portals * list_project_assets * list_projects * list_tags_for_resource * list_time_series * put_asset_model_interface_relationship * put_default_encryption_configuration * put_logging_options * put_storage_configuration * tag_resource * untag_resource * update_access_policy * update_asset * update_asset_model * update_asset_model_composite_model * update_asset_property * update_computation_model * update_dashboard * update_dataset * update_gateway * update_gateway_capability_configuration * update_portal * update_project Paginators ========== Paginators are available on a client instance via the "get_paginator" method. For more detailed instructions and examples on the usage of paginators, see the paginators user guide. The available paginators are: * ExecuteQuery * GetAssetPropertyAggregates * GetAssetPropertyValueHistory * GetInterpolatedAssetPropertyValues * ListAccessPolicies * ListActions * ListAssetModelCompositeModels * ListAssetModelProperties * ListAssetModels * ListAssetProperties * ListAssetRelationships * ListAssets * ListAssociatedAssets * ListBulkImportJobs * ListCompositionRelationships * ListComputationModelDataBindingUsages * ListComputationModelResolveToResources * ListComputationModels * ListDashboards * ListDatasets * ListExecutions * ListGateways * ListInterfaceRelationships * ListPortals * ListProjectAssets * ListProjects * ListTimeSeries Waiters ======= Waiters are available on a client instance via the "get_waiter" method. For more detailed instructions and examples on the usage or waiters, see the waiters user guide. The available waiters are: * AssetActive * AssetModelActive * AssetModelNotExists * AssetNotExists * PortalActive * PortalNotExists IoTSiteWise / Waiter / AssetModelActive AssetModelActive **************** class IoTSiteWise.Waiter.AssetModelActive waiter = client.get_waiter('asset_model_active') wait(**kwargs) Polls "IoTSiteWise.Client.describe_asset_model()" every 3 seconds until a successful state is reached. An error is raised after 20 failed checks. See also: AWS API Documentation **Request Syntax** waiter.wait( assetModelId='string', excludeProperties=True|False, assetModelVersion='string', WaiterConfig={ 'Delay': 123, 'MaxAttempts': 123 } ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **excludeProperties** (*boolean*) -- Whether or not to exclude asset model properties from the response. * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. * **WaiterConfig** (*dict*) -- A dictionary that provides parameters to control waiting behavior. * **Delay** *(integer) --* The amount of time in seconds to wait between attempts. Default: 3 * **MaxAttempts** *(integer) --* The maximum number of attempts to be made. Default: 20 Returns: None IoTSiteWise / Waiter / AssetNotExists AssetNotExists ************** class IoTSiteWise.Waiter.AssetNotExists waiter = client.get_waiter('asset_not_exists') wait(**kwargs) Polls "IoTSiteWise.Client.describe_asset()" every 3 seconds until a successful state is reached. An error is raised after 20 failed checks. See also: AWS API Documentation **Request Syntax** waiter.wait( assetId='string', excludeProperties=True|False, WaiterConfig={ 'Delay': 123, 'MaxAttempts': 123 } ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **excludeProperties** (*boolean*) -- Whether or not to exclude asset properties from the response. * **WaiterConfig** (*dict*) -- A dictionary that provides parameters to control waiting behavior. * **Delay** *(integer) --* The amount of time in seconds to wait between attempts. Default: 3 * **MaxAttempts** *(integer) --* The maximum number of attempts to be made. Default: 20 Returns: None IoTSiteWise / Waiter / PortalNotExists PortalNotExists *************** class IoTSiteWise.Waiter.PortalNotExists waiter = client.get_waiter('portal_not_exists') wait(**kwargs) Polls "IoTSiteWise.Client.describe_portal()" every 3 seconds until a successful state is reached. An error is raised after 20 failed checks. See also: AWS API Documentation **Request Syntax** waiter.wait( portalId='string', WaiterConfig={ 'Delay': 123, 'MaxAttempts': 123 } ) Parameters: * **portalId** (*string*) -- **[REQUIRED]** The ID of the portal. * **WaiterConfig** (*dict*) -- A dictionary that provides parameters to control waiting behavior. * **Delay** *(integer) --* The amount of time in seconds to wait between attempts. Default: 3 * **MaxAttempts** *(integer) --* The maximum number of attempts to be made. Default: 20 Returns: None IoTSiteWise / Waiter / PortalActive PortalActive ************ class IoTSiteWise.Waiter.PortalActive waiter = client.get_waiter('portal_active') wait(**kwargs) Polls "IoTSiteWise.Client.describe_portal()" every 3 seconds until a successful state is reached. An error is raised after 20 failed checks. See also: AWS API Documentation **Request Syntax** waiter.wait( portalId='string', WaiterConfig={ 'Delay': 123, 'MaxAttempts': 123 } ) Parameters: * **portalId** (*string*) -- **[REQUIRED]** The ID of the portal. * **WaiterConfig** (*dict*) -- A dictionary that provides parameters to control waiting behavior. * **Delay** *(integer) --* The amount of time in seconds to wait between attempts. Default: 3 * **MaxAttempts** *(integer) --* The maximum number of attempts to be made. Default: 20 Returns: None IoTSiteWise / Waiter / AssetModelNotExists AssetModelNotExists ******************* class IoTSiteWise.Waiter.AssetModelNotExists waiter = client.get_waiter('asset_model_not_exists') wait(**kwargs) Polls "IoTSiteWise.Client.describe_asset_model()" every 3 seconds until a successful state is reached. An error is raised after 20 failed checks. See also: AWS API Documentation **Request Syntax** waiter.wait( assetModelId='string', excludeProperties=True|False, assetModelVersion='string', WaiterConfig={ 'Delay': 123, 'MaxAttempts': 123 } ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **excludeProperties** (*boolean*) -- Whether or not to exclude asset model properties from the response. * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. * **WaiterConfig** (*dict*) -- A dictionary that provides parameters to control waiting behavior. * **Delay** *(integer) --* The amount of time in seconds to wait between attempts. Default: 3 * **MaxAttempts** *(integer) --* The maximum number of attempts to be made. Default: 20 Returns: None IoTSiteWise / Waiter / AssetActive AssetActive *********** class IoTSiteWise.Waiter.AssetActive waiter = client.get_waiter('asset_active') wait(**kwargs) Polls "IoTSiteWise.Client.describe_asset()" every 3 seconds until a successful state is reached. An error is raised after 20 failed checks. See also: AWS API Documentation **Request Syntax** waiter.wait( assetId='string', excludeProperties=True|False, WaiterConfig={ 'Delay': 123, 'MaxAttempts': 123 } ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **excludeProperties** (*boolean*) -- Whether or not to exclude asset properties from the response. * **WaiterConfig** (*dict*) -- A dictionary that provides parameters to control waiting behavior. * **Delay** *(integer) --* The amount of time in seconds to wait between attempts. Default: 3 * **MaxAttempts** *(integer) --* The maximum number of attempts to be made. Default: 20 Returns: None IoTSiteWise / Paginator / ListCompositionRelationships ListCompositionRelationships **************************** class IoTSiteWise.Paginator.ListCompositionRelationships paginator = client.get_paginator('list_composition_relationships') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_composition_relationships()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetModelId='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'compositionRelationshipSummaries': [ { 'assetModelId': 'string', 'assetModelCompositeModelId': 'string', 'assetModelCompositeModelType': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **compositionRelationshipSummaries** *(list) --* A list that summarizes each composition relationship. * *(dict) --* Contains a summary of the components of the composite model. * **assetModelId** *(string) --* The ID of the asset model, in UUID format. * **assetModelCompositeModelId** *(string) --* The ID of a composite model on this asset model. * **assetModelCompositeModelType** *(string) --* The composite model type. Valid values are "AWS/ALARM", "CUSTOM", or "AWS/L4E_ANOMALY". * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListProjects ListProjects ************ class IoTSiteWise.Paginator.ListProjects paginator = client.get_paginator('list_projects') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_projects()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( portalId='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **portalId** (*string*) -- **[REQUIRED]** The ID of the portal. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'projectSummaries': [ { 'id': 'string', 'name': 'string', 'description': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1) }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **projectSummaries** *(list) --* A list that summarizes each project in the portal. * *(dict) --* Contains project summary information. * **id** *(string) --* The ID of the project. * **name** *(string) --* The name of the project. * **description** *(string) --* The project's description. * **creationDate** *(datetime) --* The date the project was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the project was last updated, in Unix epoch time. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListDashboards ListDashboards ************** class IoTSiteWise.Paginator.ListDashboards paginator = client.get_paginator('list_dashboards') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_dashboards()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( projectId='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **projectId** (*string*) -- **[REQUIRED]** The ID of the project. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'dashboardSummaries': [ { 'id': 'string', 'name': 'string', 'description': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1) }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **dashboardSummaries** *(list) --* A list that summarizes each dashboard in the project. * *(dict) --* Contains a dashboard summary. * **id** *(string) --* The ID of the dashboard. * **name** *(string) --* The name of the dashboard * **description** *(string) --* The dashboard's description. * **creationDate** *(datetime) --* The date the dashboard was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the dashboard was last updated, in Unix epoch time. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListComputationModels ListComputationModels ********************* class IoTSiteWise.Paginator.ListComputationModels paginator = client.get_paginator('list_computation_models') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_computation_models()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( computationModelType='ANOMALY_DETECTION', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **computationModelType** (*string*) -- The type of computation model. If a "computationModelType" is not provided, all types of computation models are returned. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'computationModelSummaries': [ { 'id': 'string', 'arn': 'string', 'name': 'string', 'description': 'string', 'type': 'ANOMALY_DETECTION', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'version': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **computationModelSummaries** *(list) --* A list summarizing each computation model. * *(dict) --* Contains a summary of a computation model. * **id** *(string) --* The ID of the computation model. * **arn** *(string) --* The ARN of the computation model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account }:computation-model/${ComputationModelId}" * **name** *(string) --* The name of the computation model. * **description** *(string) --* The description of the computation model. * **type** *(string) --* The type of the computation model. * **creationDate** *(datetime) --* The model creation date, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The time the model was last updated, in Unix epoch time. * **status** *(dict) --* The current status of the computation model. * **state** *(string) --* The current state of the computation model. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **version** *(string) --* The version of the computation model. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / GetInterpolatedAssetPropertyValues GetInterpolatedAssetPropertyValues ********************************** class IoTSiteWise.Paginator.GetInterpolatedAssetPropertyValues paginator = client.get_paginator('get_interpolated_asset_property_values') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.get_interpolated_asset_property_values()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetId='string', propertyId='string', propertyAlias='string', startTimeInSeconds=123, startTimeOffsetInNanos=123, endTimeInSeconds=123, endTimeOffsetInNanos=123, quality='GOOD'|'BAD'|'UNCERTAIN', intervalInSeconds=123, type='string', intervalWindowInSeconds=123, PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetId** (*string*) -- The ID of the asset, in UUID format. * **propertyId** (*string*) -- The ID of the asset property, in UUID format. * **propertyAlias** (*string*) -- The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **startTimeInSeconds** (*integer*) -- **[REQUIRED]** The exclusive start of the range from which to interpolate data, expressed in seconds in Unix epoch time. * **startTimeOffsetInNanos** (*integer*) -- The nanosecond offset converted from "startTimeInSeconds". * **endTimeInSeconds** (*integer*) -- **[REQUIRED]** The inclusive end of the range from which to interpolate data, expressed in seconds in Unix epoch time. * **endTimeOffsetInNanos** (*integer*) -- The nanosecond offset converted from "endTimeInSeconds". * **quality** (*string*) -- **[REQUIRED]** The quality of the asset property value. You can use this parameter as a filter to choose only the asset property values that have a specific quality. * **intervalInSeconds** (*integer*) -- **[REQUIRED]** The time interval in seconds over which to interpolate data. Each interval starts when the previous one ends. * **type** (*string*) -- **[REQUIRED]** The interpolation type. Valid values: "LINEAR_INTERPOLATION | LOCF_INTERPOLATION" * "LINEAR_INTERPOLATION" – Estimates missing data using linear interpolation. For example, you can use this operation to return the interpolated temperature values for a wind turbine every 24 hours over a duration of 7 days. If the interpolation starts July 1, 2021, at 9 AM, IoT SiteWise returns the first interpolated value on July 2, 2021, at 9 AM, the second interpolated value on July 3, 2021, at 9 AM, and so on. * "LOCF_INTERPOLATION" – Estimates missing data using last observation carried forward interpolation If no data point is found for an interval, IoT SiteWise returns the last observed data point for the previous interval and carries forward this interpolated value until a new data point is found. For example, you can get the state of an on-off valve every 24 hours over a duration of 7 days. If the interpolation starts July 1, 2021, at 9 AM, IoT SiteWise returns the last observed data point between July 1, 2021, at 9 AM and July 2, 2021, at 9 AM as the first interpolated value. If a data point isn't found after 9 AM on July 2, 2021, IoT SiteWise uses the same interpolated value for the rest of the days. * **intervalWindowInSeconds** (*integer*) -- The query interval for the window, in seconds. IoT SiteWise computes each interpolated value by using data points from the timestamp of each interval, minus the window to the timestamp of each interval plus the window. If not specified, the window ranges between the start time minus the interval and the end time plus the interval. Note: * If you specify a value for the "intervalWindowInSeconds" parameter, the value for the "type" parameter must be "LINEAR_INTERPOLATION". * If a data point isn't found during the specified query window, IoT SiteWise won't return an interpolated value for the interval. This indicates that there's a gap in the ingested data points. For example, you can get the interpolated temperature values for a wind turbine every 24 hours over a duration of 7 days. If the interpolation starts on July 1, 2021, at 9 AM with a window of 2 hours, IoT SiteWise uses the data points from 7 AM (9 AM minus 2 hours) to 11 AM (9 AM plus 2 hours) on July 2, 2021 to compute the first interpolated value. Next, IoT SiteWise uses the data points from 7 AM (9 AM minus 2 hours) to 11 AM (9 AM plus 2 hours) on July 3, 2021 to compute the second interpolated value, and so on. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'interpolatedAssetPropertyValues': [ { 'timestamp': { 'timeInSeconds': 123, 'offsetInNanos': 123 }, 'value': { 'stringValue': 'string', 'integerValue': 123, 'doubleValue': 123.0, 'booleanValue': True|False, 'nullValue': { 'valueType': 'D'|'B'|'S'|'I'|'U' } } }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **interpolatedAssetPropertyValues** *(list) --* The requested interpolated values. * *(dict) --* Contains information about an interpolated asset property value. * **timestamp** *(dict) --* Contains a timestamp with optional nanosecond granularity. * **timeInSeconds** *(integer) --* The timestamp date, in seconds, in the Unix epoch format. Fractional nanosecond data is provided by "offsetInNanos". * **offsetInNanos** *(integer) --* The nanosecond offset from "timeInSeconds". * **value** *(dict) --* Contains an asset property value (of a single type only). * **stringValue** *(string) --* Asset property data of type string (sequence of characters). The allowed pattern: "^$|[^u0000-u001Fu007F]+". The max length is 1024. * **integerValue** *(integer) --* Asset property data of type integer (whole number). * **doubleValue** *(float) --* Asset property data of type double (floating point number). The min value is -10^10. The max value is 10^10. Double.NaN is allowed. * **booleanValue** *(boolean) --* Asset property data of type Boolean (true or false). * **nullValue** *(dict) --* The type of null asset property data with BAD and UNCERTAIN qualities. * **valueType** *(string) --* The type of null asset property data. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListExecutions ListExecutions ************** class IoTSiteWise.Paginator.ListExecutions paginator = client.get_paginator('list_executions') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_executions()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( targetResourceType='ASSET'|'COMPUTATION_MODEL', targetResourceId='string', resolveToResourceType='ASSET', resolveToResourceId='string', actionType='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **targetResourceType** (*string*) -- **[REQUIRED]** The type of the target resource. * **targetResourceId** (*string*) -- **[REQUIRED]** The ID of the target resource. * **resolveToResourceType** (*string*) -- The type of the resolved resource. * **resolveToResourceId** (*string*) -- The ID of the resolved resource. * **actionType** (*string*) -- The type of action exectued. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'executionSummaries': [ { 'executionId': 'string', 'actionType': 'string', 'targetResource': { 'assetId': 'string', 'computationModelId': 'string' }, 'targetResourceVersion': 'string', 'resolveTo': { 'assetId': 'string' }, 'executionStartTime': datetime(2015, 1, 1), 'executionEndTime': datetime(2015, 1, 1), 'executionStatus': { 'state': 'RUNNING'|'COMPLETED'|'FAILED' }, 'executionEntityVersion': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **executionSummaries** *(list) --* Contains the list of execution summaries of the computation models. * *(dict) --* Contains the execution summary of the computation model. * **executionId** *(string) --* The ID of the execution. * **actionType** *(string) --* The type of action exectued. * **targetResource** *(dict) --* The resource the action will be taken on. This can include asset-based resources and computation model resources. * **assetId** *(string) --* The ID of the asset, in UUID format. * **computationModelId** *(string) --* The ID of the computation model. * **targetResourceVersion** *(string) --* The version of the target resource. * **resolveTo** *(dict) --* The detailed resource this execution resolves to. * **assetId** *(string) --* The ID of the asset that the resource resolves to. * **executionStartTime** *(datetime) --* The time the process started. * **executionEndTime** *(datetime) --* The time the process ended. * **executionStatus** *(dict) --* The status of the execution process. * **state** *(string) --* The current state of the computation model. * **executionEntityVersion** *(string) --* The execution entity version associated with the summary. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListComputationModelDataBindingUsages ListComputationModelDataBindingUsages ************************************* class IoTSiteWise.Paginator.ListComputationModelDataBindingUsages paginator = client.get_paginator('list_computation_model_data_binding_usages') paginate(**kwargs) Creates an iterator that will paginate through responses from " IoTSiteWise.Client.list_computation_model_data_binding_usages() ". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( dataBindingValueFilter={ 'asset': { 'assetId': 'string' }, 'assetModel': { 'assetModelId': 'string' }, 'assetProperty': { 'assetId': 'string', 'propertyId': 'string' }, 'assetModelProperty': { 'assetModelId': 'string', 'propertyId': 'string' } }, PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **dataBindingValueFilter** (*dict*) -- **[REQUIRED]** A filter used to limit the returned data binding usages based on specific data binding values. You can filter by asset, asset model, asset property, or asset model property to find all computation models using these specific data sources. * **asset** *(dict) --* Filter criteria for matching data bindings based on a specific asset. Used to list all data bindings referencing a particular asset or its properties. * **assetId** *(string) --* **[REQUIRED]** The ID of the asset to filter data bindings by. Only data bindings referencing this specific asset are matched. * **assetModel** *(dict) --* Filter criteria for matching data bindings based on a specific asset model. Used to list all data bindings referencing a particular asset model or its properties. * **assetModelId** *(string) --* **[REQUIRED]** The ID of the asset model to filter data bindings by. Only data bindings referemncing this specific asset model are matched. * **assetProperty** *(dict) --* Filter criteria for matching data bindings based on a specific asset property. Used to list all data bindings referencing a particular property of an asset. * **assetId** *(string) --* **[REQUIRED]** The ID of the asset containing the property to filter by. This identifies the specific asset instance containing the property of interest. * **propertyId** *(string) --* **[REQUIRED]** The ID of the property within the asset to filter by. Only data bindings referencing this specific property of the specified asset are matched. * **assetModelProperty** *(dict) --* Filter criteria for matching data bindings based on a specific asset model property. Used to list all data bindings referencing a particular property of an asset model. * **assetModelId** *(string) --* **[REQUIRED]** The ID of the asset model containing the filter property. This identifies the specific asset model that contains the property of interest. * **propertyId** *(string) --* **[REQUIRED]** The ID of the property within the asset model to filter by. Only data bindings referencing this specific property of the specified asset model are matched. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'dataBindingUsageSummaries': [ { 'computationModelIds': [ 'string', ], 'matchedDataBinding': { 'value': { 'assetModelProperty': { 'assetModelId': 'string', 'propertyId': 'string' }, 'assetProperty': { 'assetId': 'string', 'propertyId': 'string' } } } }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **dataBindingUsageSummaries** *(list) --* A list of summaries describing the data binding usages across computation models. Each summary includes the computation model IDs and the matched data binding details. * *(dict) --* A summary of how a specific data binding is used across computation models. This tracks dependencies between data sources and computation models, allowing you to understand the impact of changes to data sources. * **computationModelIds** *(list) --* The list of computation model IDs that use this data binding. This allows identification of all computation models affected by changes to the referenced data source. * *(string) --* * **matchedDataBinding** *(dict) --* The data binding matched by the filter criteria. Contains details about specific data binding values used by the computation models. * **value** *(dict) --* The value of the matched data binding. * **assetModelProperty** *(dict) --* Contains information about an "assetModelProperty" binding value. * **assetModelId** *(string) --* The ID of the asset model, in UUID format. * **propertyId** *(string) --* The ID of the asset model property used in data binding value. * **assetProperty** *(dict) --* The asset property value used in the data binding. * **assetId** *(string) --* The ID of the asset containing the property. This identifies the specific asset instance's property value used in the computation model. * **propertyId** *(string) --* The ID of the property within the asset. This identifies the specific property's value used in the computation model. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListProjectAssets ListProjectAssets ***************** class IoTSiteWise.Paginator.ListProjectAssets paginator = client.get_paginator('list_project_assets') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_project_assets()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( projectId='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **projectId** (*string*) -- **[REQUIRED]** The ID of the project. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'assetIds': [ 'string', ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **assetIds** *(list) --* A list that contains the IDs of each asset associated with the project. * *(string) --* * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListActions ListActions *********** class IoTSiteWise.Paginator.ListActions paginator = client.get_paginator('list_actions') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_actions()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( targetResourceType='ASSET'|'COMPUTATION_MODEL', targetResourceId='string', resolveToResourceType='ASSET', resolveToResourceId='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **targetResourceType** (*string*) -- **[REQUIRED]** The type of resource. * **targetResourceId** (*string*) -- **[REQUIRED]** The ID of the target resource. * **resolveToResourceType** (*string*) -- The type of the resolved resource. * **resolveToResourceId** (*string*) -- The ID of the resolved resource. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'actionSummaries': [ { 'actionId': 'string', 'actionDefinitionId': 'string', 'targetResource': { 'assetId': 'string', 'computationModelId': 'string' }, 'resolveTo': { 'assetId': 'string' } }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **actionSummaries** *(list) --* A list that summarizes the actions associated with the specified asset. * *(dict) --* Contains the summary of the actions, including information about where the action resolves to. * **actionId** *(string) --* The ID of the action. * **actionDefinitionId** *(string) --* The ID of the action definition. * **targetResource** *(dict) --* The resource the action will be taken on. * **assetId** *(string) --* The ID of the asset, in UUID format. * **computationModelId** *(string) --* The ID of the computation model. * **resolveTo** *(dict) --* The detailed resource this action resolves to. * **assetId** *(string) --* The ID of the asset that the resource resolves to. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListTimeSeries ListTimeSeries ************** class IoTSiteWise.Paginator.ListTimeSeries paginator = client.get_paginator('list_time_series') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_time_series()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetId='string', aliasPrefix='string', timeSeriesType='ASSOCIATED'|'DISASSOCIATED', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetId** (*string*) -- The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **aliasPrefix** (*string*) -- The alias prefix of the time series. * **timeSeriesType** (*string*) -- The type of the time series. The time series type can be one of the following values: * "ASSOCIATED" – The time series is associated with an asset property. * "DISASSOCIATED" – The time series isn't associated with any asset property. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'TimeSeriesSummaries': [ { 'assetId': 'string', 'propertyId': 'string', 'alias': 'string', 'timeSeriesId': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'timeSeriesCreationDate': datetime(2015, 1, 1), 'timeSeriesLastUpdateDate': datetime(2015, 1, 1), 'timeSeriesArn': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **TimeSeriesSummaries** *(list) --* One or more time series summaries to list. * *(dict) --* Contains a summary of a time series (data stream). * **assetId** *(string) --* The ID of the asset in which the asset property was created. * **propertyId** *(string) --* The ID of the asset property, in UUID format. * **alias** *(string) --* The alias that identifies the time series. * **timeSeriesId** *(string) --* The ID of the time series. * **dataType** *(string) --* The data type of the time series. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this time series. * **dataTypeSpec** *(string) --* The data type of the structure for this time series. This parameter is required for time series that have the "STRUCT" data type. The options for this parameter depend on the type of the composite model in which you created the asset property that is associated with your time series. Use "AWS/ALARM_STATE" for alarm state in alarm composite models. * **timeSeriesCreationDate** *(datetime) --* The date that the time series was created, in Unix epoch time. * **timeSeriesLastUpdateDate** *(datetime) --* The date that the time series was last updated, in Unix epoch time. * **timeSeriesArn** *(string) --* The ARN of the time series, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account }:time-series/${TimeSeriesId}" * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListAssetProperties ListAssetProperties ******************* class IoTSiteWise.Paginator.ListAssetProperties paginator = client.get_paginator('list_asset_properties') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_asset_properties()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetId='string', filter='ALL'|'BASE', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **filter** (*string*) -- Filters the requested list of asset properties. You can choose one of the following options: * "ALL" – The list includes all asset properties for a given asset model ID. * "BASE" – The list includes only base asset properties for a given asset model ID. Default: "BASE" * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'assetPropertySummaries': [ { 'id': 'string', 'externalId': 'string', 'alias': 'string', 'unit': 'string', 'notification': { 'topic': 'string', 'state': 'ENABLED'|'DISABLED' }, 'assetCompositeModelId': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **assetPropertySummaries** *(list) --* A list that summarizes the properties associated with the specified asset. * *(dict) --* Contains a summary of a property associated with an asset. * **id** *(string) --* The ID of the property. * **externalId** *(string) --* The external ID of the property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **alias** *(string) --* The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **unit** *(string) --* The unit of measure (such as Newtons or RPM) of the asset property. * **notification** *(dict) --* Contains asset property value notification information. When the notification state is enabled, IoT SiteWise publishes property value updates to a unique MQTT topic. For more information, see Interacting with other services in the *IoT SiteWise User Guide*. * **topic** *(string) --* The MQTT topic to which IoT SiteWise publishes property value update notifications. * **state** *(string) --* The current notification state. * **assetCompositeModelId** *(string) --* The ID of the composite model that contains the asset property. * **path** *(list) --* The structured path to the property from the root of the asset. * *(dict) --* Represents one level between a property and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListAssociatedAssets ListAssociatedAssets ******************** class IoTSiteWise.Paginator.ListAssociatedAssets paginator = client.get_paginator('list_associated_assets') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_associated_assets()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetId='string', hierarchyId='string', traversalDirection='PARENT'|'CHILD', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset to query. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** (*string*) -- (Optional) If you don't provide a "hierarchyId", all the immediate assets in the "traversalDirection" will be returned. The ID of the hierarchy by which child assets are associated to the asset. (This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*.) For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **traversalDirection** (*string*) -- The direction to list associated assets. Choose one of the following options: * "CHILD" – The list includes all child assets associated to the asset. * "PARENT" – The list includes the asset's parent asset. Default: "CHILD" * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'assetSummaries': [ { 'id': 'string', 'externalId': 'string', 'arn': 'string', 'name': 'string', 'assetModelId': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'hierarchies': [ { 'id': 'string', 'externalId': 'string', 'name': 'string' }, ], 'description': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **assetSummaries** *(list) --* A list that summarizes the associated assets. * *(dict) --* Contains a summary of an associated asset. * **id** *(string) --* The ID of the asset, in UUID format. * **externalId** *(string) --* The external ID of the asset. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **arn** *(string) --* The ARN of the asset, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:a sset/${AssetId}" * **name** *(string) --* The name of the asset. * **assetModelId** *(string) --* The ID of the asset model used to create the asset. * **creationDate** *(datetime) --* The date the asset was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the asset was last updated, in Unix epoch time. * **status** *(dict) --* The current status of the asset. * **state** *(string) --* The current status of the asset. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **hierarchies** *(list) --* A list of asset hierarchies that each contain a "hierarchyId". A hierarchy specifies allowed parent/child asset relationships. * *(dict) --* Describes an asset hierarchy that contains a hierarchy's name and ID. * **id** *(string) --* The ID of the hierarchy. This ID is a "hierarchyId". * **externalId** *(string) --* The external ID of the hierarchy, if it has one. When you update an asset hierarchy, you may assign an external ID if it doesn't already have one. You can't change the external ID of an asset hierarchy that already has one. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The hierarchy name provided in the CreateAssetModel or UpdateAssetModel API operation. * **description** *(string) --* A description for the asset. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListAccessPolicies ListAccessPolicies ****************** class IoTSiteWise.Paginator.ListAccessPolicies paginator = client.get_paginator('list_access_policies') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_access_policies()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( identityType='USER'|'GROUP'|'IAM', identityId='string', resourceType='PORTAL'|'PROJECT', resourceId='string', iamArn='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **identityType** (*string*) -- The type of identity (IAM Identity Center user, IAM Identity Center group, or IAM user). This parameter is required if you specify "identityId". * **identityId** (*string*) -- The ID of the identity. This parameter is required if you specify "USER" or "GROUP" for "identityType". * **resourceType** (*string*) -- The type of resource (portal or project). This parameter is required if you specify "resourceId". * **resourceId** (*string*) -- The ID of the resource. This parameter is required if you specify "resourceType". * **iamArn** (*string*) -- The ARN of the IAM user. For more information, see IAM ARNs in the *IAM User Guide*. This parameter is required if you specify "IAM" for "identityType". * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'accessPolicySummaries': [ { 'id': 'string', 'identity': { 'user': { 'id': 'string' }, 'group': { 'id': 'string' }, 'iamUser': { 'arn': 'string' }, 'iamRole': { 'arn': 'string' } }, 'resource': { 'portal': { 'id': 'string' }, 'project': { 'id': 'string' } }, 'permission': 'ADMINISTRATOR'|'VIEWER', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1) }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **accessPolicySummaries** *(list) --* A list that summarizes each access policy. * *(dict) --* Contains an access policy that defines an identity's access to an IoT SiteWise Monitor resource. * **id** *(string) --* The ID of the access policy. * **identity** *(dict) --* The identity (an IAM Identity Center user, an IAM Identity Center group, or an IAM user). * **user** *(dict) --* An IAM Identity Center user identity. * **id** *(string) --* The IAM Identity Center ID of the user. * **group** *(dict) --* An IAM Identity Center group identity. * **id** *(string) --* The IAM Identity Center ID of the group. * **iamUser** *(dict) --* An IAM user identity. * **arn** *(string) --* The ARN of the IAM user. For more information, see IAM ARNs in the *IAM User Guide*. Note: If you delete the IAM user, access policies that contain this identity include an empty "arn". You can delete the access policy for the IAM user that no longer exists. * **iamRole** *(dict) --* An IAM role identity. * **arn** *(string) --* The ARN of the IAM role. For more information, see IAM ARNs in the *IAM User Guide*. * **resource** *(dict) --* The IoT SiteWise Monitor resource (a portal or project). * **portal** *(dict) --* A portal resource. * **id** *(string) --* The ID of the portal. * **project** *(dict) --* A project resource. * **id** *(string) --* The ID of the project. * **permission** *(string) --* The permissions for the access policy. Note that a project "ADMINISTRATOR" is also known as a project owner. * **creationDate** *(datetime) --* The date the access policy was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the access policy was last updated, in Unix epoch time. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListAssetModelCompositeModels ListAssetModelCompositeModels ***************************** class IoTSiteWise.Paginator.ListAssetModelCompositeModels paginator = client.get_paginator('list_asset_model_composite_models') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_asset_model_composite_models()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetModelId='string', assetModelVersion='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'assetModelCompositeModelSummaries': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'type': 'string', 'description': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **assetModelCompositeModelSummaries** *(list) --* A list that summarizes each composite model. * *(dict) --* Contains a summary of the composite model. * **id** *(string) --* The ID of the composite model that this summary describes.. * **externalId** *(string) --* The external ID of a composite model on this asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the composite model that this summary describes.. * **type** *(string) --* The composite model type. Valid values are "AWS/ALARM", "CUSTOM", or "AWS/L4E_ANOMALY". * **description** *(string) --* The description of the composite model that this summary describes.. * **path** *(list) --* The path that includes all the pieces that make up the composite model. * *(dict) --* Represents one level between a composite model and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ExecuteQuery ExecuteQuery ************ class IoTSiteWise.Paginator.ExecuteQuery paginator = client.get_paginator('execute_query') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.execute_query()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( queryStatement='string', clientToken='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **queryStatement** (*string*) -- **[REQUIRED]** The IoT SiteWise query statement. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'columns': [ { 'name': 'string', 'type': { 'scalarType': 'BOOLEAN'|'INT'|'DOUBLE'|'TIMESTAMP'|'STRING' } }, ], 'rows': [ { 'data': [ { 'scalarValue': 'string', 'arrayValue': {'... recursive ...'}, 'rowValue': {'... recursive ...'}, 'nullValue': True|False }, ] }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **columns** *(list) --* Represents a single column in the query results. * *(dict) --* A description of the column in the query results. * **name** *(string) --* The name of the column description. * **type** *(dict) --* The type of the column description. * **scalarType** *(string) --* The allowed data types that the column has as it's value. * **rows** *(list) --* Represents a single row in the query results. * *(dict) --* Represents a single row in the query results. * **data** *(list) --* List of data points in a single row of the result set. * *(dict) --* Represents a single data point in a query result. * **scalarValue** *(string) --* Indicates if the data point is a scalar value such as integer, string, double, or Boolean. * **arrayValue** *(list) --* Indicates if the data point is an array. * **rowValue** *(dict) --* Indicates if the data point is a row. * **nullValue** *(boolean) --* Indicates if the data point is null. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListGateways ListGateways ************ class IoTSiteWise.Paginator.ListGateways paginator = client.get_paginator('list_gateways') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_gateways()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max- items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'gatewaySummaries': [ { 'gatewayId': 'string', 'gatewayName': 'string', 'gatewayPlatform': { 'greengrass': { 'groupArn': 'string' }, 'greengrassV2': { 'coreDeviceThingName': 'string', 'coreDeviceOperatingSystem': 'LINUX_AARCH64'|'LINUX_AMD64'|'WINDOWS_AMD64' }, 'siemensIE': { 'iotCoreThingName': 'string' } }, 'gatewayVersion': 'string', 'gatewayCapabilitySummaries': [ { 'capabilityNamespace': 'string', 'capabilitySyncStatus': 'IN_SYNC'|'OUT_OF_SYNC'|'SYNC_FAILED'|'UNKNOWN'|'NOT_APPLICABLE' }, ], 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1) }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **gatewaySummaries** *(list) --* A list that summarizes each gateway. * *(dict) --* Contains a summary of a gateway. * **gatewayId** *(string) --* The ID of the gateway device. * **gatewayName** *(string) --* The name of the gateway. * **gatewayPlatform** *(dict) --* The gateway's platform configuration. You can only specify one platform type in a gateway. (Legacy only) For Greengrass V1 gateways, specify the "greengrass" parameter with a valid Greengrass group ARN. For Greengrass V2 gateways, specify the "greengrassV2" parameter with a valid core device thing name. If creating a V3 gateway ( "gatewayVersion=3"), you must also specify the "coreDeviceOperatingSystem". For Siemens Industrial Edge gateways, specify the "siemensIE" parameter with a valid IoT Core thing name. * **greengrass** *(dict) --* A gateway that runs on IoT Greengrass. * **groupArn** *(string) --* The ARN of the Greengrass group. For more information about how to find a group's ARN, see ListGroups and GetGroup in the *IoT Greengrass V1 API Reference*. * **greengrassV2** *(dict) --* A gateway that runs on IoT Greengrass V2. * **coreDeviceThingName** *(string) --* The name of the IoT thing for your IoT Greengrass V2 core device. * **coreDeviceOperatingSystem** *(string) --* The operating system of the core device in IoT Greengrass V2. Specifying the operating system is required for MQTT-enabled, V3 gateways ( "gatewayVersion" "3") and not applicable for Classic stream, V2 gateways ( "gatewayVersion" "2"). * **siemensIE** *(dict) --* A SiteWise Edge gateway that runs on a Siemens Industrial Edge Device. * **iotCoreThingName** *(string) --* The name of the IoT Thing for your SiteWise Edge gateway. * **gatewayVersion** *(string) --* The version of the gateway. A value of "3" indicates an MQTT-enabled, V3 gateway, while "2" indicates a Classic streams, V2 gateway. * **gatewayCapabilitySummaries** *(list) --* A list of gateway capability summaries that each contain a namespace and status. Each gateway capability defines data sources for the gateway. To retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration. * *(dict) --* Contains a summary of a gateway capability configuration. * **capabilityNamespace** *(string) --* The namespace of the capability configuration. For example, if you configure OPC UA sources for an MQTT-enabled gateway, your OPC-UA capability configuration has the namespace "iotsitewise:opcuacollector:3". * **capabilitySyncStatus** *(string) --* The synchronization status of the gateway capability configuration. The sync status can be one of the following: * "IN_SYNC" - The gateway is running with the latest configuration. * "OUT_OF_SYNC" - The gateway hasn't received the latest configuration. * "SYNC_FAILED" - The gateway rejected the latest configuration. * "UNKNOWN" - The gateway hasn't reported its sync status. * "NOT_APPLICABLE" - The gateway doesn't support this capability. This is most common when integrating partner data sources, because the data integration is handled externally by the partner. * **creationDate** *(datetime) --* The date the gateway was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the gateway was last updated, in Unix epoch time. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListComputationModelResolveToResources ListComputationModelResolveToResources ************************************** class IoTSiteWise.Paginator.ListComputationModelResolveToResources paginator = client.get_paginator('list_computation_model_resolve_to_resources') paginate(**kwargs) Creates an iterator that will paginate through responses from " IoTSiteWise.Client.list_computation_model_resolve_to_resources( )". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( computationModelId='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **computationModelId** (*string*) -- **[REQUIRED]** The ID of the computation model for which to list resolved resources. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'computationModelResolveToResourceSummaries': [ { 'resolveTo': { 'assetId': 'string' } }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **computationModelResolveToResourceSummaries** *(list) --* A list of summaries describing the distinct resources that this computation model resolves to when actions were executed. * *(dict) --* A summary of the resource that a computation model resolves to. * **resolveTo** *(dict) --* The detailed resource this execution summary resolves to. * **assetId** *(string) --* The ID of the asset that the resource resolves to. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListBulkImportJobs ListBulkImportJobs ****************** class IoTSiteWise.Paginator.ListBulkImportJobs paginator = client.get_paginator('list_bulk_import_jobs') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_bulk_import_jobs()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( filter='ALL'|'PENDING'|'RUNNING'|'CANCELLED'|'FAILED'|'COMPLETED_WITH_FAILURES'|'COMPLETED', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **filter** (*string*) -- You can use a filter to select the bulk import jobs that you want to retrieve. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'jobSummaries': [ { 'id': 'string', 'name': 'string', 'status': 'PENDING'|'CANCELLED'|'RUNNING'|'COMPLETED'|'FAILED'|'COMPLETED_WITH_FAILURES' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **jobSummaries** *(list) --* One or more job summaries to list. * *(dict) --* Contains the job summary information. * **id** *(string) --* The ID of the job. * **name** *(string) --* The unique name that helps identify the job request. * **status** *(string) --* The status of the bulk import job can be one of following values: * "PENDING" – IoT SiteWise is waiting for the current bulk import job to finish. * "CANCELLED" – The bulk import job has been canceled. * "RUNNING" – IoT SiteWise is processing your request to import your data from Amazon S3. * "COMPLETED" – IoT SiteWise successfully completed your request to import data from Amazon S3. * "FAILED" – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues. * "COMPLETED_WITH_FAILURES" – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListAssetModels ListAssetModels *************** class IoTSiteWise.Paginator.ListAssetModels paginator = client.get_paginator('list_asset_models') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_asset_models()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetModelTypes=[ 'ASSET_MODEL'|'COMPONENT_MODEL'|'INTERFACE', ], assetModelVersion='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetModelTypes** (*list*) -- The type of asset model. If you don't provide an "assetModelTypes", all types of asset models are returned. * **ASSET_MODEL** – An asset model that you can use to create assets. Can't be included as a component in another asset model. * **COMPONENT_MODEL** – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model. * **INTERFACE** – An interface is a type of model that defines a standard structure that can be applied to different asset models. * *(string) --* * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'assetModelSummaries': [ { 'id': 'string', 'externalId': 'string', 'arn': 'string', 'name': 'string', 'assetModelType': 'ASSET_MODEL'|'COMPONENT_MODEL'|'INTERFACE', 'description': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'version': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **assetModelSummaries** *(list) --* A list that summarizes each asset model. * *(dict) --* Contains a summary of an asset model. * **id** *(string) --* The ID of the asset model (used with IoT SiteWise API operations). * **externalId** *(string) --* The external ID of the asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **arn** *(string) --* The ARN of the asset model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account }:asset-model/${AssetModelId}" * **name** *(string) --* The name of the asset model. * **assetModelType** *(string) --* The type of asset model. * **ASSET_MODEL** – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model. * **COMPONENT_MODEL** – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model. * **description** *(string) --* The asset model description. * **creationDate** *(datetime) --* The date the asset model was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the asset model was last updated, in Unix epoch time. * **status** *(dict) --* The current status of the asset model. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **version** *(string) --* The version number of the asset model. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListInterfaceRelationships ListInterfaceRelationships ************************** class IoTSiteWise.Paginator.ListInterfaceRelationships paginator = client.get_paginator('list_interface_relationships') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_interface_relationships()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( interfaceAssetModelId='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **interfaceAssetModelId** (*string*) -- **[REQUIRED]** The ID of the interface asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'interfaceRelationshipSummaries': [ { 'id': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **interfaceRelationshipSummaries** *(list) --* A list that summarizes each interface relationship. * *(dict) --* Contains summary information about an interface relationship, which defines how an interface is applied to an asset model. This summary provides the essential identifiers needed to retrieve detailed information about the relationship. * **id** *(string) --* The ID of the asset model that has the interface applied to it. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListAssetModelProperties ListAssetModelProperties ************************ class IoTSiteWise.Paginator.ListAssetModelProperties paginator = client.get_paginator('list_asset_model_properties') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_asset_model_properties()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetModelId='string', filter='ALL'|'BASE', assetModelVersion='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **filter** (*string*) -- Filters the requested list of asset model properties. You can choose one of the following options: * "ALL" – The list includes all asset model properties for a given asset model ID. * "BASE" – The list includes only base asset model properties for a given asset model ID. Default: "BASE" * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'assetModelPropertySummaries': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'assetModelCompositeModelId': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ], 'interfaceSummaries': [ { 'interfaceAssetModelId': 'string', 'interfaceAssetModelPropertyId': 'string' }, ] }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **assetModelPropertySummaries** *(list) --* A list that summarizes the properties associated with the specified asset model. * *(dict) --* Contains a summary of a property associated with a model. This includes information about which interfaces the property belongs to, if any. * **id** *(string) --* The ID of the property. * **externalId** *(string) --* The external ID of the property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the property. * **dataType** *(string) --* The data type of the property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit (such as "Newtons" or "RPM") of the property. * **type** *(dict) --* Contains a property type, which can be one of "attribute", "measurement", "metric", or "transform". * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* The forwarding configuration for the given measurement property. * **state** *(string) --* The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* The compute location for the given metric property. * **assetModelCompositeModelId** *(string) --* The ID of the composite model that contains the asset model property. * **path** *(list) --* The structured path to the property from the root of the asset model. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **interfaceSummaries** *(list) --* A list of interface summaries that describe which interfaces this property belongs to, including the interface asset model ID and the corresponding property ID in the interface. * *(dict) --* Contains summary information about an interface that a property belongs to. * **interfaceAssetModelId** *(string) --* The ID of the interface asset model that contains this property. * **interfaceAssetModelPropertyId** *(string) --* The ID of the property in the interface asset model that corresponds to this property. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / GetAssetPropertyValueHistory GetAssetPropertyValueHistory **************************** class IoTSiteWise.Paginator.GetAssetPropertyValueHistory paginator = client.get_paginator('get_asset_property_value_history') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.get_asset_property_value_history()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetId='string', propertyId='string', propertyAlias='string', startDate=datetime(2015, 1, 1), endDate=datetime(2015, 1, 1), qualities=[ 'GOOD'|'BAD'|'UNCERTAIN', ], timeOrdering='ASCENDING'|'DESCENDING', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetId** (*string*) -- The ID of the asset, in UUID format. * **propertyId** (*string*) -- The ID of the asset property, in UUID format. * **propertyAlias** (*string*) -- The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **startDate** (*datetime*) -- The exclusive start of the range from which to query historical data, expressed in seconds in Unix epoch time. * **endDate** (*datetime*) -- The inclusive end of the range from which to query historical data, expressed in seconds in Unix epoch time. * **qualities** (*list*) -- The quality by which to filter asset data. * *(string) --* * **timeOrdering** (*string*) -- The chronological sorting order of the requested information. Default: "ASCENDING" * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'assetPropertyValueHistory': [ { 'value': { 'stringValue': 'string', 'integerValue': 123, 'doubleValue': 123.0, 'booleanValue': True|False, 'nullValue': { 'valueType': 'D'|'B'|'S'|'I'|'U' } }, 'timestamp': { 'timeInSeconds': 123, 'offsetInNanos': 123 }, 'quality': 'GOOD'|'BAD'|'UNCERTAIN' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **assetPropertyValueHistory** *(list) --* The asset property's value history. * *(dict) --* Contains asset property value information. * **value** *(dict) --* The value of the asset property (see "Variant"). * **stringValue** *(string) --* Asset property data of type string (sequence of characters). The allowed pattern: "^$|[^u0000-u001Fu007F]+". The max length is 1024. * **integerValue** *(integer) --* Asset property data of type integer (whole number). * **doubleValue** *(float) --* Asset property data of type double (floating point number). The min value is -10^10. The max value is 10^10. Double.NaN is allowed. * **booleanValue** *(boolean) --* Asset property data of type Boolean (true or false). * **nullValue** *(dict) --* The type of null asset property data with BAD and UNCERTAIN qualities. * **valueType** *(string) --* The type of null asset property data. * **timestamp** *(dict) --* The timestamp of the asset property value. * **timeInSeconds** *(integer) --* The timestamp date, in seconds, in the Unix epoch format. Fractional nanosecond data is provided by "offsetInNanos". * **offsetInNanos** *(integer) --* The nanosecond offset from "timeInSeconds". * **quality** *(string) --* The quality of the asset property value. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListDatasets ListDatasets ************ class IoTSiteWise.Paginator.ListDatasets paginator = client.get_paginator('list_datasets') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_datasets()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( sourceType='KENDRA', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **sourceType** (*string*) -- **[REQUIRED]** The type of data source for the dataset. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'datasetSummaries': [ { 'id': 'string', 'arn': 'string', 'name': 'string', 'description': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **datasetSummaries** *(list) --* A list that summarizes the dataset response. * *(dict) --* The summary details for the dataset. * **id** *(string) --* The ID of the dataset. * **arn** *(string) --* The ARN of the dataset. The format is "arn:${Partiti on}:iotsitewise:${Region}:${Account}:dataset/${Datas etId}". * **name** *(string) --* The name of the dataset. * **description** *(string) --* A description about the dataset, and its functionality. * **creationDate** *(datetime) --* The dataset creation date, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the dataset was last updated, in Unix epoch time. * **status** *(dict) --* The status of the dataset. This contains the state and any error messages. The state is "ACTIVE" when ready to use. * **state** *(string) --* The current status of the dataset. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / GetAssetPropertyAggregates GetAssetPropertyAggregates ************************** class IoTSiteWise.Paginator.GetAssetPropertyAggregates paginator = client.get_paginator('get_asset_property_aggregates') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.get_asset_property_aggregates()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetId='string', propertyId='string', propertyAlias='string', aggregateTypes=[ 'AVERAGE'|'COUNT'|'MAXIMUM'|'MINIMUM'|'SUM'|'STANDARD_DEVIATION', ], resolution='string', qualities=[ 'GOOD'|'BAD'|'UNCERTAIN', ], startDate=datetime(2015, 1, 1), endDate=datetime(2015, 1, 1), timeOrdering='ASCENDING'|'DESCENDING', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetId** (*string*) -- The ID of the asset, in UUID format. * **propertyId** (*string*) -- The ID of the asset property, in UUID format. * **propertyAlias** (*string*) -- The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **aggregateTypes** (*list*) -- **[REQUIRED]** The data aggregating function. * *(string) --* * **resolution** (*string*) -- **[REQUIRED]** The time interval over which to aggregate data. * **qualities** (*list*) -- The quality by which to filter asset data. * *(string) --* * **startDate** (*datetime*) -- **[REQUIRED]** The exclusive start of the range from which to query historical data, expressed in seconds in Unix epoch time. * **endDate** (*datetime*) -- **[REQUIRED]** The inclusive end of the range from which to query historical data, expressed in seconds in Unix epoch time. * **timeOrdering** (*string*) -- The chronological sorting order of the requested information. Default: "ASCENDING" * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'aggregatedValues': [ { 'timestamp': datetime(2015, 1, 1), 'quality': 'GOOD'|'BAD'|'UNCERTAIN', 'value': { 'average': 123.0, 'count': 123.0, 'maximum': 123.0, 'minimum': 123.0, 'sum': 123.0, 'standardDeviation': 123.0 } }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **aggregatedValues** *(list) --* The requested aggregated values. * *(dict) --* Contains aggregated asset property values (for example, average, minimum, and maximum). * **timestamp** *(datetime) --* The date the aggregating computations occurred, in Unix epoch time. * **quality** *(string) --* The quality of the aggregated data. * **value** *(dict) --* The value of the aggregates. * **average** *(float) --* The average (mean) value of the time series over a time interval window. * **count** *(float) --* The count of data points in the time series over a time interval window. * **maximum** *(float) --* The maximum value of the time series over a time interval window. * **minimum** *(float) --* The minimum value of the time series over a time interval window. * **sum** *(float) --* The sum of the time series over a time interval window. * **standardDeviation** *(float) --* The standard deviation of the time series over a time interval window. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListAssetRelationships ListAssetRelationships ********************** class IoTSiteWise.Paginator.ListAssetRelationships paginator = client.get_paginator('list_asset_relationships') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_asset_relationships()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetId='string', traversalType='PATH_TO_ROOT', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **traversalType** (*string*) -- **[REQUIRED]** The type of traversal to use to identify asset relationships. Choose the following option: * "PATH_TO_ROOT" – Identify the asset's parent assets up to the root asset. The asset that you specify in "assetId" is the first result in the list of "assetRelationshipSummaries", and the root asset is the last result. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'assetRelationshipSummaries': [ { 'hierarchyInfo': { 'parentAssetId': 'string', 'childAssetId': 'string' }, 'relationshipType': 'HIERARCHY' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **assetRelationshipSummaries** *(list) --* A list that summarizes each asset relationship. * *(dict) --* Contains information about assets that are related to one another. * **hierarchyInfo** *(dict) --* The assets that are related through an asset hierarchy. This object is present if the "relationshipType" is "HIERARCHY". * **parentAssetId** *(string) --* The ID of the parent asset in this asset relationship. * **childAssetId** *(string) --* The ID of the child asset in this asset relationship. * **relationshipType** *(string) --* The relationship type of the assets in this relationship. This value is one of the following: * "HIERARCHY" – The assets are related through an asset hierarchy. If you specify this relationship type, this asset relationship includes the "hierarchyInfo" object. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListPortals ListPortals *********** class IoTSiteWise.Paginator.ListPortals paginator = client.get_paginator('list_portals') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_portals()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max- items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'portalSummaries': [ { 'id': 'string', 'name': 'string', 'description': 'string', 'startUrl': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'roleArn': 'string', 'status': { 'state': 'CREATING'|'PENDING'|'UPDATING'|'DELETING'|'ACTIVE'|'FAILED', 'error': { 'code': 'INTERNAL_FAILURE'|'VALIDATION_ERROR'|'LIMIT_EXCEEDED', 'message': 'string' } }, 'portalType': 'SITEWISE_PORTAL_V1'|'SITEWISE_PORTAL_V2' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **portalSummaries** *(list) --* A list that summarizes each portal. * *(dict) --* Contains a portal summary. * **id** *(string) --* The ID of the portal. * **name** *(string) --* The name of the portal. * **description** *(string) --* The portal's description. * **startUrl** *(string) --* The URL for the IoT SiteWise Monitor portal. You can use this URL to access portals that use IAM Identity Center for authentication. For portals that use IAM for authentication, you must use the IoT SiteWise console to get a URL that you can use to access the portal. * **creationDate** *(datetime) --* The date the portal was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the portal was last updated, in Unix epoch time. * **roleArn** *(string) --* The ARN of the service role that allows the portal's users to access your IoT SiteWise resources on your behalf. For more information, see Using service roles for IoT SiteWise Monitor in the *IoT SiteWise User Guide*. * **status** *(dict) --* Contains information about the current status of a portal. * **state** *(string) --* The current state of the portal. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **portalType** *(string) --* Define the type of portal. The value for IoT SiteWise Monitor (Classic) is "SITEWISE_PORTAL_V1". The value for IoT SiteWise Monitor (AI-aware) is "SITEWISE_PORTAL_V2". * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Paginator / ListAssets ListAssets ********** class IoTSiteWise.Paginator.ListAssets paginator = client.get_paginator('list_assets') paginate(**kwargs) Creates an iterator that will paginate through responses from "IoTSiteWise.Client.list_assets()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( assetModelId='string', filter='ALL'|'TOP_LEVEL', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **assetModelId** (*string*) -- The ID of the asset model by which to filter the list of assets. This parameter is required if you choose "ALL" for "filter". This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **filter** (*string*) -- The filter for the requested list of assets. Choose one of the following options: * "ALL" – The list includes all assets for a given asset model ID. The "assetModelId" parameter is required if you filter by "ALL". * "TOP_LEVEL" – The list includes only top-level assets in the asset hierarchy tree. Default: "ALL" * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'assetSummaries': [ { 'id': 'string', 'externalId': 'string', 'arn': 'string', 'name': 'string', 'assetModelId': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'hierarchies': [ { 'id': 'string', 'externalId': 'string', 'name': 'string' }, ], 'description': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **assetSummaries** *(list) --* A list that summarizes each asset. * *(dict) --* Contains a summary of an asset. * **id** *(string) --* The ID of the asset, in UUID format. * **externalId** *(string) --* The external ID of the asset. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **arn** *(string) --* The ARN of the asset, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:a sset/${AssetId}" * **name** *(string) --* The name of the asset. * **assetModelId** *(string) --* The ID of the asset model used to create this asset. * **creationDate** *(datetime) --* The date the asset was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the asset was last updated, in Unix epoch time. * **status** *(dict) --* The current status of the asset. * **state** *(string) --* The current status of the asset. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **hierarchies** *(list) --* A list of asset hierarchies that each contain a "hierarchyId". A hierarchy specifies allowed parent/child asset relationships. * *(dict) --* Describes an asset hierarchy that contains a hierarchy's name and ID. * **id** *(string) --* The ID of the hierarchy. This ID is a "hierarchyId". * **externalId** *(string) --* The external ID of the hierarchy, if it has one. When you update an asset hierarchy, you may assign an external ID if it doesn't already have one. You can't change the external ID of an asset hierarchy that already has one. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The hierarchy name provided in the CreateAssetModel or UpdateAssetModel API operation. * **description** *(string) --* A description for the asset. * **NextToken** *(string) --* A token to resume pagination. IoTSiteWise / Client / update_asset update_asset ************ IoTSiteWise.Client.update_asset(**kwargs) Updates an asset's name. For more information, see Updating assets and models in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.update_asset( assetId='string', assetExternalId='string', assetName='string', clientToken='string', assetDescription='string' ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset to update. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **assetExternalId** (*string*) -- An external ID to assign to the asset. The asset must not already have an external ID. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **assetName** (*string*) -- **[REQUIRED]** A friendly name for the asset. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **assetDescription** (*string*) -- A description for the asset. Return type: dict Returns: **Response Syntax** { 'assetStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetStatus** *(dict) --* The status of the asset, which contains a state ( "UPDATING" after successfully calling this operation) and any error message. * **state** *(string) --* The current status of the asset. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / batch_disassociate_project_assets batch_disassociate_project_assets ********************************* IoTSiteWise.Client.batch_disassociate_project_assets(**kwargs) Disassociates a group (batch) of assets from an IoT SiteWise Monitor project. See also: AWS API Documentation **Request Syntax** response = client.batch_disassociate_project_assets( projectId='string', assetIds=[ 'string', ], clientToken='string' ) Parameters: * **projectId** (*string*) -- **[REQUIRED]** The ID of the project from which to disassociate the assets. * **assetIds** (*list*) -- **[REQUIRED]** The IDs of the assets to be disassociated from the project. * *(string) --* * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'errors': [ { 'assetId': 'string', 'code': 'INTERNAL_FAILURE', 'message': 'string' }, ] } **Response Structure** * *(dict) --* * **errors** *(list) --* A list of associated error information, if any. * *(dict) --* Contains error details for the requested associate project asset action. * **assetId** *(string) --* The ID of the asset, in UUID format. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_computation_models list_computation_models *********************** IoTSiteWise.Client.list_computation_models(**kwargs) Retrieves a paginated list of summaries of all computation models. See also: AWS API Documentation **Request Syntax** response = client.list_computation_models( computationModelType='ANOMALY_DETECTION', nextToken='string', maxResults=123 ) Parameters: * **computationModelType** (*string*) -- The type of computation model. If a "computationModelType" is not provided, all types of computation models are returned. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Return type: dict Returns: **Response Syntax** { 'computationModelSummaries': [ { 'id': 'string', 'arn': 'string', 'name': 'string', 'description': 'string', 'type': 'ANOMALY_DETECTION', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'version': 'string' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **computationModelSummaries** *(list) --* A list summarizing each computation model. * *(dict) --* Contains a summary of a computation model. * **id** *(string) --* The ID of the computation model. * **arn** *(string) --* The ARN of the computation model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account }:computation-model/${ComputationModelId}" * **name** *(string) --* The name of the computation model. * **description** *(string) --* The description of the computation model. * **type** *(string) --* The type of the computation model. * **creationDate** *(datetime) --* The model creation date, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The time the model was last updated, in Unix epoch time. * **status** *(dict) --* The current status of the computation model. * **state** *(string) --* The current state of the computation model. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **version** *(string) --* The version of the computation model. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / update_gateway_capability_configuration update_gateway_capability_configuration *************************************** IoTSiteWise.Client.update_gateway_capability_configuration(**kwargs) Updates a gateway capability configuration or defines a new capability configuration. Each gateway capability defines data sources for a gateway. Important workflow notes: Each gateway capability defines data sources for a gateway. This is the namespace of the gateway capability. . The namespace follows the format "service:capability:version", where: * "service" - The service providing the capability, or "iotsitewise". * "capability" - The specific capability type. Options include: "opcuacollector" for the OPC UA data source collector, or "publisher" for data publisher capability. * "version" - The version number of the capability. Option include "2" for Classic streams, V2 gateways, and "3" for MQTT-enabled, V3 gateways. After updating a capability configuration, the sync status becomes "OUT_OF_SYNC" until the gateway processes the configuration.Use "DescribeGatewayCapabilityConfiguration" to check the sync status and verify the configuration was applied. A gateway can have multiple capability configurations with different namespaces. See also: AWS API Documentation **Request Syntax** response = client.update_gateway_capability_configuration( gatewayId='string', capabilityNamespace='string', capabilityConfiguration='string' ) Parameters: * **gatewayId** (*string*) -- **[REQUIRED]** The ID of the gateway to be updated. * **capabilityNamespace** (*string*) -- **[REQUIRED]** The namespace of the gateway capability configuration to be updated. For example, if you configure OPC UA sources for an MQTT-enabled gateway, your OPC-UA capability configuration has the namespace "iotsitewise:opcuacollector:3". * **capabilityConfiguration** (*string*) -- **[REQUIRED]** The JSON document that defines the configuration for the gateway capability. For more information, see Configuring data sources (CLI) in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'capabilityNamespace': 'string', 'capabilitySyncStatus': 'IN_SYNC'|'OUT_OF_SYNC'|'SYNC_FAILED'|'UNKNOWN'|'NOT_APPLICABLE' } **Response Structure** * *(dict) --* * **capabilityNamespace** *(string) --* The namespace of the gateway capability. * **capabilitySyncStatus** *(string) --* The synchronization status of the gateway capability configuration. The sync status can be one of the following: * "IN_SYNC" - The gateway is running with the latest configuration. * "OUT_OF_SYNC" - The gateway hasn't received the latest configuration. * "SYNC_FAILED" - The gateway rejected the latest configuration. * "UNKNOWN" - The gateway hasn't reported its sync status. * "NOT_APPLICABLE" - The gateway doesn't support this capability. This is most common when integrating partner data sources, because the data integration is handled externally by the partner. After you update a capability configuration, its sync status is "OUT_OF_SYNC" until the gateway receives and applies or rejects the updated configuration. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" IoTSiteWise / Client / get_paginator get_paginator ************* IoTSiteWise.Client.get_paginator(operation_name) Create a paginator for an operation. Parameters: **operation_name** (*string*) -- The operation name. This is the same name as the method name on the client. For example, if the method name is "create_foo", and you'd normally invoke the operation as "client.create_foo(**kwargs)", if the "create_foo" operation can be paginated, you can use the call "client.get_paginator("create_foo")". Raises: **OperationNotPageableError** -- Raised if the operation is not pageable. You can use the "client.can_paginate" method to check if an operation is pageable. Return type: "botocore.paginate.Paginator" Returns: A paginator object. IoTSiteWise / Client / describe_default_encryption_configuration describe_default_encryption_configuration ***************************************** IoTSiteWise.Client.describe_default_encryption_configuration() Retrieves information about the default encryption configuration for the Amazon Web Services account in the default or specified Region. For more information, see Key management in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.describe_default_encryption_configuration() Return type: dict Returns: **Response Syntax** { 'encryptionType': 'SITEWISE_DEFAULT_ENCRYPTION'|'KMS_BASED_ENCRYPTION', 'kmsKeyArn': 'string', 'configurationStatus': { 'state': 'ACTIVE'|'UPDATE_IN_PROGRESS'|'UPDATE_FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string' } } } **Response Structure** * *(dict) --* * **encryptionType** *(string) --* The type of encryption used for the encryption configuration. * **kmsKeyArn** *(string) --* The key ARN of the customer managed key used for KMS encryption if you use "KMS_BASED_ENCRYPTION". * **configurationStatus** *(dict) --* The status of the account configuration. This contains the "ConfigurationState". If there's an error, it also contains the "ErrorDetails". * **state** *(string) --* The current state of the configuration. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / execute_query execute_query ************* IoTSiteWise.Client.execute_query(**kwargs) Run SQL queries to retrieve metadata and time-series data from asset models, assets, measurements, metrics, transforms, and aggregates. See also: AWS API Documentation **Request Syntax** response = client.execute_query( queryStatement='string', nextToken='string', maxResults=123, clientToken='string' ) Parameters: * **queryStatement** (*string*) -- **[REQUIRED]** The IoT SiteWise query statement. * **nextToken** (*string*) -- The string that specifies the next page of results. * **maxResults** (*integer*) -- The maximum number of results to return at one time. * Minimum is 1 * Maximum is 20000 * Default is 250 * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'columns': [ { 'name': 'string', 'type': { 'scalarType': 'BOOLEAN'|'INT'|'DOUBLE'|'TIMESTAMP'|'STRING' } }, ], 'rows': [ { 'data': [ { 'scalarValue': 'string', 'arrayValue': {'... recursive ...'}, 'rowValue': {'... recursive ...'}, 'nullValue': True|False }, ] }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **columns** *(list) --* Represents a single column in the query results. * *(dict) --* A description of the column in the query results. * **name** *(string) --* The name of the column description. * **type** *(dict) --* The type of the column description. * **scalarType** *(string) --* The allowed data types that the column has as it's value. * **rows** *(list) --* Represents a single row in the query results. * *(dict) --* Represents a single row in the query results. * **data** *(list) --* List of data points in a single row of the result set. * *(dict) --* Represents a single data point in a query result. * **scalarValue** *(string) --* Indicates if the data point is a scalar value such as integer, string, double, or Boolean. * **arrayValue** *(list) --* Indicates if the data point is an array. * **rowValue** *(dict) --* Indicates if the data point is a row. * **nullValue** *(boolean) --* Indicates if the data point is null. * **nextToken** *(string) --* The string that specifies the next page of results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.AccessDeniedException" * "IoTSiteWise.Client.exceptions.ValidationException" * "IoTSiteWise.Client.exceptions.QueryTimeoutException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ServiceUnavailableException" IoTSiteWise / Client / update_asset_model update_asset_model ****************** IoTSiteWise.Client.update_asset_model(**kwargs) Updates an asset model and all of the assets that were created from the model. Each asset created from the model inherits the updated asset model's property and hierarchy definitions. For more information, see Updating assets and models in the *IoT SiteWise User Guide*. Warning: If you remove a property from an asset model, IoT SiteWise deletes all previous data for that property. You can’t change the type or data type of an existing property.To replace an existing asset model property with a new one with the same "name", do the following: * Submit an "UpdateAssetModel" request with the entire existing property removed. * Submit a second "UpdateAssetModel" request that includes the new property. The new asset property will have the same "name" as the previous one and IoT SiteWise will generate a new unique "id". See also: AWS API Documentation **Request Syntax** response = client.update_asset_model( assetModelId='string', assetModelExternalId='string', assetModelName='string', assetModelDescription='string', assetModelProperties=[ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], assetModelHierarchies=[ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'childAssetModelId': 'string' }, ], assetModelCompositeModels=[ { 'name': 'string', 'description': 'string', 'type': 'string', 'properties': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'id': 'string', 'externalId': 'string' }, ], clientToken='string', ifMatch='string', ifNoneMatch='string', matchForVersionType='LATEST'|'ACTIVE' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model to update. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **assetModelExternalId** (*string*) -- An external ID to assign to the asset model. The asset model must not already have an external ID. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **assetModelName** (*string*) -- **[REQUIRED]** A unique name for the asset model. * **assetModelDescription** (*string*) -- A description for the asset model. * **assetModelProperties** (*list*) -- The updated property definitions of the asset model. For more information, see Asset properties in the *IoT SiteWise User Guide*. You can specify up to 200 properties per asset model. For more information, see Quotas in the *IoT SiteWise User Guide*. * *(dict) --* Contains information about an asset model property. * **id** *(string) --* The ID of the asset model property. * If you are callling UpdateAssetModel to create a *new* property: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * If you are calling UpdateAssetModel to modify an *existing* property: This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **externalId** *(string) --* The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* **[REQUIRED]** The name of the asset model property. * **dataType** *(string) --* **[REQUIRED]** The data type of the asset model property. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit of the asset model property, such as "Newtons" or "RPM". * **type** *(dict) --* **[REQUIRED]** The property type (see "PropertyType"). * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* **[REQUIRED]** The forwarding configuration for the given measurement property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* **[REQUIRED]** The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* **[REQUIRED]** The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* **[REQUIRED]** The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* **[REQUIRED]** The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given metric property. * **path** *(list) --* The structured path to the property from the root of the asset model. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **assetModelHierarchies** (*list*) -- The updated hierarchy definitions of the asset model. Each hierarchy specifies an asset model whose assets can be children of any other assets created from this asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. You can specify up to 10 hierarchies per asset model. For more information, see Quotas in the *IoT SiteWise User Guide*. * *(dict) --* Describes an asset hierarchy that contains a hierarchy's name, ID, and child asset model ID that specifies the type of asset that can be in this hierarchy. * **id** *(string) --* The ID of the asset model hierarchy. This ID is a "hierarchyId". * If you are callling UpdateAssetModel to create a *new* hierarchy: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * If you are calling UpdateAssetModel to modify an *existing* hierarchy: This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **externalId** *(string) --* The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* **[REQUIRED]** The name of the asset model hierarchy that you specify by using the CreateAssetModel or UpdateAssetModel API operation. * **childAssetModelId** *(string) --* **[REQUIRED]** The ID of the asset model, in UUID format. All assets in this hierarchy must be instances of the "childAssetModelId" asset model. IoT SiteWise will always return the actual asset model ID for this value. However, when you are specifying this value as part of a call to UpdateAssetModel, you may provide either the asset model ID or else "externalId:" followed by the asset model's external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **assetModelCompositeModels** (*list*) -- The composite models that are part of this asset model. It groups properties (such as attributes, measurements, transforms, and metrics) and child composite models that model parts of your industrial equipment. Each composite model has a type that defines the properties that the composite model supports. Use composite models to define alarms on this asset model. Note: When creating custom composite models, you need to use CreateAssetModelCompositeModel. For more information, see Creating custom composite models (Components) in the *IoT SiteWise User Guide*. * *(dict) --* Contains information about a composite model in an asset model. This object contains the asset property definitions that you define in the composite model. * **name** *(string) --* **[REQUIRED]** The name of the composite model. * **description** *(string) --* The description of the composite model. * **type** *(string) --* **[REQUIRED]** The type of the composite model. For alarm composite models, this type is "AWS/ALARM". * **properties** *(list) --* The asset property definitions for this composite model. * *(dict) --* Contains information about an asset model property. * **id** *(string) --* The ID of the asset model property. * If you are callling UpdateAssetModel to create a *new* property: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * If you are calling UpdateAssetModel to modify an *existing* property: This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **externalId** *(string) --* The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* **[REQUIRED]** The name of the asset model property. * **dataType** *(string) --* **[REQUIRED]** The data type of the asset model property. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit of the asset model property, such as "Newtons" or "RPM". * **type** *(dict) --* **[REQUIRED]** The property type (see "PropertyType"). * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* **[REQUIRED]** The forwarding configuration for the given measurement property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* **[REQUIRED]** The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* **[REQUIRED]** The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* **[REQUIRED]** The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* **[REQUIRED]** The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given metric property. * **path** *(list) --* The structured path to the property from the root of the asset model. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **id** *(string) --* The ID of the asset model composite model. * **externalId** *(string) --* The external ID of the asset model composite model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **ifMatch** (*string*) -- The expected current entity tag (ETag) for the asset model’s latest or active version (specified using "matchForVersionType"). The update request is rejected if the tag does not match the latest or active version's current entity tag. See Optimistic locking for asset model writes in the *IoT SiteWise User Guide*. * **ifNoneMatch** (*string*) -- Accepts ***** to reject the update request if an active version (specified using "matchForVersionType" as "ACTIVE") already exists for the asset model. * **matchForVersionType** (*string*) -- Specifies the asset model version type ( "LATEST" or "ACTIVE") used in conjunction with "If-Match" or "If-None-Match" headers to determine the target ETag for the update operation. Return type: dict Returns: **Response Syntax** { 'assetModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetModelStatus** *(dict) --* The status of the asset model, which contains a state ( "UPDATING" after successfully calling this operation) and any error message. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.PreconditionFailedException" IoTSiteWise / Client / describe_asset_model_interface_relationship describe_asset_model_interface_relationship ******************************************* IoTSiteWise.Client.describe_asset_model_interface_relationship(**kwargs) Retrieves information about an interface relationship between an asset model and an interface asset model. See also: AWS API Documentation **Request Syntax** response = client.describe_asset_model_interface_relationship( assetModelId='string', interfaceAssetModelId='string' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID. * **interfaceAssetModelId** (*string*) -- **[REQUIRED]** The ID of the interface asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID. Return type: dict Returns: **Response Syntax** { 'assetModelId': 'string', 'interfaceAssetModelId': 'string', 'propertyMappings': [ { 'assetModelPropertyId': 'string', 'interfaceAssetModelPropertyId': 'string' }, ], 'hierarchyMappings': [ { 'assetModelHierarchyId': 'string', 'interfaceAssetModelHierarchyId': 'string' }, ] } **Response Structure** * *(dict) --* * **assetModelId** *(string) --* The ID of the asset model. * **interfaceAssetModelId** *(string) --* The ID of the interface asset model. * **propertyMappings** *(list) --* A list of property mappings between the interface asset model and the asset model where the interface is applied. * *(dict) --* Maps a property from an interface asset model to a property in the asset model where the interface is applied. * **assetModelPropertyId** *(string) --* The ID of the property in the asset model where the interface is applied. * **interfaceAssetModelPropertyId** *(string) --* The ID of the property in the interface asset model. * **hierarchyMappings** *(list) --* A list of hierarchy mappings between the interface asset model and the asset model where the interface is applied. * *(dict) --* Maps a hierarchy from an interface asset model to a hierarchy in the asset model where the interface is applied. * **assetModelHierarchyId** *(string) --* The ID of the hierarchy in the asset model where the interface is applied. * **interfaceAssetModelHierarchyId** *(string) --* The ID of the hierarchy in the interface asset model. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_dashboards list_dashboards *************** IoTSiteWise.Client.list_dashboards(**kwargs) Retrieves a paginated list of dashboards for an IoT SiteWise Monitor project. See also: AWS API Documentation **Request Syntax** response = client.list_dashboards( projectId='string', nextToken='string', maxResults=123 ) Parameters: * **projectId** (*string*) -- **[REQUIRED]** The ID of the project. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 Return type: dict Returns: **Response Syntax** { 'dashboardSummaries': [ { 'id': 'string', 'name': 'string', 'description': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1) }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **dashboardSummaries** *(list) --* A list that summarizes each dashboard in the project. * *(dict) --* Contains a dashboard summary. * **id** *(string) --* The ID of the dashboard. * **name** *(string) --* The name of the dashboard * **description** *(string) --* The dashboard's description. * **creationDate** *(datetime) --* The date the dashboard was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the dashboard was last updated, in Unix epoch time. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_computation_model_resolve_to_resources list_computation_model_resolve_to_resources ******************************************* IoTSiteWise.Client.list_computation_model_resolve_to_resources(**kwargs) Lists all distinct resources that are resolved from the executed actions of the computation model. See also: AWS API Documentation **Request Syntax** response = client.list_computation_model_resolve_to_resources( computationModelId='string', nextToken='string', maxResults=123 ) Parameters: * **computationModelId** (*string*) -- **[REQUIRED]** The ID of the computation model for which to list resolved resources. * **nextToken** (*string*) -- The token used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results returned for each paginated request. Return type: dict Returns: **Response Syntax** { 'computationModelResolveToResourceSummaries': [ { 'resolveTo': { 'assetId': 'string' } }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **computationModelResolveToResourceSummaries** *(list) --* A list of summaries describing the distinct resources that this computation model resolves to when actions were executed. * *(dict) --* A summary of the resource that a computation model resolves to. * **resolveTo** *(dict) --* The detailed resource this execution summary resolves to. * **assetId** *(string) --* The ID of the asset that the resource resolves to. * **nextToken** *(string) --* The token for the next set of paginated results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / update_dashboard update_dashboard **************** IoTSiteWise.Client.update_dashboard(**kwargs) Updates an IoT SiteWise Monitor dashboard. See also: AWS API Documentation **Request Syntax** response = client.update_dashboard( dashboardId='string', dashboardName='string', dashboardDescription='string', dashboardDefinition='string', clientToken='string' ) Parameters: * **dashboardId** (*string*) -- **[REQUIRED]** The ID of the dashboard to update. * **dashboardName** (*string*) -- **[REQUIRED]** A new friendly name for the dashboard. * **dashboardDescription** (*string*) -- A new description for the dashboard. * **dashboardDefinition** (*string*) -- **[REQUIRED]** The new dashboard definition, as specified in a JSON literal. * IoT SiteWise Monitor (Classic) see Create dashboards (CLI) * IoT SiteWise Monitor (AI-aware) see Create dashboards (CLI) in the *IoT SiteWise User Guide* * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_asset_models list_asset_models ***************** IoTSiteWise.Client.list_asset_models(**kwargs) Retrieves a paginated list of summaries of all asset models. See also: AWS API Documentation **Request Syntax** response = client.list_asset_models( assetModelTypes=[ 'ASSET_MODEL'|'COMPONENT_MODEL'|'INTERFACE', ], nextToken='string', maxResults=123, assetModelVersion='string' ) Parameters: * **assetModelTypes** (*list*) -- The type of asset model. If you don't provide an "assetModelTypes", all types of asset models are returned. * **ASSET_MODEL** – An asset model that you can use to create assets. Can't be included as a component in another asset model. * **COMPONENT_MODEL** – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model. * **INTERFACE** – An interface is a type of model that defines a standard structure that can be applied to different asset models. * *(string) --* * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'assetModelSummaries': [ { 'id': 'string', 'externalId': 'string', 'arn': 'string', 'name': 'string', 'assetModelType': 'ASSET_MODEL'|'COMPONENT_MODEL'|'INTERFACE', 'description': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'version': 'string' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **assetModelSummaries** *(list) --* A list that summarizes each asset model. * *(dict) --* Contains a summary of an asset model. * **id** *(string) --* The ID of the asset model (used with IoT SiteWise API operations). * **externalId** *(string) --* The external ID of the asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **arn** *(string) --* The ARN of the asset model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account }:asset-model/${AssetModelId}" * **name** *(string) --* The name of the asset model. * **assetModelType** *(string) --* The type of asset model. * **ASSET_MODEL** – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model. * **COMPONENT_MODEL** – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model. * **description** *(string) --* The asset model description. * **creationDate** *(datetime) --* The date the asset model was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the asset model was last updated, in Unix epoch time. * **status** *(dict) --* The current status of the asset model. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **version** *(string) --* The version number of the asset model. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_asset_model_composite_model delete_asset_model_composite_model ********************************** IoTSiteWise.Client.delete_asset_model_composite_model(**kwargs) Deletes a composite model. This action can't be undone. You must delete all assets created from a composite model before you can delete the model. Also, you can't delete a composite model if a parent asset model exists that contains a property formula expression that depends on the asset model that you want to delete. For more information, see Deleting assets and models in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.delete_asset_model_composite_model( assetModelId='string', assetModelCompositeModelId='string', clientToken='string', ifMatch='string', ifNoneMatch='string', matchForVersionType='LATEST'|'ACTIVE' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model, in UUID format. * **assetModelCompositeModelId** (*string*) -- **[REQUIRED]** The ID of a composite model on this asset model. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **ifMatch** (*string*) -- The expected current entity tag (ETag) for the asset model’s latest or active version (specified using "matchForVersionType"). The delete request is rejected if the tag does not match the latest or active version's current entity tag. See Optimistic locking for asset model writes in the *IoT SiteWise User Guide*. * **ifNoneMatch** (*string*) -- Accepts ***** to reject the delete request if an active version (specified using "matchForVersionType" as "ACTIVE") already exists for the asset model. * **matchForVersionType** (*string*) -- Specifies the asset model version type ( "LATEST" or "ACTIVE") used in conjunction with "If-Match" or "If-None-Match" headers to determine the target ETag for the delete operation. Return type: dict Returns: **Response Syntax** { 'assetModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetModelStatus** *(dict) --* Contains current status information for an asset model. For more information, see Asset and model states in the *IoT SiteWise User Guide*. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.PreconditionFailedException" IoTSiteWise / Client / get_asset_property_aggregates get_asset_property_aggregates ***************************** IoTSiteWise.Client.get_asset_property_aggregates(**kwargs) Gets aggregated values for an asset property. For more information, see Querying aggregates in the *IoT SiteWise User Guide*. To identify an asset property, you must specify one of the following: * The "assetId" and "propertyId" of an asset property. * A "propertyAlias", which is a data stream alias (for example, "/company/windfarm/3/turbine/7/temperature"). To define an asset property's alias, see UpdateAssetProperty. See also: AWS API Documentation **Request Syntax** response = client.get_asset_property_aggregates( assetId='string', propertyId='string', propertyAlias='string', aggregateTypes=[ 'AVERAGE'|'COUNT'|'MAXIMUM'|'MINIMUM'|'SUM'|'STANDARD_DEVIATION', ], resolution='string', qualities=[ 'GOOD'|'BAD'|'UNCERTAIN', ], startDate=datetime(2015, 1, 1), endDate=datetime(2015, 1, 1), timeOrdering='ASCENDING'|'DESCENDING', nextToken='string', maxResults=123 ) Parameters: * **assetId** (*string*) -- The ID of the asset, in UUID format. * **propertyId** (*string*) -- The ID of the asset property, in UUID format. * **propertyAlias** (*string*) -- The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **aggregateTypes** (*list*) -- **[REQUIRED]** The data aggregating function. * *(string) --* * **resolution** (*string*) -- **[REQUIRED]** The time interval over which to aggregate data. * **qualities** (*list*) -- The quality by which to filter asset data. * *(string) --* * **startDate** (*datetime*) -- **[REQUIRED]** The exclusive start of the range from which to query historical data, expressed in seconds in Unix epoch time. * **endDate** (*datetime*) -- **[REQUIRED]** The inclusive end of the range from which to query historical data, expressed in seconds in Unix epoch time. * **timeOrdering** (*string*) -- The chronological sorting order of the requested information. Default: "ASCENDING" * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. A result set is returned in the two cases, whichever occurs first. * The size of the result set is equal to 1 MB. * The number of data points in the result set is equal to the value of "maxResults". The maximum value of "maxResults" is 2500. Return type: dict Returns: **Response Syntax** { 'aggregatedValues': [ { 'timestamp': datetime(2015, 1, 1), 'quality': 'GOOD'|'BAD'|'UNCERTAIN', 'value': { 'average': 123.0, 'count': 123.0, 'maximum': 123.0, 'minimum': 123.0, 'sum': 123.0, 'standardDeviation': 123.0 } }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **aggregatedValues** *(list) --* The requested aggregated values. * *(dict) --* Contains aggregated asset property values (for example, average, minimum, and maximum). * **timestamp** *(datetime) --* The date the aggregating computations occurred, in Unix epoch time. * **quality** *(string) --* The quality of the aggregated data. * **value** *(dict) --* The value of the aggregates. * **average** *(float) --* The average (mean) value of the time series over a time interval window. * **count** *(float) --* The count of data points in the time series over a time interval window. * **maximum** *(float) --* The maximum value of the time series over a time interval window. * **minimum** *(float) --* The minimum value of the time series over a time interval window. * **sum** *(float) --* The sum of the time series over a time interval window. * **standardDeviation** *(float) --* The standard deviation of the time series over a time interval window. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ServiceUnavailableException" IoTSiteWise / Client / update_computation_model update_computation_model ************************ IoTSiteWise.Client.update_computation_model(**kwargs) Updates the computation model. See also: AWS API Documentation **Request Syntax** response = client.update_computation_model( computationModelId='string', computationModelName='string', computationModelDescription='string', computationModelConfiguration={ 'anomalyDetection': { 'inputProperties': 'string', 'resultProperty': 'string' } }, computationModelDataBinding={ 'string': { 'assetModelProperty': { 'assetModelId': 'string', 'propertyId': 'string' }, 'assetProperty': { 'assetId': 'string', 'propertyId': 'string' }, 'list': [ {'... recursive ...'}, ] } }, clientToken='string' ) Parameters: * **computationModelId** (*string*) -- **[REQUIRED]** The ID of the computation model. * **computationModelName** (*string*) -- **[REQUIRED]** The name of the computation model. * **computationModelDescription** (*string*) -- The description of the computation model. * **computationModelConfiguration** (*dict*) -- **[REQUIRED]** The configuration for the computation model. * **anomalyDetection** *(dict) --* The configuration for the anomaly detection type of computation model. * **inputProperties** *(string) --* **[REQUIRED]** Define the variable name associated with input properties, with the following format "${VariableName}". * **resultProperty** *(string) --* **[REQUIRED]** Define the variable name associated with the result property, and the following format "${VariableName}". * **computationModelDataBinding** (*dict*) -- **[REQUIRED]** The data binding for the computation model. Key is a variable name defined in configuration. Value is a "ComputationModelDataBindingValue" referenced by the variable. * *(string) --* * *(dict) --* Contains computation model data binding value information, which can be one of "assetModelProperty", "list". * **assetModelProperty** *(dict) --* Specifies an asset model property data binding value. * **assetModelId** *(string) --* **[REQUIRED]** The ID of the asset model, in UUID format. * **propertyId** *(string) --* **[REQUIRED]** The ID of the asset model property used in data binding value. * **assetProperty** *(dict) --* The asset property value used for computation model data binding. * **assetId** *(string) --* **[REQUIRED]** The ID of the asset containing the property. This identifies the specific asset instance's property value used in the computation model. * **propertyId** *(string) --* **[REQUIRED]** The ID of the property within the asset. This identifies the specific property's value used in the computation model. * **list** *(list) --* Specifies a list of data binding value. * *(dict) --* Contains computation model data binding value information, which can be one of "assetModelProperty", "list". * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'computationModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **computationModelStatus** *(dict) --* The status of the computation model. It contains a state (UPDATING after successfully calling this operation) and an error message if any. * **state** *(string) --* The current state of the computation model. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / list_asset_model_composite_models list_asset_model_composite_models ********************************* IoTSiteWise.Client.list_asset_model_composite_models(**kwargs) Retrieves a paginated list of composite models associated with the asset model See also: AWS API Documentation **Request Syntax** response = client.list_asset_model_composite_models( assetModelId='string', nextToken='string', maxResults=123, assetModelVersion='string' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'assetModelCompositeModelSummaries': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'type': 'string', 'description': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **assetModelCompositeModelSummaries** *(list) --* A list that summarizes each composite model. * *(dict) --* Contains a summary of the composite model. * **id** *(string) --* The ID of the composite model that this summary describes.. * **externalId** *(string) --* The external ID of a composite model on this asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the composite model that this summary describes.. * **type** *(string) --* The composite model type. Valid values are "AWS/ALARM", "CUSTOM", or "AWS/L4E_ANOMALY". * **description** *(string) --* The description of the composite model that this summary describes.. * **path** *(list) --* The path that includes all the pieces that make up the composite model. * *(dict) --* Represents one level between a composite model and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" IoTSiteWise / Client / can_paginate can_paginate ************ IoTSiteWise.Client.can_paginate(operation_name) Check if an operation can be paginated. Parameters: **operation_name** (*string*) -- The operation name. This is the same name as the method name on the client. For example, if the method name is "create_foo", and you'd normally invoke the operation as "client.create_foo(**kwargs)", if the "create_foo" operation can be paginated, you can use the call "client.get_paginator("create_foo")". Returns: "True" if the operation can be paginated, "False" otherwise. IoTSiteWise / Client / create_dataset create_dataset ************** IoTSiteWise.Client.create_dataset(**kwargs) Creates a dataset to connect an external datasource. See also: AWS API Documentation **Request Syntax** response = client.create_dataset( datasetId='string', datasetName='string', datasetDescription='string', datasetSource={ 'sourceType': 'KENDRA', 'sourceFormat': 'KNOWLEDGE_BASE', 'sourceDetail': { 'kendra': { 'knowledgeBaseArn': 'string', 'roleArn': 'string' } } }, clientToken='string', tags={ 'string': 'string' } ) Parameters: * **datasetId** (*string*) -- The ID of the dataset. * **datasetName** (*string*) -- **[REQUIRED]** The name of the dataset. * **datasetDescription** (*string*) -- A description about the dataset, and its functionality. * **datasetSource** (*dict*) -- **[REQUIRED]** The data source for the dataset. * **sourceType** *(string) --* **[REQUIRED]** The type of data source for the dataset. * **sourceFormat** *(string) --* **[REQUIRED]** The format of the dataset source associated with the dataset. * **sourceDetail** *(dict) --* The details of the dataset source associated with the dataset. * **kendra** *(dict) --* Contains details about the Kendra dataset source. * **knowledgeBaseArn** *(string) --* **[REQUIRED]** The "knowledgeBaseArn" details for the Kendra dataset source. * **roleArn** *(string) --* **[REQUIRED]** The "roleARN" details for the Kendra dataset source. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **tags** (*dict*) -- A list of key-value pairs that contain metadata for the access policy. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'datasetId': 'string', 'datasetArn': 'string', 'datasetStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **datasetId** *(string) --* The ID of the dataset. * **datasetArn** *(string) --* The ARN of the dataset. The format is "arn:${Partition}:iot sitewise:${Region}:${Account}:dataset/${DatasetId}". * **datasetStatus** *(dict) --* The status of the dataset. This contains the state and any error messages. State is "CREATING" after a successfull call to this API, and any associated error message. The state is "ACTIVE" when ready to use. * **state** *(string) --* The current status of the dataset. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / batch_associate_project_assets batch_associate_project_assets ****************************** IoTSiteWise.Client.batch_associate_project_assets(**kwargs) Associates a group (batch) of assets with an IoT SiteWise Monitor project. See also: AWS API Documentation **Request Syntax** response = client.batch_associate_project_assets( projectId='string', assetIds=[ 'string', ], clientToken='string' ) Parameters: * **projectId** (*string*) -- **[REQUIRED]** The ID of the project to which to associate the assets. * **assetIds** (*list*) -- **[REQUIRED]** The IDs of the assets to be associated to the project. * *(string) --* * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'errors': [ { 'assetId': 'string', 'code': 'INTERNAL_FAILURE', 'message': 'string' }, ] } **Response Structure** * *(dict) --* * **errors** *(list) --* A list of associated error information, if any. * *(dict) --* Contains error details for the requested associate project asset action. * **assetId** *(string) --* The ID of the asset, in UUID format. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" IoTSiteWise / Client / list_time_series list_time_series **************** IoTSiteWise.Client.list_time_series(**kwargs) Retrieves a paginated list of time series (data streams). See also: AWS API Documentation **Request Syntax** response = client.list_time_series( nextToken='string', maxResults=123, assetId='string', aliasPrefix='string', timeSeriesType='ASSOCIATED'|'DISASSOCIATED' ) Parameters: * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. * **assetId** (*string*) -- The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **aliasPrefix** (*string*) -- The alias prefix of the time series. * **timeSeriesType** (*string*) -- The type of the time series. The time series type can be one of the following values: * "ASSOCIATED" – The time series is associated with an asset property. * "DISASSOCIATED" – The time series isn't associated with any asset property. Return type: dict Returns: **Response Syntax** { 'TimeSeriesSummaries': [ { 'assetId': 'string', 'propertyId': 'string', 'alias': 'string', 'timeSeriesId': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'timeSeriesCreationDate': datetime(2015, 1, 1), 'timeSeriesLastUpdateDate': datetime(2015, 1, 1), 'timeSeriesArn': 'string' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **TimeSeriesSummaries** *(list) --* One or more time series summaries to list. * *(dict) --* Contains a summary of a time series (data stream). * **assetId** *(string) --* The ID of the asset in which the asset property was created. * **propertyId** *(string) --* The ID of the asset property, in UUID format. * **alias** *(string) --* The alias that identifies the time series. * **timeSeriesId** *(string) --* The ID of the time series. * **dataType** *(string) --* The data type of the time series. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this time series. * **dataTypeSpec** *(string) --* The data type of the structure for this time series. This parameter is required for time series that have the "STRUCT" data type. The options for this parameter depend on the type of the composite model in which you created the asset property that is associated with your time series. Use "AWS/ALARM_STATE" for alarm state in alarm composite models. * **timeSeriesCreationDate** *(datetime) --* The date that the time series was created, in Unix epoch time. * **timeSeriesLastUpdateDate** *(datetime) --* The date that the time series was last updated, in Unix epoch time. * **timeSeriesArn** *(string) --* The ARN of the time series, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:time- series/${TimeSeriesId}" * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / disassociate_assets disassociate_assets ******************* IoTSiteWise.Client.disassociate_assets(**kwargs) Disassociates a child asset from the given parent asset through a hierarchy defined in the parent asset's model. See also: AWS API Documentation **Request Syntax** response = client.disassociate_assets( assetId='string', hierarchyId='string', childAssetId='string', clientToken='string' ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the parent asset from which to disassociate the child asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** (*string*) -- **[REQUIRED]** The ID of a hierarchy in the parent asset's model. (This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*.) Hierarchies allow different groupings of assets to be formed that all come from the same asset model. You can use the hierarchy ID to identify the correct asset to disassociate. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **childAssetId** (*string*) -- **[REQUIRED]** The ID of the child asset to disassociate. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Returns: None **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / list_actions list_actions ************ IoTSiteWise.Client.list_actions(**kwargs) Retrieves a paginated list of actions for a specific target resource. See also: AWS API Documentation **Request Syntax** response = client.list_actions( targetResourceType='ASSET'|'COMPUTATION_MODEL', targetResourceId='string', nextToken='string', maxResults=123, resolveToResourceType='ASSET', resolveToResourceId='string' ) Parameters: * **targetResourceType** (*string*) -- **[REQUIRED]** The type of resource. * **targetResourceId** (*string*) -- **[REQUIRED]** The ID of the target resource. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. * **resolveToResourceType** (*string*) -- The type of the resolved resource. * **resolveToResourceId** (*string*) -- The ID of the resolved resource. Return type: dict Returns: **Response Syntax** { 'actionSummaries': [ { 'actionId': 'string', 'actionDefinitionId': 'string', 'targetResource': { 'assetId': 'string', 'computationModelId': 'string' }, 'resolveTo': { 'assetId': 'string' } }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **actionSummaries** *(list) --* A list that summarizes the actions associated with the specified asset. * *(dict) --* Contains the summary of the actions, including information about where the action resolves to. * **actionId** *(string) --* The ID of the action. * **actionDefinitionId** *(string) --* The ID of the action definition. * **targetResource** *(dict) --* The resource the action will be taken on. * **assetId** *(string) --* The ID of the asset, in UUID format. * **computationModelId** *(string) --* The ID of the computation model. * **resolveTo** *(dict) --* The detailed resource this action resolves to. * **assetId** *(string) --* The ID of the asset that the resource resolves to. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / describe_action describe_action *************** IoTSiteWise.Client.describe_action(**kwargs) Retrieves information about an action. See also: AWS API Documentation **Request Syntax** response = client.describe_action( actionId='string' ) Parameters: **actionId** (*string*) -- **[REQUIRED]** The ID of the action. Return type: dict Returns: **Response Syntax** { 'actionId': 'string', 'targetResource': { 'assetId': 'string', 'computationModelId': 'string' }, 'actionDefinitionId': 'string', 'actionPayload': { 'stringValue': 'string' }, 'executionTime': datetime(2015, 1, 1), 'resolveTo': { 'assetId': 'string' } } **Response Structure** * *(dict) --* * **actionId** *(string) --* The ID of the action. * **targetResource** *(dict) --* The resource the action will be taken on. * **assetId** *(string) --* The ID of the asset, in UUID format. * **computationModelId** *(string) --* The ID of the computation model. * **actionDefinitionId** *(string) --* The ID of the action definition. * **actionPayload** *(dict) --* The JSON payload of the action. * **stringValue** *(string) --* The payload of the action in a JSON string. * **executionTime** *(datetime) --* The time the action was executed. * **resolveTo** *(dict) --* The detailed resource this action resolves to. * **assetId** *(string) --* The ID of the asset that the resource resolves to. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / describe_asset_composite_model describe_asset_composite_model ****************************** IoTSiteWise.Client.describe_asset_composite_model(**kwargs) Retrieves information about an asset composite model (also known as an asset component). An "AssetCompositeModel" is an instance of an "AssetModelCompositeModel". If you want to see information about the model this is based on, call DescribeAssetModelCompositeModel. See also: AWS API Documentation **Request Syntax** response = client.describe_asset_composite_model( assetId='string', assetCompositeModelId='string' ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **assetCompositeModelId** (*string*) -- **[REQUIRED]** The ID of a composite model on this asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'assetId': 'string', 'assetCompositeModelId': 'string', 'assetCompositeModelExternalId': 'string', 'assetCompositeModelPath': [ { 'id': 'string', 'name': 'string' }, ], 'assetCompositeModelName': 'string', 'assetCompositeModelDescription': 'string', 'assetCompositeModelType': 'string', 'assetCompositeModelProperties': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'alias': 'string', 'notification': { 'topic': 'string', 'state': 'ENABLED'|'DISABLED' }, 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'assetCompositeModelSummaries': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'type': 'string', 'description': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'actionDefinitions': [ { 'actionDefinitionId': 'string', 'actionName': 'string', 'actionType': 'string' }, ] } **Response Structure** * *(dict) --* * **assetId** *(string) --* The ID of the asset, in UUID format. This ID uniquely identifies the asset within IoT SiteWise and can be used with other IoT SiteWise APIs. * **assetCompositeModelId** *(string) --* The ID of a composite model on this asset. * **assetCompositeModelExternalId** *(string) --* An external ID to assign to the asset model. If the composite model is a component-based composite model, or one nested inside a component model, you can only set the external ID using "UpdateAssetModelCompositeModel" and specifying the derived ID of the model or property from the created model it's a part of. * **assetCompositeModelPath** *(list) --* The path to the composite model listing the parent composite models. * *(dict) --* Represents one level between a composite model and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **assetCompositeModelName** *(string) --* The unique, friendly name for the composite model. * **assetCompositeModelDescription** *(string) --* A description for the composite model. * **assetCompositeModelType** *(string) --* The composite model type. Valid values are "AWS/ALARM", "CUSTOM", or "AWS/L4E_ANOMALY". * **assetCompositeModelProperties** *(list) --* The property definitions of the composite model that was used to create the asset. * *(dict) --* Contains asset property information. * **id** *(string) --* The ID of the asset property. * **externalId** *(string) --* The external ID of the asset property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the property. * **alias** *(string) --* The alias that identifies the property, such as an OPC- UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **notification** *(dict) --* The asset property's notification topic and state. For more information, see UpdateAssetProperty. * **topic** *(string) --* The MQTT topic to which IoT SiteWise publishes property value update notifications. * **state** *(string) --* The current notification state. * **dataType** *(string) --* The data type of the asset property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit (such as "Newtons" or "RPM") of the asset property. * **path** *(list) --* The structured path to the property from the root of the asset. * *(dict) --* Represents one level between a property and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **assetCompositeModelSummaries** *(list) --* The list of composite model summaries. * *(dict) --* Contains a summary of the composite model for a specific asset. * **id** *(string) --* The ID of the composite model that this summary describes. * **externalId** *(string) --* An external ID to assign to the asset model. If the composite model is a derived composite model, or one nested inside a component model, you can only set the external ID using "UpdateAssetModelCompositeModel" and specifying the derived ID of the model or property from the created model it's a part of. * **name** *(string) --* The name of the composite model that this summary describes. * **type** *(string) --* The type of asset model. * **ASSET_MODEL** – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model. * **COMPONENT_MODEL** – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model. * **description** *(string) --* A description of the composite model that this summary describes. * **path** *(list) --* The path that includes all the components of the asset model for the asset. * *(dict) --* Represents one level between a composite model and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **actionDefinitions** *(list) --* The available actions for a composite model on this asset. * *(dict) --* Contains a definition for an action. * **actionDefinitionId** *(string) --* The ID of the action definition. * **actionName** *(string) --* The name of the action definition. * **actionType** *(string) --* The type of the action definition. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_dataset delete_dataset ************** IoTSiteWise.Client.delete_dataset(**kwargs) Deletes a dataset. This cannot be undone. See also: AWS API Documentation **Request Syntax** response = client.delete_dataset( datasetId='string', clientToken='string' ) Parameters: * **datasetId** (*string*) -- **[REQUIRED]** The ID of the dataset. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'datasetStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **datasetStatus** *(dict) --* The status of the dataset. This contains the state and any error messages. State is "DELETING" after a successfull call to this API, and any associated error message. * **state** *(string) --* The current status of the dataset. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / describe_access_policy describe_access_policy ********************** IoTSiteWise.Client.describe_access_policy(**kwargs) Describes an access policy, which specifies an identity's access to an IoT SiteWise Monitor portal or project. See also: AWS API Documentation **Request Syntax** response = client.describe_access_policy( accessPolicyId='string' ) Parameters: **accessPolicyId** (*string*) -- **[REQUIRED]** The ID of the access policy. Return type: dict Returns: **Response Syntax** { 'accessPolicyId': 'string', 'accessPolicyArn': 'string', 'accessPolicyIdentity': { 'user': { 'id': 'string' }, 'group': { 'id': 'string' }, 'iamUser': { 'arn': 'string' }, 'iamRole': { 'arn': 'string' } }, 'accessPolicyResource': { 'portal': { 'id': 'string' }, 'project': { 'id': 'string' } }, 'accessPolicyPermission': 'ADMINISTRATOR'|'VIEWER', 'accessPolicyCreationDate': datetime(2015, 1, 1), 'accessPolicyLastUpdateDate': datetime(2015, 1, 1) } **Response Structure** * *(dict) --* * **accessPolicyId** *(string) --* The ID of the access policy. * **accessPolicyArn** *(string) --* The ARN of the access policy, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:access- policy/${AccessPolicyId}" * **accessPolicyIdentity** *(dict) --* The identity (IAM Identity Center user, IAM Identity Center group, or IAM user) to which this access policy applies. * **user** *(dict) --* An IAM Identity Center user identity. * **id** *(string) --* The IAM Identity Center ID of the user. * **group** *(dict) --* An IAM Identity Center group identity. * **id** *(string) --* The IAM Identity Center ID of the group. * **iamUser** *(dict) --* An IAM user identity. * **arn** *(string) --* The ARN of the IAM user. For more information, see IAM ARNs in the *IAM User Guide*. Note: If you delete the IAM user, access policies that contain this identity include an empty "arn". You can delete the access policy for the IAM user that no longer exists. * **iamRole** *(dict) --* An IAM role identity. * **arn** *(string) --* The ARN of the IAM role. For more information, see IAM ARNs in the *IAM User Guide*. * **accessPolicyResource** *(dict) --* The IoT SiteWise Monitor resource (portal or project) to which this access policy provides access. * **portal** *(dict) --* A portal resource. * **id** *(string) --* The ID of the portal. * **project** *(dict) --* A project resource. * **id** *(string) --* The ID of the project. * **accessPolicyPermission** *(string) --* The access policy permission. Note that a project "ADMINISTRATOR" is also known as a project owner. * **accessPolicyCreationDate** *(datetime) --* The date the access policy was created, in Unix epoch time. * **accessPolicyLastUpdateDate** *(datetime) --* The date the access policy was last updated, in Unix epoch time. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / describe_execution describe_execution ****************** IoTSiteWise.Client.describe_execution(**kwargs) Retrieves information about the execution. See also: AWS API Documentation **Request Syntax** response = client.describe_execution( executionId='string' ) Parameters: **executionId** (*string*) -- **[REQUIRED]** The ID of the execution. Return type: dict Returns: **Response Syntax** { 'executionId': 'string', 'actionType': 'string', 'targetResource': { 'assetId': 'string', 'computationModelId': 'string' }, 'targetResourceVersion': 'string', 'resolveTo': { 'assetId': 'string' }, 'executionStartTime': datetime(2015, 1, 1), 'executionEndTime': datetime(2015, 1, 1), 'executionStatus': { 'state': 'RUNNING'|'COMPLETED'|'FAILED' }, 'executionResult': { 'string': 'string' }, 'executionDetails': { 'string': 'string' }, 'executionEntityVersion': 'string' } **Response Structure** * *(dict) --* * **executionId** *(string) --* The ID of the execution. * **actionType** *(string) --* The type of action exectued. * **targetResource** *(dict) --* The resource the action will be taken on. This can include asset-based resources and computation model resources. * **assetId** *(string) --* The ID of the asset, in UUID format. * **computationModelId** *(string) --* The ID of the computation model. * **targetResourceVersion** *(string) --* The version of the target resource. * **resolveTo** *(dict) --* The detailed resource this execution resolves to. * **assetId** *(string) --* The ID of the asset that the resource resolves to. * **executionStartTime** *(datetime) --* The time the process started. * **executionEndTime** *(datetime) --* The time the process ended. * **executionStatus** *(dict) --* The status of the execution process. * **state** *(string) --* The current state of the computation model. * **executionResult** *(dict) --* The result of the execution. * *(string) --* * *(string) --* * **executionDetails** *(dict) --* Provides detailed information about the execution of your anomaly detection models. This includes model metrics and training timestamps for both training and inference actions. * The training action (Amazon Web Services/ANOMALY_DETECTION_TRAINING), includes performance metrics that help you compare different versions of your anomaly detection models. These metrics provide insights into the model's performance during the training process. * The inference action (Amazon Web Services/ANOMALY_DETECTION_INFERENCE), includes information about the results of executing your anomaly detection models. This helps you understand the output of your models and assess their performance. * *(string) --* * *(string) --* * **executionEntityVersion** *(string) --* Entity version used for the execution. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / create_asset_model_composite_model create_asset_model_composite_model ********************************** IoTSiteWise.Client.create_asset_model_composite_model(**kwargs) Creates a custom composite model from specified property and hierarchy definitions. There are two types of custom composite models, "inline" and "component-model-based". Use component-model-based custom composite models to define standard, reusable components. A component-model-based custom composite model consists of a name, a description, and the ID of the component model it references. A component-model-based custom composite model has no properties of its own; its referenced component model provides its associated properties to any created assets. For more information, see Custom composite models (Components) in the *IoT SiteWise User Guide*. Use inline custom composite models to organize the properties of an asset model. The properties of inline custom composite models are local to the asset model where they are included and can't be used to create multiple assets. To create a component-model-based model, specify the "composedAssetModelId" of an existing asset model with "assetModelType" of "COMPONENT_MODEL". To create an inline model, specify the "assetModelCompositeModelProperties" and don't include an "composedAssetModelId". See also: AWS API Documentation **Request Syntax** response = client.create_asset_model_composite_model( assetModelId='string', assetModelCompositeModelExternalId='string', parentAssetModelCompositeModelId='string', assetModelCompositeModelId='string', assetModelCompositeModelDescription='string', assetModelCompositeModelName='string', assetModelCompositeModelType='string', clientToken='string', composedAssetModelId='string', assetModelCompositeModelProperties=[ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } } }, ], ifMatch='string', ifNoneMatch='string', matchForVersionType='LATEST'|'ACTIVE' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model this composite model is a part of. * **assetModelCompositeModelExternalId** (*string*) -- An external ID to assign to the composite model. If the composite model is a derived composite model, or one nested inside a component model, you can only set the external ID using "UpdateAssetModelCompositeModel" and specifying the derived ID of the model or property from the created model it's a part of. * **parentAssetModelCompositeModelId** (*string*) -- The ID of the parent composite model in this asset model relationship. * **assetModelCompositeModelId** (*string*) -- The ID of the composite model. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * **assetModelCompositeModelDescription** (*string*) -- A description for the composite model. * **assetModelCompositeModelName** (*string*) -- **[REQUIRED]** A unique name for the composite model. * **assetModelCompositeModelType** (*string*) -- **[REQUIRED]** The composite model type. Valid values are "AWS/ALARM", "CUSTOM", or "AWS/L4E_ANOMALY". * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **composedAssetModelId** (*string*) -- The ID of a component model which is reused to create this composite model. * **assetModelCompositeModelProperties** (*list*) -- The property definitions of the composite model. For more information, see Inline custom composite models in the *IoT SiteWise User Guide*. You can specify up to 200 properties per composite model. For more information, see Quotas in the *IoT SiteWise User Guide*. * *(dict) --* Contains an asset model property definition. This property definition is applied to all assets created from the asset model. * **id** *(string) --* The ID to assign to the asset model property, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * **externalId** *(string) --* An external ID to assign to the property definition. The external ID must be unique among property definitions within this asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* **[REQUIRED]** The name of the property definition. * **dataType** *(string) --* **[REQUIRED]** The data type of the property definition. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter is required on properties that have the "STRUCT" data type. The options for this parameter depend on the type of the composite model in which you define this property. Use "AWS/ALARM_STATE" for alarm state in alarm composite models. * **unit** *(string) --* The unit of the property definition, such as "Newtons" or "RPM". * **type** *(dict) --* **[REQUIRED]** The property definition type (see "PropertyType"). You can only specify one type in a property definition. * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* **[REQUIRED]** The forwarding configuration for the given measurement property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* **[REQUIRED]** The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* **[REQUIRED]** The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* **[REQUIRED]** The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* **[REQUIRED]** The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given metric property. * **ifMatch** (*string*) -- The expected current entity tag (ETag) for the asset model’s latest or active version (specified using "matchForVersionType"). The create request is rejected if the tag does not match the latest or active version's current entity tag. See Optimistic locking for asset model writes in the *IoT SiteWise User Guide*. * **ifNoneMatch** (*string*) -- Accepts ***** to reject the create request if an active version (specified using "matchForVersionType" as "ACTIVE") already exists for the asset model. * **matchForVersionType** (*string*) -- Specifies the asset model version type ( "LATEST" or "ACTIVE") used in conjunction with "If-Match" or "If-None-Match" headers to determine the target ETag for the create operation. Return type: dict Returns: **Response Syntax** { 'assetModelCompositeModelId': 'string', 'assetModelCompositeModelPath': [ { 'id': 'string', 'name': 'string' }, ], 'assetModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetModelCompositeModelId** *(string) --* The ID of the composed asset model. You can use this ID when you call other IoT SiteWise APIs. * **assetModelCompositeModelPath** *(list) --* The path to the composite model listing the parent composite models. * *(dict) --* Represents one level between a composite model and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **assetModelStatus** *(dict) --* Contains current status information for an asset model. For more information, see Asset and model states in the *IoT SiteWise User Guide*. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.PreconditionFailedException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" IoTSiteWise / Client / describe_gateway describe_gateway **************** IoTSiteWise.Client.describe_gateway(**kwargs) Retrieves information about a gateway. See also: AWS API Documentation **Request Syntax** response = client.describe_gateway( gatewayId='string' ) Parameters: **gatewayId** (*string*) -- **[REQUIRED]** The ID of the gateway device. Return type: dict Returns: **Response Syntax** { 'gatewayId': 'string', 'gatewayName': 'string', 'gatewayArn': 'string', 'gatewayPlatform': { 'greengrass': { 'groupArn': 'string' }, 'greengrassV2': { 'coreDeviceThingName': 'string', 'coreDeviceOperatingSystem': 'LINUX_AARCH64'|'LINUX_AMD64'|'WINDOWS_AMD64' }, 'siemensIE': { 'iotCoreThingName': 'string' } }, 'gatewayVersion': 'string', 'gatewayCapabilitySummaries': [ { 'capabilityNamespace': 'string', 'capabilitySyncStatus': 'IN_SYNC'|'OUT_OF_SYNC'|'SYNC_FAILED'|'UNKNOWN'|'NOT_APPLICABLE' }, ], 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1) } **Response Structure** * *(dict) --* * **gatewayId** *(string) --* The ID of the gateway device. * **gatewayName** *(string) --* The name of the gateway. * **gatewayArn** *(string) --* The ARN of the gateway, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:gateway/ ${GatewayId}" * **gatewayPlatform** *(dict) --* The gateway's platform. * **greengrass** *(dict) --* A gateway that runs on IoT Greengrass. * **groupArn** *(string) --* The ARN of the Greengrass group. For more information about how to find a group's ARN, see ListGroups and GetGroup in the *IoT Greengrass V1 API Reference*. * **greengrassV2** *(dict) --* A gateway that runs on IoT Greengrass V2. * **coreDeviceThingName** *(string) --* The name of the IoT thing for your IoT Greengrass V2 core device. * **coreDeviceOperatingSystem** *(string) --* The operating system of the core device in IoT Greengrass V2. Specifying the operating system is required for MQTT-enabled, V3 gateways ( "gatewayVersion" "3") and not applicable for Classic stream, V2 gateways ( "gatewayVersion" "2"). * **siemensIE** *(dict) --* A SiteWise Edge gateway that runs on a Siemens Industrial Edge Device. * **iotCoreThingName** *(string) --* The name of the IoT Thing for your SiteWise Edge gateway. * **gatewayVersion** *(string) --* The version of the gateway. A value of "3" indicates an MQTT-enabled, V3 gateway, while "2" indicates a Classic streams, V2 gateway. * **gatewayCapabilitySummaries** *(list) --* A list of gateway capability summaries that each contain a namespace and status. Each gateway capability defines data sources for the gateway. To retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration. * *(dict) --* Contains a summary of a gateway capability configuration. * **capabilityNamespace** *(string) --* The namespace of the capability configuration. For example, if you configure OPC UA sources for an MQTT- enabled gateway, your OPC-UA capability configuration has the namespace "iotsitewise:opcuacollector:3". * **capabilitySyncStatus** *(string) --* The synchronization status of the gateway capability configuration. The sync status can be one of the following: * "IN_SYNC" - The gateway is running with the latest configuration. * "OUT_OF_SYNC" - The gateway hasn't received the latest configuration. * "SYNC_FAILED" - The gateway rejected the latest configuration. * "UNKNOWN" - The gateway hasn't reported its sync status. * "NOT_APPLICABLE" - The gateway doesn't support this capability. This is most common when integrating partner data sources, because the data integration is handled externally by the partner. * **creationDate** *(datetime) --* The date the gateway was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the gateway was last updated, in Unix epoch time. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_project_assets list_project_assets ******************* IoTSiteWise.Client.list_project_assets(**kwargs) Retrieves a paginated list of assets associated with an IoT SiteWise Monitor project. See also: AWS API Documentation **Request Syntax** response = client.list_project_assets( projectId='string', nextToken='string', maxResults=123 ) Parameters: * **projectId** (*string*) -- **[REQUIRED]** The ID of the project. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 Return type: dict Returns: **Response Syntax** { 'assetIds': [ 'string', ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **assetIds** *(list) --* A list that contains the IDs of each asset associated with the project. * *(string) --* * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / associate_assets associate_assets **************** IoTSiteWise.Client.associate_assets(**kwargs) Associates a child asset with the given parent asset through a hierarchy defined in the parent asset's model. For more information, see Associating assets in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.associate_assets( assetId='string', hierarchyId='string', childAssetId='string', clientToken='string' ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the parent asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** (*string*) -- **[REQUIRED]** The ID of a hierarchy in the parent asset's model. (This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*.) Hierarchies allow different groupings of assets to be formed that all come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **childAssetId** (*string*) -- **[REQUIRED]** The ID of the child asset to be associated. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Returns: None **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / describe_logging_options describe_logging_options ************************ IoTSiteWise.Client.describe_logging_options() Retrieves the current IoT SiteWise logging options. See also: AWS API Documentation **Request Syntax** response = client.describe_logging_options() Return type: dict Returns: **Response Syntax** { 'loggingOptions': { 'level': 'ERROR'|'INFO'|'OFF' } } **Response Structure** * *(dict) --* * **loggingOptions** *(dict) --* The current logging options. * **level** *(string) --* The IoT SiteWise logging verbosity level. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" IoTSiteWise / Client / describe_time_series describe_time_series ******************** IoTSiteWise.Client.describe_time_series(**kwargs) Retrieves information about a time series (data stream). To identify a time series, do one of the following: * If the time series isn't associated with an asset property, specify the "alias" of the time series. * If the time series is associated with an asset property, specify one of the following: * The "alias" of the time series. * The "assetId" and "propertyId" that identifies the asset property. See also: AWS API Documentation **Request Syntax** response = client.describe_time_series( alias='string', assetId='string', propertyId='string' ) Parameters: * **alias** (*string*) -- The alias that identifies the time series. * **assetId** (*string*) -- The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **propertyId** (*string*) -- The ID of the asset property. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'assetId': 'string', 'propertyId': 'string', 'alias': 'string', 'timeSeriesId': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'timeSeriesCreationDate': datetime(2015, 1, 1), 'timeSeriesLastUpdateDate': datetime(2015, 1, 1), 'timeSeriesArn': 'string' } **Response Structure** * *(dict) --* * **assetId** *(string) --* The ID of the asset in which the asset property was created. * **propertyId** *(string) --* The ID of the asset property, in UUID format. * **alias** *(string) --* The alias that identifies the time series. * **timeSeriesId** *(string) --* The ID of the time series. * **dataType** *(string) --* The data type of the time series. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this time series. * **dataTypeSpec** *(string) --* The data type of the structure for this time series. This parameter is required for time series that have the "STRUCT" data type. The options for this parameter depend on the type of the composite model in which you created the asset property that is associated with your time series. Use "AWS/ALARM_STATE" for alarm state in alarm composite models. * **timeSeriesCreationDate** *(datetime) --* The date that the time series was created, in Unix epoch time. * **timeSeriesLastUpdateDate** *(datetime) --* The date that the time series was last updated, in Unix epoch time. * **timeSeriesArn** *(string) --* The ARN of the time series, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:time- series/${TimeSeriesId}" **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / get_asset_property_value get_asset_property_value ************************ IoTSiteWise.Client.get_asset_property_value(**kwargs) Gets an asset property's current value. For more information, see Querying current values in the *IoT SiteWise User Guide*. To identify an asset property, you must specify one of the following: * The "assetId" and "propertyId" of an asset property. * A "propertyAlias", which is a data stream alias (for example, "/company/windfarm/3/turbine/7/temperature"). To define an asset property's alias, see UpdateAssetProperty. See also: AWS API Documentation **Request Syntax** response = client.get_asset_property_value( assetId='string', propertyId='string', propertyAlias='string' ) Parameters: * **assetId** (*string*) -- The ID of the asset, in UUID format. * **propertyId** (*string*) -- The ID of the asset property, in UUID format. * **propertyAlias** (*string*) -- The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'propertyValue': { 'value': { 'stringValue': 'string', 'integerValue': 123, 'doubleValue': 123.0, 'booleanValue': True|False, 'nullValue': { 'valueType': 'D'|'B'|'S'|'I'|'U' } }, 'timestamp': { 'timeInSeconds': 123, 'offsetInNanos': 123 }, 'quality': 'GOOD'|'BAD'|'UNCERTAIN' } } **Response Structure** * *(dict) --* * **propertyValue** *(dict) --* The current asset property value. * **value** *(dict) --* The value of the asset property (see "Variant"). * **stringValue** *(string) --* Asset property data of type string (sequence of characters). The allowed pattern: "^$|[^u0000-u001Fu007F]+". The max length is 1024. * **integerValue** *(integer) --* Asset property data of type integer (whole number). * **doubleValue** *(float) --* Asset property data of type double (floating point number). The min value is -10^10. The max value is 10^10. Double.NaN is allowed. * **booleanValue** *(boolean) --* Asset property data of type Boolean (true or false). * **nullValue** *(dict) --* The type of null asset property data with BAD and UNCERTAIN qualities. * **valueType** *(string) --* The type of null asset property data. * **timestamp** *(dict) --* The timestamp of the asset property value. * **timeInSeconds** *(integer) --* The timestamp date, in seconds, in the Unix epoch format. Fractional nanosecond data is provided by "offsetInNanos". * **offsetInNanos** *(integer) --* The nanosecond offset from "timeInSeconds". * **quality** *(string) --* The quality of the asset property value. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ServiceUnavailableException" IoTSiteWise / Client / batch_get_asset_property_value batch_get_asset_property_value ****************************** IoTSiteWise.Client.batch_get_asset_property_value(**kwargs) Gets the current value for one or more asset properties. For more information, see Querying current values in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.batch_get_asset_property_value( entries=[ { 'entryId': 'string', 'assetId': 'string', 'propertyId': 'string', 'propertyAlias': 'string' }, ], nextToken='string' ) Parameters: * **entries** (*list*) -- **[REQUIRED]** The list of asset property value entries for the batch get request. You can specify up to 128 entries per request. * *(dict) --* Contains information for an asset property value entry that is associated with the BatchGetAssetPropertyValue API. To identify an asset property, you must specify one of the following: * The "assetId" and "propertyId" of an asset property. * A "propertyAlias", which is a data stream alias (for example, "/company/windfarm/3/turbine/7/temperature"). To define an asset property's alias, see UpdateAssetProperty. * **entryId** *(string) --* **[REQUIRED]** The ID of the entry. * **assetId** *(string) --* The ID of the asset in which the asset property was created. * **propertyId** *(string) --* The ID of the asset property, in UUID format. * **propertyAlias** *(string) --* The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. Return type: dict Returns: **Response Syntax** { 'errorEntries': [ { 'errorCode': 'ResourceNotFoundException'|'InvalidRequestException'|'AccessDeniedException', 'errorMessage': 'string', 'entryId': 'string' }, ], 'successEntries': [ { 'entryId': 'string', 'assetPropertyValue': { 'value': { 'stringValue': 'string', 'integerValue': 123, 'doubleValue': 123.0, 'booleanValue': True|False, 'nullValue': { 'valueType': 'D'|'B'|'S'|'I'|'U' } }, 'timestamp': { 'timeInSeconds': 123, 'offsetInNanos': 123 }, 'quality': 'GOOD'|'BAD'|'UNCERTAIN' } }, ], 'skippedEntries': [ { 'entryId': 'string', 'completionStatus': 'SUCCESS'|'ERROR', 'errorInfo': { 'errorCode': 'ResourceNotFoundException'|'InvalidRequestException'|'AccessDeniedException', 'errorTimestamp': datetime(2015, 1, 1) } }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **errorEntries** *(list) --* A list of the errors (if any) associated with the batch request. Each error entry contains the "entryId" of the entry that failed. * *(dict) --* Contains error information for an asset property value entry that is associated with the BatchGetAssetPropertyValue API. * **errorCode** *(string) --* The error code. * **errorMessage** *(string) --* The associated error message. * **entryId** *(string) --* The ID of the entry. * **successEntries** *(list) --* A list of entries that were processed successfully by this batch request. Each success entry contains the "entryId" of the entry that succeeded and the latest query result. * *(dict) --* Contains success information for an entry that is associated with the BatchGetAssetPropertyValue API. * **entryId** *(string) --* The ID of the entry. * **assetPropertyValue** *(dict) --* Contains asset property value information. * **value** *(dict) --* The value of the asset property (see "Variant"). * **stringValue** *(string) --* Asset property data of type string (sequence of characters). The allowed pattern: "^$|[^u0000-u001Fu007F]+". The max length is 1024. * **integerValue** *(integer) --* Asset property data of type integer (whole number). * **doubleValue** *(float) --* Asset property data of type double (floating point number). The min value is -10^10. The max value is 10^10. Double.NaN is allowed. * **booleanValue** *(boolean) --* Asset property data of type Boolean (true or false). * **nullValue** *(dict) --* The type of null asset property data with BAD and UNCERTAIN qualities. * **valueType** *(string) --* The type of null asset property data. * **timestamp** *(dict) --* The timestamp of the asset property value. * **timeInSeconds** *(integer) --* The timestamp date, in seconds, in the Unix epoch format. Fractional nanosecond data is provided by "offsetInNanos". * **offsetInNanos** *(integer) --* The nanosecond offset from "timeInSeconds". * **quality** *(string) --* The quality of the asset property value. * **skippedEntries** *(list) --* A list of entries that were not processed by this batch request. because these entries had been completely processed by previous paginated requests. Each skipped entry contains the "entryId" of the entry that skipped. * *(dict) --* Contains information for an entry that has been processed by the previous BatchGetAssetPropertyValue request. * **entryId** *(string) --* The ID of the entry. * **completionStatus** *(string) --* The completion status of each entry that is associated with the BatchGetAssetPropertyValue request. * **errorInfo** *(dict) --* The error information, such as the error code and the timestamp. * **errorCode** *(string) --* The error code. * **errorTimestamp** *(datetime) --* The date the error occurred, in Unix epoch time. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ServiceUnavailableException" IoTSiteWise / Client / batch_get_asset_property_aggregates batch_get_asset_property_aggregates *********************************** IoTSiteWise.Client.batch_get_asset_property_aggregates(**kwargs) Gets aggregated values (for example, average, minimum, and maximum) for one or more asset properties. For more information, see Querying aggregates in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.batch_get_asset_property_aggregates( entries=[ { 'entryId': 'string', 'assetId': 'string', 'propertyId': 'string', 'propertyAlias': 'string', 'aggregateTypes': [ 'AVERAGE'|'COUNT'|'MAXIMUM'|'MINIMUM'|'SUM'|'STANDARD_DEVIATION', ], 'resolution': 'string', 'startDate': datetime(2015, 1, 1), 'endDate': datetime(2015, 1, 1), 'qualities': [ 'GOOD'|'BAD'|'UNCERTAIN', ], 'timeOrdering': 'ASCENDING'|'DESCENDING' }, ], nextToken='string', maxResults=123 ) Parameters: * **entries** (*list*) -- **[REQUIRED]** The list of asset property aggregate entries for the batch get request. You can specify up to 16 entries per request. * *(dict) --* Contains information for an asset property aggregate entry that is associated with the BatchGetAssetPropertyAggregates API. To identify an asset property, you must specify one of the following: * The "assetId" and "propertyId" of an asset property. * A "propertyAlias", which is a data stream alias (for example, "/company/windfarm/3/turbine/7/temperature"). To define an asset property's alias, see UpdateAssetProperty. * **entryId** *(string) --* **[REQUIRED]** The ID of the entry. * **assetId** *(string) --* The ID of the asset in which the asset property was created. * **propertyId** *(string) --* The ID of the asset property, in UUID format. * **propertyAlias** *(string) --* The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **aggregateTypes** *(list) --* **[REQUIRED]** The data aggregating function. * *(string) --* * **resolution** *(string) --* **[REQUIRED]** The time interval over which to aggregate data. * **startDate** *(datetime) --* **[REQUIRED]** The exclusive start of the range from which to query historical data, expressed in seconds in Unix epoch time. * **endDate** *(datetime) --* **[REQUIRED]** The inclusive end of the range from which to query historical data, expressed in seconds in Unix epoch time. * **qualities** *(list) --* The quality by which to filter asset data. * *(string) --* * **timeOrdering** *(string) --* The chronological sorting order of the requested information. Default: "ASCENDING" * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. A result set is returned in the two cases, whichever occurs first. * The size of the result set is equal to 1 MB. * The number of data points in the result set is equal to the value of "maxResults". The maximum value of "maxResults" is 4000. Return type: dict Returns: **Response Syntax** { 'errorEntries': [ { 'errorCode': 'ResourceNotFoundException'|'InvalidRequestException'|'AccessDeniedException', 'errorMessage': 'string', 'entryId': 'string' }, ], 'successEntries': [ { 'entryId': 'string', 'aggregatedValues': [ { 'timestamp': datetime(2015, 1, 1), 'quality': 'GOOD'|'BAD'|'UNCERTAIN', 'value': { 'average': 123.0, 'count': 123.0, 'maximum': 123.0, 'minimum': 123.0, 'sum': 123.0, 'standardDeviation': 123.0 } }, ] }, ], 'skippedEntries': [ { 'entryId': 'string', 'completionStatus': 'SUCCESS'|'ERROR', 'errorInfo': { 'errorCode': 'ResourceNotFoundException'|'InvalidRequestException'|'AccessDeniedException', 'errorTimestamp': datetime(2015, 1, 1) } }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **errorEntries** *(list) --* A list of the errors (if any) associated with the batch request. Each error entry contains the "entryId" of the entry that failed. * *(dict) --* Contains error information for an asset property aggregate entry that is associated with the BatchGetAssetPropertyAggregates API. * **errorCode** *(string) --* The error code. * **errorMessage** *(string) --* The associated error message. * **entryId** *(string) --* The ID of the entry. * **successEntries** *(list) --* A list of entries that were processed successfully by this batch request. Each success entry contains the "entryId" of the entry that succeeded and the latest query result. * *(dict) --* Contains success information for an entry that is associated with the BatchGetAssetPropertyAggregates API. * **entryId** *(string) --* The ID of the entry. * **aggregatedValues** *(list) --* The requested aggregated asset property values (for example, average, minimum, and maximum). * *(dict) --* Contains aggregated asset property values (for example, average, minimum, and maximum). * **timestamp** *(datetime) --* The date the aggregating computations occurred, in Unix epoch time. * **quality** *(string) --* The quality of the aggregated data. * **value** *(dict) --* The value of the aggregates. * **average** *(float) --* The average (mean) value of the time series over a time interval window. * **count** *(float) --* The count of data points in the time series over a time interval window. * **maximum** *(float) --* The maximum value of the time series over a time interval window. * **minimum** *(float) --* The minimum value of the time series over a time interval window. * **sum** *(float) --* The sum of the time series over a time interval window. * **standardDeviation** *(float) --* The standard deviation of the time series over a time interval window. * **skippedEntries** *(list) --* A list of entries that were not processed by this batch request. because these entries had been completely processed by previous paginated requests. Each skipped entry contains the "entryId" of the entry that skipped. * *(dict) --* Contains information for an entry that has been processed by the previous BatchGetAssetPropertyAggregates request. * **entryId** *(string) --* The ID of the entry. * **completionStatus** *(string) --* The completion status of each entry that is associated with the BatchGetAssetPropertyAggregates API. * **errorInfo** *(dict) --* The error information, such as the error code and the timestamp. * **errorCode** *(string) --* The error code. * **errorTimestamp** *(datetime) --* The date the error occurred, in Unix epoch time. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ServiceUnavailableException" IoTSiteWise / Client / update_dataset update_dataset ************** IoTSiteWise.Client.update_dataset(**kwargs) Updates a dataset. See also: AWS API Documentation **Request Syntax** response = client.update_dataset( datasetId='string', datasetName='string', datasetDescription='string', datasetSource={ 'sourceType': 'KENDRA', 'sourceFormat': 'KNOWLEDGE_BASE', 'sourceDetail': { 'kendra': { 'knowledgeBaseArn': 'string', 'roleArn': 'string' } } }, clientToken='string' ) Parameters: * **datasetId** (*string*) -- **[REQUIRED]** The ID of the dataset. * **datasetName** (*string*) -- **[REQUIRED]** The name of the dataset. * **datasetDescription** (*string*) -- A description about the dataset, and its functionality. * **datasetSource** (*dict*) -- **[REQUIRED]** The data source for the dataset. * **sourceType** *(string) --* **[REQUIRED]** The type of data source for the dataset. * **sourceFormat** *(string) --* **[REQUIRED]** The format of the dataset source associated with the dataset. * **sourceDetail** *(dict) --* The details of the dataset source associated with the dataset. * **kendra** *(dict) --* Contains details about the Kendra dataset source. * **knowledgeBaseArn** *(string) --* **[REQUIRED]** The "knowledgeBaseArn" details for the Kendra dataset source. * **roleArn** *(string) --* **[REQUIRED]** The "roleARN" details for the Kendra dataset source. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'datasetId': 'string', 'datasetArn': 'string', 'datasetStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **datasetId** *(string) --* The ID of the dataset. * **datasetArn** *(string) --* The ARN of the dataset. The format is "arn:${Partition}:iot sitewise:${Region}:${Account}:dataset/${DatasetId}". * **datasetStatus** *(dict) --* The status of the dataset. This contains the state and any error messages. State is "UPDATING" after a successfull call to this API, and any associated error message. The state is "ACTIVE" when ready to use. * **state** *(string) --* The current status of the dataset. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / create_computation_model create_computation_model ************************ IoTSiteWise.Client.create_computation_model(**kwargs) Create a computation model with a configuration and data binding. See also: AWS API Documentation **Request Syntax** response = client.create_computation_model( computationModelName='string', computationModelDescription='string', computationModelConfiguration={ 'anomalyDetection': { 'inputProperties': 'string', 'resultProperty': 'string' } }, computationModelDataBinding={ 'string': { 'assetModelProperty': { 'assetModelId': 'string', 'propertyId': 'string' }, 'assetProperty': { 'assetId': 'string', 'propertyId': 'string' }, 'list': [ {'... recursive ...'}, ] } }, clientToken='string', tags={ 'string': 'string' } ) Parameters: * **computationModelName** (*string*) -- **[REQUIRED]** The name of the computation model. * **computationModelDescription** (*string*) -- The description of the computation model. * **computationModelConfiguration** (*dict*) -- **[REQUIRED]** The configuration for the computation model. * **anomalyDetection** *(dict) --* The configuration for the anomaly detection type of computation model. * **inputProperties** *(string) --* **[REQUIRED]** Define the variable name associated with input properties, with the following format "${VariableName}". * **resultProperty** *(string) --* **[REQUIRED]** Define the variable name associated with the result property, and the following format "${VariableName}". * **computationModelDataBinding** (*dict*) -- **[REQUIRED]** The data binding for the computation model. Key is a variable name defined in configuration. Value is a "ComputationModelDataBindingValue" referenced by the variable. * *(string) --* * *(dict) --* Contains computation model data binding value information, which can be one of "assetModelProperty", "list". * **assetModelProperty** *(dict) --* Specifies an asset model property data binding value. * **assetModelId** *(string) --* **[REQUIRED]** The ID of the asset model, in UUID format. * **propertyId** *(string) --* **[REQUIRED]** The ID of the asset model property used in data binding value. * **assetProperty** *(dict) --* The asset property value used for computation model data binding. * **assetId** *(string) --* **[REQUIRED]** The ID of the asset containing the property. This identifies the specific asset instance's property value used in the computation model. * **propertyId** *(string) --* **[REQUIRED]** The ID of the property within the asset. This identifies the specific property's value used in the computation model. * **list** *(list) --* Specifies a list of data binding value. * *(dict) --* Contains computation model data binding value information, which can be one of "assetModelProperty", "list". * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **tags** (*dict*) -- A list of key-value pairs that contain metadata for the asset. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'computationModelId': 'string', 'computationModelArn': 'string', 'computationModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **computationModelId** *(string) --* The ID of the computation model. * **computationModelArn** *(string) --* The ARN of the computation model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account }:computation-model/${ComputationModelId}" * **computationModelStatus** *(dict) --* The status of the computation model, containing a state (CREATING after successfully calling this operation) and any error messages. * **state** *(string) --* The current state of the computation model. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / list_asset_properties list_asset_properties ********************* IoTSiteWise.Client.list_asset_properties(**kwargs) Retrieves a paginated list of properties associated with an asset. If you update properties associated with the model before you finish listing all the properties, you need to start all over again. See also: AWS API Documentation **Request Syntax** response = client.list_asset_properties( assetId='string', nextToken='string', maxResults=123, filter='ALL'|'BASE' ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. If not specified, the default value is 50. * **filter** (*string*) -- Filters the requested list of asset properties. You can choose one of the following options: * "ALL" – The list includes all asset properties for a given asset model ID. * "BASE" – The list includes only base asset properties for a given asset model ID. Default: "BASE" Return type: dict Returns: **Response Syntax** { 'assetPropertySummaries': [ { 'id': 'string', 'externalId': 'string', 'alias': 'string', 'unit': 'string', 'notification': { 'topic': 'string', 'state': 'ENABLED'|'DISABLED' }, 'assetCompositeModelId': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **assetPropertySummaries** *(list) --* A list that summarizes the properties associated with the specified asset. * *(dict) --* Contains a summary of a property associated with an asset. * **id** *(string) --* The ID of the property. * **externalId** *(string) --* The external ID of the property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **alias** *(string) --* The alias that identifies the property, such as an OPC- UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **unit** *(string) --* The unit of measure (such as Newtons or RPM) of the asset property. * **notification** *(dict) --* Contains asset property value notification information. When the notification state is enabled, IoT SiteWise publishes property value updates to a unique MQTT topic. For more information, see Interacting with other services in the *IoT SiteWise User Guide*. * **topic** *(string) --* The MQTT topic to which IoT SiteWise publishes property value update notifications. * **state** *(string) --* The current notification state. * **assetCompositeModelId** *(string) --* The ID of the composite model that contains the asset property. * **path** *(list) --* The structured path to the property from the root of the asset. * *(dict) --* Represents one level between a property and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_time_series delete_time_series ****************** IoTSiteWise.Client.delete_time_series(**kwargs) Deletes a time series (data stream). If you delete a time series that's associated with an asset property, the asset property still exists, but the time series will no longer be associated with this asset property. To identify a time series, do one of the following: * If the time series isn't associated with an asset property, specify the "alias" of the time series. * If the time series is associated with an asset property, specify one of the following: * The "alias" of the time series. * The "assetId" and "propertyId" that identifies the asset property. See also: AWS API Documentation **Request Syntax** response = client.delete_time_series( alias='string', assetId='string', propertyId='string', clientToken='string' ) Parameters: * **alias** (*string*) -- The alias that identifies the time series. * **assetId** (*string*) -- The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **propertyId** (*string*) -- The ID of the asset property. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Returns: None **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / list_tags_for_resource list_tags_for_resource ********************** IoTSiteWise.Client.list_tags_for_resource(**kwargs) Retrieves the list of tags for an IoT SiteWise resource. See also: AWS API Documentation **Request Syntax** response = client.list_tags_for_resource( resourceArn='string' ) Parameters: **resourceArn** (*string*) -- **[REQUIRED]** The ARN of the resource. Return type: dict Returns: **Response Syntax** { 'tags': { 'string': 'string' } } **Response Structure** * *(dict) --* * **tags** *(dict) --* The list of key-value pairs that contain metadata for the resource. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.UnauthorizedException" IoTSiteWise / Client / list_projects list_projects ************* IoTSiteWise.Client.list_projects(**kwargs) Retrieves a paginated list of projects for an IoT SiteWise Monitor portal. See also: AWS API Documentation **Request Syntax** response = client.list_projects( portalId='string', nextToken='string', maxResults=123 ) Parameters: * **portalId** (*string*) -- **[REQUIRED]** The ID of the portal. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 Return type: dict Returns: **Response Syntax** { 'projectSummaries': [ { 'id': 'string', 'name': 'string', 'description': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1) }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **projectSummaries** *(list) --* A list that summarizes each project in the portal. * *(dict) --* Contains project summary information. * **id** *(string) --* The ID of the project. * **name** *(string) --* The name of the project. * **description** *(string) --* The project's description. * **creationDate** *(datetime) --* The date the project was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the project was last updated, in Unix epoch time. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / untag_resource untag_resource ************** IoTSiteWise.Client.untag_resource(**kwargs) Removes a tag from an IoT SiteWise resource. See also: AWS API Documentation **Request Syntax** response = client.untag_resource( resourceArn='string', tagKeys=[ 'string', ] ) Parameters: * **resourceArn** (*string*) -- **[REQUIRED]** The ARN of the resource to untag. * **tagKeys** (*list*) -- **[REQUIRED]** A list of keys for tags to remove from the resource. * *(string) --* Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.UnauthorizedException" IoTSiteWise / Client / describe_asset_property describe_asset_property *********************** IoTSiteWise.Client.describe_asset_property(**kwargs) Retrieves information about an asset property. Note: When you call this operation for an attribute property, this response includes the default attribute value that you define in the asset model. If you update the default value in the model, this operation's response includes the new default value. This operation doesn't return the value of the asset property. To get the value of an asset property, use GetAssetPropertyValue. See also: AWS API Documentation **Request Syntax** response = client.describe_asset_property( assetId='string', propertyId='string' ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **propertyId** (*string*) -- **[REQUIRED]** The ID of the asset property. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'assetId': 'string', 'assetExternalId': 'string', 'assetName': 'string', 'assetModelId': 'string', 'assetProperty': { 'id': 'string', 'externalId': 'string', 'name': 'string', 'alias': 'string', 'notification': { 'topic': 'string', 'state': 'ENABLED'|'DISABLED' }, 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'path': [ { 'id': 'string', 'name': 'string' }, ] }, 'compositeModel': { 'name': 'string', 'type': 'string', 'assetProperty': { 'id': 'string', 'externalId': 'string', 'name': 'string', 'alias': 'string', 'notification': { 'topic': 'string', 'state': 'ENABLED'|'DISABLED' }, 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'path': [ { 'id': 'string', 'name': 'string' }, ] }, 'id': 'string', 'externalId': 'string' } } **Response Structure** * *(dict) --* * **assetId** *(string) --* The ID of the asset, in UUID format. * **assetExternalId** *(string) --* The external ID of the asset. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **assetName** *(string) --* The name of the asset. * **assetModelId** *(string) --* The ID of the asset model, in UUID format. * **assetProperty** *(dict) --* The asset property's definition, alias, and notification state. This response includes this object for normal asset properties. If you describe an asset property in a composite model, this response includes the asset property information in "compositeModel". * **id** *(string) --* The ID of the asset property. * **externalId** *(string) --* The external ID of the asset property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the property. * **alias** *(string) --* The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **notification** *(dict) --* The asset property's notification topic and state. For more information, see UpdateAssetProperty. * **topic** *(string) --* The MQTT topic to which IoT SiteWise publishes property value update notifications. * **state** *(string) --* The current notification state. * **dataType** *(string) --* The property data type. * **unit** *(string) --* The unit (such as "Newtons" or "RPM") of the asset property. * **type** *(dict) --* The property type (see "PropertyType"). A property contains one type. * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* The forwarding configuration for the given measurement property. * **state** *(string) --* The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* The compute location for the given metric property. * **path** *(list) --* The structured path to the property from the root of the asset. * *(dict) --* Represents one level between a property and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **compositeModel** *(dict) --* The composite model that declares this asset property, if this asset property exists in a composite model. * **name** *(string) --* The name of the property. * **type** *(string) --* The type of the composite model that defines this property. * **assetProperty** *(dict) --* Contains asset property information. * **id** *(string) --* The ID of the asset property. * **externalId** *(string) --* The external ID of the asset property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the property. * **alias** *(string) --* The alias that identifies the property, such as an OPC- UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **notification** *(dict) --* The asset property's notification topic and state. For more information, see UpdateAssetProperty. * **topic** *(string) --* The MQTT topic to which IoT SiteWise publishes property value update notifications. * **state** *(string) --* The current notification state. * **dataType** *(string) --* The property data type. * **unit** *(string) --* The unit (such as "Newtons" or "RPM") of the asset property. * **type** *(dict) --* The property type (see "PropertyType"). A property contains one type. * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* The forwarding configuration for the given measurement property. * **state** *(string) --* The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* The compute location for the given metric property. * **path** *(list) --* The structured path to the property from the root of the asset. * *(dict) --* Represents one level between a property and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **id** *(string) --* The ID of the composite model that contains the property. * **externalId** *(string) --* The external ID of the composite model that contains the property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / describe_bulk_import_job describe_bulk_import_job ************************ IoTSiteWise.Client.describe_bulk_import_job(**kwargs) Retrieves information about a bulk import job request. For more information, see Describe a bulk import job (CLI) in the *Amazon Simple Storage Service User Guide*. See also: AWS API Documentation **Request Syntax** response = client.describe_bulk_import_job( jobId='string' ) Parameters: **jobId** (*string*) -- **[REQUIRED]** The ID of the job. Return type: dict Returns: **Response Syntax** { 'jobId': 'string', 'jobName': 'string', 'jobStatus': 'PENDING'|'CANCELLED'|'RUNNING'|'COMPLETED'|'FAILED'|'COMPLETED_WITH_FAILURES', 'jobRoleArn': 'string', 'files': [ { 'bucket': 'string', 'key': 'string', 'versionId': 'string' }, ], 'errorReportLocation': { 'bucket': 'string', 'prefix': 'string' }, 'jobConfiguration': { 'fileFormat': { 'csv': { 'columnNames': [ 'ALIAS'|'ASSET_ID'|'PROPERTY_ID'|'DATA_TYPE'|'TIMESTAMP_SECONDS'|'TIMESTAMP_NANO_OFFSET'|'QUALITY'|'VALUE', ] }, 'parquet': {} } }, 'jobCreationDate': datetime(2015, 1, 1), 'jobLastUpdateDate': datetime(2015, 1, 1), 'adaptiveIngestion': True|False, 'deleteFilesAfterImport': True|False } **Response Structure** * *(dict) --* * **jobId** *(string) --* The ID of the job. * **jobName** *(string) --* The unique name that helps identify the job request. * **jobStatus** *(string) --* The status of the bulk import job can be one of following values: * "PENDING" – IoT SiteWise is waiting for the current bulk import job to finish. * "CANCELLED" – The bulk import job has been canceled. * "RUNNING" – IoT SiteWise is processing your request to import your data from Amazon S3. * "COMPLETED" – IoT SiteWise successfully completed your request to import data from Amazon S3. * "FAILED" – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues. * "COMPLETED_WITH_FAILURES" – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues. * **jobRoleArn** *(string) --* The ARN of the IAM role that allows IoT SiteWise to read Amazon S3 data. * **files** *(list) --* The files in the specified Amazon S3 bucket that contain your data. * *(dict) --* The file in Amazon S3 where your data is saved. * **bucket** *(string) --* The name of the Amazon S3 bucket from which data is imported. * **key** *(string) --* The key of the Amazon S3 object that contains your data. Each object has a key that is a unique identifier. Each object has exactly one key. * **versionId** *(string) --* The version ID to identify a specific version of the Amazon S3 object that contains your data. * **errorReportLocation** *(dict) --* The Amazon S3 destination where errors associated with the job creation request are saved. * **bucket** *(string) --* The name of the Amazon S3 bucket to which errors associated with the bulk import job are sent. * **prefix** *(string) --* Amazon S3 uses the prefix as a folder name to organize data in the bucket. Each Amazon S3 object has a key that is its unique identifier in the bucket. Each object in a bucket has exactly one key. The prefix must end with a forward slash (/). For more information, see Organizing objects using prefixes in the *Amazon Simple Storage Service User Guide*. * **jobConfiguration** *(dict) --* Contains the configuration information of a job, such as the file format used to save data in Amazon S3. * **fileFormat** *(dict) --* The file format of the data in S3. * **csv** *(dict) --* The file is in .CSV format. * **columnNames** *(list) --* The column names specified in the .csv file. * *(string) --* * **parquet** *(dict) --* The file is in parquet format. * **jobCreationDate** *(datetime) --* The date the job was created, in Unix epoch TIME. * **jobLastUpdateDate** *(datetime) --* The date the job was last updated, in Unix epoch time. * **adaptiveIngestion** *(boolean) --* If set to true, ingest new data into IoT SiteWise storage. Measurements with notifications, metrics and transforms are computed. If set to false, historical data is ingested into IoT SiteWise as is. * **deleteFilesAfterImport** *(boolean) --* If set to true, your data files is deleted from S3, after ingestion into IoT SiteWise storage. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / get_interpolated_asset_property_values get_interpolated_asset_property_values ************************************** IoTSiteWise.Client.get_interpolated_asset_property_values(**kwargs) Get interpolated values for an asset property for a specified time interval, during a period of time. If your time series is missing data points during the specified time interval, you can use interpolation to estimate the missing data. For example, you can use this operation to return the interpolated temperature values for a wind turbine every 24 hours over a duration of 7 days. To identify an asset property, you must specify one of the following: * The "assetId" and "propertyId" of an asset property. * A "propertyAlias", which is a data stream alias (for example, "/company/windfarm/3/turbine/7/temperature"). To define an asset property's alias, see UpdateAssetProperty. See also: AWS API Documentation **Request Syntax** response = client.get_interpolated_asset_property_values( assetId='string', propertyId='string', propertyAlias='string', startTimeInSeconds=123, startTimeOffsetInNanos=123, endTimeInSeconds=123, endTimeOffsetInNanos=123, quality='GOOD'|'BAD'|'UNCERTAIN', intervalInSeconds=123, nextToken='string', maxResults=123, type='string', intervalWindowInSeconds=123 ) Parameters: * **assetId** (*string*) -- The ID of the asset, in UUID format. * **propertyId** (*string*) -- The ID of the asset property, in UUID format. * **propertyAlias** (*string*) -- The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **startTimeInSeconds** (*integer*) -- **[REQUIRED]** The exclusive start of the range from which to interpolate data, expressed in seconds in Unix epoch time. * **startTimeOffsetInNanos** (*integer*) -- The nanosecond offset converted from "startTimeInSeconds". * **endTimeInSeconds** (*integer*) -- **[REQUIRED]** The inclusive end of the range from which to interpolate data, expressed in seconds in Unix epoch time. * **endTimeOffsetInNanos** (*integer*) -- The nanosecond offset converted from "endTimeInSeconds". * **quality** (*string*) -- **[REQUIRED]** The quality of the asset property value. You can use this parameter as a filter to choose only the asset property values that have a specific quality. * **intervalInSeconds** (*integer*) -- **[REQUIRED]** The time interval in seconds over which to interpolate data. Each interval starts when the previous one ends. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. If not specified, the default value is 10. * **type** (*string*) -- **[REQUIRED]** The interpolation type. Valid values: "LINEAR_INTERPOLATION | LOCF_INTERPOLATION" * "LINEAR_INTERPOLATION" – Estimates missing data using linear interpolation. For example, you can use this operation to return the interpolated temperature values for a wind turbine every 24 hours over a duration of 7 days. If the interpolation starts July 1, 2021, at 9 AM, IoT SiteWise returns the first interpolated value on July 2, 2021, at 9 AM, the second interpolated value on July 3, 2021, at 9 AM, and so on. * "LOCF_INTERPOLATION" – Estimates missing data using last observation carried forward interpolation If no data point is found for an interval, IoT SiteWise returns the last observed data point for the previous interval and carries forward this interpolated value until a new data point is found. For example, you can get the state of an on-off valve every 24 hours over a duration of 7 days. If the interpolation starts July 1, 2021, at 9 AM, IoT SiteWise returns the last observed data point between July 1, 2021, at 9 AM and July 2, 2021, at 9 AM as the first interpolated value. If a data point isn't found after 9 AM on July 2, 2021, IoT SiteWise uses the same interpolated value for the rest of the days. * **intervalWindowInSeconds** (*integer*) -- The query interval for the window, in seconds. IoT SiteWise computes each interpolated value by using data points from the timestamp of each interval, minus the window to the timestamp of each interval plus the window. If not specified, the window ranges between the start time minus the interval and the end time plus the interval. Note: * If you specify a value for the "intervalWindowInSeconds" parameter, the value for the "type" parameter must be "LINEAR_INTERPOLATION". * If a data point isn't found during the specified query window, IoT SiteWise won't return an interpolated value for the interval. This indicates that there's a gap in the ingested data points. For example, you can get the interpolated temperature values for a wind turbine every 24 hours over a duration of 7 days. If the interpolation starts on July 1, 2021, at 9 AM with a window of 2 hours, IoT SiteWise uses the data points from 7 AM (9 AM minus 2 hours) to 11 AM (9 AM plus 2 hours) on July 2, 2021 to compute the first interpolated value. Next, IoT SiteWise uses the data points from 7 AM (9 AM minus 2 hours) to 11 AM (9 AM plus 2 hours) on July 3, 2021 to compute the second interpolated value, and so on. Return type: dict Returns: **Response Syntax** { 'interpolatedAssetPropertyValues': [ { 'timestamp': { 'timeInSeconds': 123, 'offsetInNanos': 123 }, 'value': { 'stringValue': 'string', 'integerValue': 123, 'doubleValue': 123.0, 'booleanValue': True|False, 'nullValue': { 'valueType': 'D'|'B'|'S'|'I'|'U' } } }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **interpolatedAssetPropertyValues** *(list) --* The requested interpolated values. * *(dict) --* Contains information about an interpolated asset property value. * **timestamp** *(dict) --* Contains a timestamp with optional nanosecond granularity. * **timeInSeconds** *(integer) --* The timestamp date, in seconds, in the Unix epoch format. Fractional nanosecond data is provided by "offsetInNanos". * **offsetInNanos** *(integer) --* The nanosecond offset from "timeInSeconds". * **value** *(dict) --* Contains an asset property value (of a single type only). * **stringValue** *(string) --* Asset property data of type string (sequence of characters). The allowed pattern: "^$|[^u0000-u001Fu007F]+". The max length is 1024. * **integerValue** *(integer) --* Asset property data of type integer (whole number). * **doubleValue** *(float) --* Asset property data of type double (floating point number). The min value is -10^10. The max value is 10^10. Double.NaN is allowed. * **booleanValue** *(boolean) --* Asset property data of type Boolean (true or false). * **nullValue** *(dict) --* The type of null asset property data with BAD and UNCERTAIN qualities. * **valueType** *(string) --* The type of null asset property data. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ServiceUnavailableException" IoTSiteWise / Client / describe_gateway_capability_configuration describe_gateway_capability_configuration ***************************************** IoTSiteWise.Client.describe_gateway_capability_configuration(**kwargs) Each gateway capability defines data sources for a gateway. This is the namespace of the gateway capability. . The namespace follows the format "service:capability:version", where: * "service" - The service providing the capability, or "iotsitewise". * "capability" - The specific capability type. Options include: "opcuacollector" for the OPC UA data source collector, or "publisher" for data publisher capability. * "version" - The version number of the capability. Option include "2" for Classic streams, V2 gateways, and "3" for MQTT-enabled, V3 gateways. After updating a capability configuration, the sync status becomes "OUT_OF_SYNC" until the gateway processes the configuration.Use "DescribeGatewayCapabilityConfiguration" to check the sync status and verify the configuration was applied. A gateway can have multiple capability configurations with different namespaces. See also: AWS API Documentation **Request Syntax** response = client.describe_gateway_capability_configuration( gatewayId='string', capabilityNamespace='string' ) Parameters: * **gatewayId** (*string*) -- **[REQUIRED]** The ID of the gateway that defines the capability configuration. * **capabilityNamespace** (*string*) -- **[REQUIRED]** The namespace of the capability configuration. For example, if you configure OPC UA sources for an MQTT-enabled gateway, your OPC-UA capability configuration has the namespace "iotsitewise:opcuacollector:3". Return type: dict Returns: **Response Syntax** { 'gatewayId': 'string', 'capabilityNamespace': 'string', 'capabilityConfiguration': 'string', 'capabilitySyncStatus': 'IN_SYNC'|'OUT_OF_SYNC'|'SYNC_FAILED'|'UNKNOWN'|'NOT_APPLICABLE' } **Response Structure** * *(dict) --* * **gatewayId** *(string) --* The ID of the gateway that defines the capability configuration. * **capabilityNamespace** *(string) --* The namespace of the gateway capability. * **capabilityConfiguration** *(string) --* The JSON document that defines the gateway capability's configuration. For more information, see Configuring data sources (CLI) in the *IoT SiteWise User Guide*. * **capabilitySyncStatus** *(string) --* The synchronization status of the gateway capability configuration. The sync status can be one of the following: * "IN_SYNC" - The gateway is running with the latest configuration. * "OUT_OF_SYNC" - The gateway hasn't received the latest configuration. * "SYNC_FAILED" - The gateway rejected the latest configuration. * "UNKNOWN" - The gateway hasn't reported its sync status. * "NOT_APPLICABLE" - The gateway doesn't support this capability. This is most common when integrating partner data sources, because the data integration is handled externally by the partner. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_asset_model delete_asset_model ****************** IoTSiteWise.Client.delete_asset_model(**kwargs) Deletes an asset model. This action can't be undone. You must delete all assets created from an asset model before you can delete the model. Also, you can't delete an asset model if a parent asset model exists that contains a property formula expression that depends on the asset model that you want to delete. For more information, see Deleting assets and models in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.delete_asset_model( assetModelId='string', clientToken='string', ifMatch='string', ifNoneMatch='string', matchForVersionType='LATEST'|'ACTIVE' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model to delete. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **ifMatch** (*string*) -- The expected current entity tag (ETag) for the asset model’s latest or active version (specified using "matchForVersionType"). The delete request is rejected if the tag does not match the latest or active version's current entity tag. See Optimistic locking for asset model writes in the *IoT SiteWise User Guide*. * **ifNoneMatch** (*string*) -- Accepts ***** to reject the delete request if an active version (specified using "matchForVersionType" as "ACTIVE") already exists for the asset model. * **matchForVersionType** (*string*) -- Specifies the asset model version type ( "LATEST" or "ACTIVE") used in conjunction with "If-Match" or "If-None-Match" headers to determine the target ETag for the delete operation. Return type: dict Returns: **Response Syntax** { 'assetModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetModelStatus** *(dict) --* The status of the asset model, which contains a state ( "DELETING" after successfully calling this operation) and any error message. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.PreconditionFailedException" IoTSiteWise / Client / get_waiter get_waiter ********** IoTSiteWise.Client.get_waiter(waiter_name) Returns an object that can wait for some condition. Parameters: **waiter_name** (*str*) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters. Returns: The specified waiter object. Return type: "botocore.waiter.Waiter" IoTSiteWise / Client / create_asset_model create_asset_model ****************** IoTSiteWise.Client.create_asset_model(**kwargs) Creates an asset model from specified property and hierarchy definitions. You create assets from asset models. With asset models, you can easily create assets of the same type that have standardized definitions. Each asset created from a model inherits the asset model's property and hierarchy definitions. For more information, see Defining asset models in the *IoT SiteWise User Guide*. You can create three types of asset models, "ASSET_MODEL", "COMPONENT_MODEL", or an "INTERFACE". * **ASSET_MODEL** – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model. * **COMPONENT_MODEL** – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model. * **INTERFACE** – An interface is a type of model that defines a standard structure that can be applied to different asset models. See also: AWS API Documentation **Request Syntax** response = client.create_asset_model( assetModelName='string', assetModelType='ASSET_MODEL'|'COMPONENT_MODEL'|'INTERFACE', assetModelId='string', assetModelExternalId='string', assetModelDescription='string', assetModelProperties=[ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } } }, ], assetModelHierarchies=[ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'childAssetModelId': 'string' }, ], assetModelCompositeModels=[ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'description': 'string', 'type': 'string', 'properties': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } } }, ] }, ], clientToken='string', tags={ 'string': 'string' } ) Parameters: * **assetModelName** (*string*) -- **[REQUIRED]** A unique name for the asset model. * **assetModelType** (*string*) -- The type of asset model. * **ASSET_MODEL** – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model. * **COMPONENT_MODEL** – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model. * **assetModelId** (*string*) -- The ID to assign to the asset model, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * **assetModelExternalId** (*string*) -- An external ID to assign to the asset model. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **assetModelDescription** (*string*) -- A description for the asset model. * **assetModelProperties** (*list*) -- The property definitions of the asset model. For more information, see Asset properties in the *IoT SiteWise User Guide*. You can specify up to 200 properties per asset model. For more information, see Quotas in the *IoT SiteWise User Guide*. * *(dict) --* Contains an asset model property definition. This property definition is applied to all assets created from the asset model. * **id** *(string) --* The ID to assign to the asset model property, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * **externalId** *(string) --* An external ID to assign to the property definition. The external ID must be unique among property definitions within this asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* **[REQUIRED]** The name of the property definition. * **dataType** *(string) --* **[REQUIRED]** The data type of the property definition. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter is required on properties that have the "STRUCT" data type. The options for this parameter depend on the type of the composite model in which you define this property. Use "AWS/ALARM_STATE" for alarm state in alarm composite models. * **unit** *(string) --* The unit of the property definition, such as "Newtons" or "RPM". * **type** *(dict) --* **[REQUIRED]** The property definition type (see "PropertyType"). You can only specify one type in a property definition. * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* **[REQUIRED]** The forwarding configuration for the given measurement property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* **[REQUIRED]** The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* **[REQUIRED]** The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* **[REQUIRED]** The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* **[REQUIRED]** The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given metric property. * **assetModelHierarchies** (*list*) -- The hierarchy definitions of the asset model. Each hierarchy specifies an asset model whose assets can be children of any other assets created from this asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. You can specify up to 10 hierarchies per asset model. For more information, see Quotas in the *IoT SiteWise User Guide*. * *(dict) --* Contains an asset model hierarchy used in asset model creation. An asset model hierarchy determines the kind (or type) of asset that can belong to a hierarchy. * **id** *(string) --* The ID to assign to the asset model hierarchy, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * **externalId** *(string) --* An external ID to assign to the asset model hierarchy. The external ID must be unique among asset model hierarchies within this asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* **[REQUIRED]** The name of the asset model hierarchy definition (as specified in the CreateAssetModel or UpdateAssetModel API operation). * **childAssetModelId** *(string) --* **[REQUIRED]** The ID of an asset model for this hierarchy. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **assetModelCompositeModels** (*list*) -- The composite models that are part of this asset model. It groups properties (such as attributes, measurements, transforms, and metrics) and child composite models that model parts of your industrial equipment. Each composite model has a type that defines the properties that the composite model supports. Use composite models to define alarms on this asset model. Note: When creating custom composite models, you need to use CreateAssetModelCompositeModel. For more information, see Creating custom composite models (Components) in the *IoT SiteWise User Guide*. * *(dict) --* Contains a composite model definition in an asset model. This composite model definition is applied to all assets created from the asset model. * **id** *(string) --* The ID to assign to the composite model, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * **externalId** *(string) --* An external ID to assign to the composite model. The external ID must be unique among composite models within this asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* **[REQUIRED]** The name of the composite model. * **description** *(string) --* The description of the composite model. * **type** *(string) --* **[REQUIRED]** The type of the composite model. For alarm composite models, this type is "AWS/ALARM". * **properties** *(list) --* The asset property definitions for this composite model. * *(dict) --* Contains an asset model property definition. This property definition is applied to all assets created from the asset model. * **id** *(string) --* The ID to assign to the asset model property, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * **externalId** *(string) --* An external ID to assign to the property definition. The external ID must be unique among property definitions within this asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* **[REQUIRED]** The name of the property definition. * **dataType** *(string) --* **[REQUIRED]** The data type of the property definition. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter is required on properties that have the "STRUCT" data type. The options for this parameter depend on the type of the composite model in which you define this property. Use "AWS/ALARM_STATE" for alarm state in alarm composite models. * **unit** *(string) --* The unit of the property definition, such as "Newtons" or "RPM". * **type** *(dict) --* **[REQUIRED]** The property definition type (see "PropertyType"). You can only specify one type in a property definition. * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* **[REQUIRED]** The forwarding configuration for the given measurement property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* **[REQUIRED]** The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* **[REQUIRED]** The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* **[REQUIRED]** The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* **[REQUIRED]** The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given metric property. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **tags** (*dict*) -- A list of key-value pairs that contain metadata for the asset model. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'assetModelId': 'string', 'assetModelArn': 'string', 'assetModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetModelId** *(string) --* The ID of the asset model, in UUID format. You can use this ID when you call other IoT SiteWise API operations. * **assetModelArn** *(string) --* The ARN of the asset model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:asset- model/${AssetModelId}" * **assetModelStatus** *(dict) --* The status of the asset model, which contains a state ( "CREATING" after successfully calling this operation) and any error message. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / invoke_assistant invoke_assistant **************** IoTSiteWise.Client.invoke_assistant(**kwargs) Invokes SiteWise Assistant to start or continue a conversation. See also: AWS API Documentation **Request Syntax** response = client.invoke_assistant( conversationId='string', message='string', enableTrace=True|False ) Parameters: * **conversationId** (*string*) -- The ID assigned to a conversation. IoT SiteWise automatically generates a unique ID for you, and this parameter is never required. However, if you prefer to have your own ID, you must specify it here in UUID format. If you specify your own ID, it must be globally unique. * **message** (*string*) -- **[REQUIRED]** A text message sent to the SiteWise Assistant by the user. * **enableTrace** (*boolean*) -- Specifies if to turn trace on or not. It is used to track the SiteWise Assistant's reasoning, and data access process. Return type: dict Returns: The response of this operation contains an "EventStream" member. When iterated the "EventStream" will yield events based on the structure below, where only one of the top level keys will be present for any given event. **Response Syntax** { 'body': EventStream({ 'trace': { 'text': 'string' }, 'output': { 'message': 'string', 'citations': [ { 'reference': { 'dataset': { 'datasetArn': 'string', 'source': { 'arn': 'string', 'location': { 'uri': 'string' } } } }, 'content': { 'text': 'string' } }, ] }, 'accessDeniedException': { 'message': 'string' }, 'conflictingOperationException': { 'message': 'string', 'resourceId': 'string', 'resourceArn': 'string' }, 'internalFailureException': { 'message': 'string' }, 'invalidRequestException': { 'message': 'string' }, 'limitExceededException': { 'message': 'string' }, 'resourceNotFoundException': { 'message': 'string' }, 'throttlingException': { 'message': 'string' } }), 'conversationId': 'string' } **Response Structure** * *(dict) --* * **body** ("EventStream") -- Contains the response, citation, and trace from the SiteWise Assistant. * **trace** *(dict) --* Contains tracing information of the SiteWise Assistant's reasoning and data access. * **text** *(string) --* The cited text from the data source. * **output** *(dict) --* Contains the SiteWise Assistant's response. * **message** *(string) --* The text message of the SiteWise Assistant's response. * **citations** *(list) --* A list of citations, and related information for the SiteWise Assistant's response. * *(dict) --* Contains text content to which the SiteWise Assistant refers to, and generate the final response. It also contains information about the source. * **reference** *(dict) --* Contains information about the data source. * **dataset** *(dict) --* Contains the dataset reference information. * **datasetArn** *(string) --* The ARN of the dataset. The format is "arn:${Pa rtition}:iotsitewise:${Region}:${Account}:datas et/${DatasetId}". * **source** *(dict) --* The data source for the dataset. * **arn** *(string) --* Contains the ARN of the dataset. If the source is Kendra, it's the ARN of the Kendra index. * **location** *(dict) --* Contains the location information where the cited text is originally stored. For example, if the data source is Kendra, and the text synchronized is from an S3 bucket, then the location refers to an S3 object. * **uri** *(string) --* The URI of the location. * **content** *(dict) --* Contains the cited text from the data source. * **text** *(string) --* The cited text from the data source. * **accessDeniedException** *(dict) --* Access is denied. * **message** *(string) --* * **conflictingOperationException** *(dict) --* Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time. * **message** *(string) --* * **resourceId** *(string) --* The ID of the resource that conflicts with this operation. * **resourceArn** *(string) --* The ARN of the resource that conflicts with this operation. * **internalFailureException** *(dict) --* IoT SiteWise can't process your request right now. Try again later. * **message** *(string) --* * **invalidRequestException** *(dict) --* The request isn't valid. This can occur if your request contains malformed JSON or unsupported characters. Check your request and try again. * **message** *(string) --* * **limitExceededException** *(dict) --* You've reached the quota for a resource. For example, this can occur if you're trying to associate more than the allowed number of child assets or attempting to create more than the allowed number of properties for an asset model. For more information, see Quotas in the *IoT SiteWise User Guide*. * **message** *(string) --* * **resourceNotFoundException** *(dict) --* The requested resource can't be found. * **message** *(string) --* * **throttlingException** *(dict) --* Your request exceeded a rate limit. For example, you might have exceeded the number of IoT SiteWise assets that can be created per second, the allowed number of messages per second, and so on. For more information, see Quotas in the *IoT SiteWise User Guide*. * **message** *(string) --* * **conversationId** *(string) --* The ID of the conversation, in UUID format. This ID uniquely identifies the conversation within IoT SiteWise. **Exceptions** * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.AccessDeniedException" * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / create_asset create_asset ************ IoTSiteWise.Client.create_asset(**kwargs) Creates an asset from an existing asset model. For more information, see Creating assets in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.create_asset( assetName='string', assetModelId='string', assetId='string', assetExternalId='string', clientToken='string', tags={ 'string': 'string' }, assetDescription='string' ) Parameters: * **assetName** (*string*) -- **[REQUIRED]** A friendly name for the asset. * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model from which to create the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **assetId** (*string*) -- The ID to assign to the asset, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * **assetExternalId** (*string*) -- An external ID to assign to the asset. The external ID must be unique within your Amazon Web Services account. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **tags** (*dict*) -- A list of key-value pairs that contain metadata for the asset. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* * **assetDescription** (*string*) -- A description for the asset. Return type: dict Returns: **Response Syntax** { 'assetId': 'string', 'assetArn': 'string', 'assetStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetId** *(string) --* The ID of the asset, in UUID format. This ID uniquely identifies the asset within IoT SiteWise and can be used with other IoT SiteWise API operations. * **assetArn** *(string) --* The ARN of the asset, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:asset/${ AssetId}" * **assetStatus** *(dict) --* The status of the asset, which contains a state ( "CREATING" after successfully calling this operation) and any error message. * **state** *(string) --* The current status of the asset. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / describe_dashboard describe_dashboard ****************** IoTSiteWise.Client.describe_dashboard(**kwargs) Retrieves information about a dashboard. See also: AWS API Documentation **Request Syntax** response = client.describe_dashboard( dashboardId='string' ) Parameters: **dashboardId** (*string*) -- **[REQUIRED]** The ID of the dashboard. Return type: dict Returns: **Response Syntax** { 'dashboardId': 'string', 'dashboardArn': 'string', 'dashboardName': 'string', 'projectId': 'string', 'dashboardDescription': 'string', 'dashboardDefinition': 'string', 'dashboardCreationDate': datetime(2015, 1, 1), 'dashboardLastUpdateDate': datetime(2015, 1, 1) } **Response Structure** * *(dict) --* * **dashboardId** *(string) --* The ID of the dashboard. * **dashboardArn** *(string) --* The ARN of the dashboard, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:dashboar d/${DashboardId}" * **dashboardName** *(string) --* The name of the dashboard. * **projectId** *(string) --* The ID of the project that the dashboard is in. * **dashboardDescription** *(string) --* The dashboard's description. * **dashboardDefinition** *(string) --* The dashboard's definition JSON literal. For detailed information, see Creating dashboards (CLI) in the *IoT SiteWise User Guide*. * **dashboardCreationDate** *(datetime) --* The date the dashboard was created, in Unix epoch time. * **dashboardLastUpdateDate** *(datetime) --* The date the dashboard was last updated, in Unix epoch time. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_executions list_executions *************** IoTSiteWise.Client.list_executions(**kwargs) Retrieves a paginated list of summaries of all executions. See also: AWS API Documentation **Request Syntax** response = client.list_executions( targetResourceType='ASSET'|'COMPUTATION_MODEL', targetResourceId='string', resolveToResourceType='ASSET', resolveToResourceId='string', nextToken='string', maxResults=123, actionType='string' ) Parameters: * **targetResourceType** (*string*) -- **[REQUIRED]** The type of the target resource. * **targetResourceId** (*string*) -- **[REQUIRED]** The ID of the target resource. * **resolveToResourceType** (*string*) -- The type of the resolved resource. * **resolveToResourceId** (*string*) -- The ID of the resolved resource. * **nextToken** (*string*) -- The token used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results returned for each paginated request. * **actionType** (*string*) -- The type of action exectued. Return type: dict Returns: **Response Syntax** { 'executionSummaries': [ { 'executionId': 'string', 'actionType': 'string', 'targetResource': { 'assetId': 'string', 'computationModelId': 'string' }, 'targetResourceVersion': 'string', 'resolveTo': { 'assetId': 'string' }, 'executionStartTime': datetime(2015, 1, 1), 'executionEndTime': datetime(2015, 1, 1), 'executionStatus': { 'state': 'RUNNING'|'COMPLETED'|'FAILED' }, 'executionEntityVersion': 'string' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **executionSummaries** *(list) --* Contains the list of execution summaries of the computation models. * *(dict) --* Contains the execution summary of the computation model. * **executionId** *(string) --* The ID of the execution. * **actionType** *(string) --* The type of action exectued. * **targetResource** *(dict) --* The resource the action will be taken on. This can include asset-based resources and computation model resources. * **assetId** *(string) --* The ID of the asset, in UUID format. * **computationModelId** *(string) --* The ID of the computation model. * **targetResourceVersion** *(string) --* The version of the target resource. * **resolveTo** *(dict) --* The detailed resource this execution resolves to. * **assetId** *(string) --* The ID of the asset that the resource resolves to. * **executionStartTime** *(datetime) --* The time the process started. * **executionEndTime** *(datetime) --* The time the process ended. * **executionStatus** *(dict) --* The status of the execution process. * **state** *(string) --* The current state of the computation model. * **executionEntityVersion** *(string) --* The execution entity version associated with the summary. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / describe_project describe_project **************** IoTSiteWise.Client.describe_project(**kwargs) Retrieves information about a project. See also: AWS API Documentation **Request Syntax** response = client.describe_project( projectId='string' ) Parameters: **projectId** (*string*) -- **[REQUIRED]** The ID of the project. Return type: dict Returns: **Response Syntax** { 'projectId': 'string', 'projectArn': 'string', 'projectName': 'string', 'portalId': 'string', 'projectDescription': 'string', 'projectCreationDate': datetime(2015, 1, 1), 'projectLastUpdateDate': datetime(2015, 1, 1) } **Response Structure** * *(dict) --* * **projectId** *(string) --* The ID of the project. * **projectArn** *(string) --* The ARN of the project, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:project/ ${ProjectId}" * **projectName** *(string) --* The name of the project. * **portalId** *(string) --* The ID of the portal that the project is in. * **projectDescription** *(string) --* The project's description. * **projectCreationDate** *(datetime) --* The date the project was created, in Unix epoch time. * **projectLastUpdateDate** *(datetime) --* The date the project was last updated, in Unix epoch time. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / describe_asset_model describe_asset_model ******************** IoTSiteWise.Client.describe_asset_model(**kwargs) Retrieves information about an asset model. This includes details about the asset model's properties, hierarchies, composite models, and any interface relationships if the asset model implements interfaces. See also: AWS API Documentation **Request Syntax** response = client.describe_asset_model( assetModelId='string', excludeProperties=True|False, assetModelVersion='string' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **excludeProperties** (*boolean*) -- Whether or not to exclude asset model properties from the response. * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'assetModelId': 'string', 'assetModelExternalId': 'string', 'assetModelArn': 'string', 'assetModelName': 'string', 'assetModelType': 'ASSET_MODEL'|'COMPONENT_MODEL'|'INTERFACE', 'assetModelDescription': 'string', 'assetModelProperties': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'assetModelHierarchies': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'childAssetModelId': 'string' }, ], 'assetModelCompositeModels': [ { 'name': 'string', 'description': 'string', 'type': 'string', 'properties': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'id': 'string', 'externalId': 'string' }, ], 'assetModelCompositeModelSummaries': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'type': 'string', 'description': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'assetModelCreationDate': datetime(2015, 1, 1), 'assetModelLastUpdateDate': datetime(2015, 1, 1), 'assetModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'assetModelVersion': 'string', 'interfaceDetails': [ { 'id': 'string' }, ], 'eTag': 'string' } **Response Structure** * *(dict) --* * **assetModelId** *(string) --* The ID of the asset model, in UUID format. * **assetModelExternalId** *(string) --* The external ID of the asset model, if any. * **assetModelArn** *(string) --* The ARN of the asset model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:asset- model/${AssetModelId}" * **assetModelName** *(string) --* The name of the asset model. * **assetModelType** *(string) --* The type of asset model. * **ASSET_MODEL** – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model. * **COMPONENT_MODEL** – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model. * **assetModelDescription** *(string) --* The asset model's description. * **assetModelProperties** *(list) --* The list of asset properties for the asset model. This object doesn't include properties that you define in composite models. You can find composite model properties in the "assetModelCompositeModels" object. * *(dict) --* Contains information about an asset model property. * **id** *(string) --* The ID of the asset model property. * If you are callling UpdateAssetModel to create a *new* property: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * If you are calling UpdateAssetModel to modify an *existing* property: This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **externalId** *(string) --* The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the asset model property. * **dataType** *(string) --* The data type of the asset model property. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit of the asset model property, such as "Newtons" or "RPM". * **type** *(dict) --* The property type (see "PropertyType"). * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* The forwarding configuration for the given measurement property. * **state** *(string) --* The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* The compute location for the given metric property. * **path** *(list) --* The structured path to the property from the root of the asset model. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **assetModelHierarchies** *(list) --* A list of asset model hierarchies that each contain a "childAssetModelId" and a "hierarchyId" (named "id"). A hierarchy specifies allowed parent/child asset relationships for an asset model. * *(dict) --* Describes an asset hierarchy that contains a hierarchy's name, ID, and child asset model ID that specifies the type of asset that can be in this hierarchy. * **id** *(string) --* The ID of the asset model hierarchy. This ID is a "hierarchyId". * If you are callling UpdateAssetModel to create a *new* hierarchy: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * If you are calling UpdateAssetModel to modify an *existing* hierarchy: This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **externalId** *(string) --* The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the asset model hierarchy that you specify by using the CreateAssetModel or UpdateAssetModel API operation. * **childAssetModelId** *(string) --* The ID of the asset model, in UUID format. All assets in this hierarchy must be instances of the "childAssetModelId" asset model. IoT SiteWise will always return the actual asset model ID for this value. However, when you are specifying this value as part of a call to UpdateAssetModel, you may provide either the asset model ID or else "externalId:" followed by the asset model's external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **assetModelCompositeModels** *(list) --* The list of built-in composite models for the asset model, such as those with those of type "AWS/ALARMS". * *(dict) --* Contains information about a composite model in an asset model. This object contains the asset property definitions that you define in the composite model. * **name** *(string) --* The name of the composite model. * **description** *(string) --* The description of the composite model. * **type** *(string) --* The type of the composite model. For alarm composite models, this type is "AWS/ALARM". * **properties** *(list) --* The asset property definitions for this composite model. * *(dict) --* Contains information about an asset model property. * **id** *(string) --* The ID of the asset model property. * If you are callling UpdateAssetModel to create a *new* property: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * If you are calling UpdateAssetModel to modify an *existing* property: This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **externalId** *(string) --* The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the asset model property. * **dataType** *(string) --* The data type of the asset model property. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit of the asset model property, such as "Newtons" or "RPM". * **type** *(dict) --* The property type (see "PropertyType"). * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* The forwarding configuration for the given measurement property. * **state** *(string) --* The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* The compute location for the given metric property. * **path** *(list) --* The structured path to the property from the root of the asset model. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **id** *(string) --* The ID of the asset model composite model. * **externalId** *(string) --* The external ID of the asset model composite model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **assetModelCompositeModelSummaries** *(list) --* The list of the immediate child custom composite model summaries for the asset model. * *(dict) --* Contains a summary of the composite model. * **id** *(string) --* The ID of the composite model that this summary describes.. * **externalId** *(string) --* The external ID of a composite model on this asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the composite model that this summary describes.. * **type** *(string) --* The composite model type. Valid values are "AWS/ALARM", "CUSTOM", or "AWS/L4E_ANOMALY". * **description** *(string) --* The description of the composite model that this summary describes.. * **path** *(list) --* The path that includes all the pieces that make up the composite model. * *(dict) --* Represents one level between a composite model and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **assetModelCreationDate** *(datetime) --* The date the asset model was created, in Unix epoch time. * **assetModelLastUpdateDate** *(datetime) --* The date the asset model was last updated, in Unix epoch time. * **assetModelStatus** *(dict) --* The current status of the asset model, which contains a state and any error message. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **assetModelVersion** *(string) --* The version of the asset model. See Asset model versions in the *IoT SiteWise User Guide*. * **interfaceDetails** *(list) --* A list of interface details that describe the interfaces implemented by this asset model, including interface asset model IDs and property mappings. * *(dict) --* Contains information about the relationship between an asset model and an interface asset model that is applied to it. * **id** *(string) --* The ID of the asset model that has the interface applied to it. * **eTag** *(string) --* The entity tag (ETag) is a hash of the retrieved version of the asset model. It's used to make concurrent updates safely to the resource. See Optimistic locking for asset model writes in the *IoT SiteWise User Guide*. See Optimistic locking for asset model writes in the *IoT SiteWise User Guide*. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / create_access_policy create_access_policy ******************** IoTSiteWise.Client.create_access_policy(**kwargs) Creates an access policy that grants the specified identity (IAM Identity Center user, IAM Identity Center group, or IAM user) access to the specified IoT SiteWise Monitor portal or project resource. See also: AWS API Documentation **Request Syntax** response = client.create_access_policy( accessPolicyIdentity={ 'user': { 'id': 'string' }, 'group': { 'id': 'string' }, 'iamUser': { 'arn': 'string' }, 'iamRole': { 'arn': 'string' } }, accessPolicyResource={ 'portal': { 'id': 'string' }, 'project': { 'id': 'string' } }, accessPolicyPermission='ADMINISTRATOR'|'VIEWER', clientToken='string', tags={ 'string': 'string' } ) Parameters: * **accessPolicyIdentity** (*dict*) -- **[REQUIRED]** The identity for this access policy. Choose an IAM Identity Center user, an IAM Identity Center group, or an IAM user. * **user** *(dict) --* An IAM Identity Center user identity. * **id** *(string) --* **[REQUIRED]** The IAM Identity Center ID of the user. * **group** *(dict) --* An IAM Identity Center group identity. * **id** *(string) --* **[REQUIRED]** The IAM Identity Center ID of the group. * **iamUser** *(dict) --* An IAM user identity. * **arn** *(string) --* **[REQUIRED]** The ARN of the IAM user. For more information, see IAM ARNs in the *IAM User Guide*. Note: If you delete the IAM user, access policies that contain this identity include an empty "arn". You can delete the access policy for the IAM user that no longer exists. * **iamRole** *(dict) --* An IAM role identity. * **arn** *(string) --* **[REQUIRED]** The ARN of the IAM role. For more information, see IAM ARNs in the *IAM User Guide*. * **accessPolicyResource** (*dict*) -- **[REQUIRED]** The IoT SiteWise Monitor resource for this access policy. Choose either a portal or a project. * **portal** *(dict) --* A portal resource. * **id** *(string) --* **[REQUIRED]** The ID of the portal. * **project** *(dict) --* A project resource. * **id** *(string) --* **[REQUIRED]** The ID of the project. * **accessPolicyPermission** (*string*) -- **[REQUIRED]** The permission level for this access policy. Note that a project "ADMINISTRATOR" is also known as a project owner. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **tags** (*dict*) -- A list of key-value pairs that contain metadata for the access policy. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'accessPolicyId': 'string', 'accessPolicyArn': 'string' } **Response Structure** * *(dict) --* * **accessPolicyId** *(string) --* The ID of the access policy. * **accessPolicyArn** *(string) --* The ARN of the access policy, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:access- policy/${AccessPolicyId}" **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" IoTSiteWise / Client / describe_storage_configuration describe_storage_configuration ****************************** IoTSiteWise.Client.describe_storage_configuration() Retrieves information about the storage configuration for IoT SiteWise. See also: AWS API Documentation **Request Syntax** response = client.describe_storage_configuration() Return type: dict Returns: **Response Syntax** { 'storageType': 'SITEWISE_DEFAULT_STORAGE'|'MULTI_LAYER_STORAGE', 'multiLayerStorage': { 'customerManagedS3Storage': { 's3ResourceArn': 'string', 'roleArn': 'string' } }, 'disassociatedDataStorage': 'ENABLED'|'DISABLED', 'retentionPeriod': { 'numberOfDays': 123, 'unlimited': True|False }, 'configurationStatus': { 'state': 'ACTIVE'|'UPDATE_IN_PROGRESS'|'UPDATE_FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string' } }, 'lastUpdateDate': datetime(2015, 1, 1), 'warmTier': 'ENABLED'|'DISABLED', 'warmTierRetentionPeriod': { 'numberOfDays': 123, 'unlimited': True|False }, 'disallowIngestNullNaN': True|False } **Response Structure** * *(dict) --* * **storageType** *(string) --* The storage tier that you specified for your data. The "storageType" parameter can be one of the following values: * "SITEWISE_DEFAULT_STORAGE" – IoT SiteWise saves your data into the hot tier. The hot tier is a service-managed database. * "MULTI_LAYER_STORAGE" – IoT SiteWise saves your data in both the cold tier and the hot tier. The cold tier is a customer-managed Amazon S3 bucket. * **multiLayerStorage** *(dict) --* Contains information about the storage destination. * **customerManagedS3Storage** *(dict) --* Contains information about a customer managed Amazon S3 bucket. * **s3ResourceArn** *(string) --* The ARN of the Amazon S3 object. For more information about how to find the ARN for an Amazon S3 object, see Amazon S3 resources in the *Amazon Simple Storage Service User Guide*. * **roleArn** *(string) --* The ARN of the Identity and Access Management role that allows IoT SiteWise to send data to Amazon S3. * **disassociatedDataStorage** *(string) --* Contains the storage configuration for time series (data streams) that aren't associated with asset properties. The "disassociatedDataStorage" can be one of the following values: * "ENABLED" – IoT SiteWise accepts time series that aren't associated with asset properties. Warning: After the "disassociatedDataStorage" is enabled, you can't disable it. * "DISABLED" – IoT SiteWise doesn't accept time series (data streams) that aren't associated with asset properties. For more information, see Data streams in the *IoT SiteWise User Guide*. * **retentionPeriod** *(dict) --* The number of days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier. * **numberOfDays** *(integer) --* The number of days that your data is kept. Note: If you specified a value for this parameter, the "unlimited" parameter must be "false". * **unlimited** *(boolean) --* If true, your data is kept indefinitely. Note: If configured to "true", you must not specify a value for the "numberOfDays" parameter. * **configurationStatus** *(dict) --* Contains current status information for the configuration. * **state** *(string) --* The current state of the configuration. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **lastUpdateDate** *(datetime) --* The date the storage configuration was last updated, in Unix epoch time. * **warmTier** *(string) --* A service managed storage tier optimized for analytical queries. It stores periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob API. * **warmTierRetentionPeriod** *(dict) --* Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled. * **numberOfDays** *(integer) --* The number of days the data is stored in the warm tier. * **unlimited** *(boolean) --* If set to true, the data is stored indefinitely in the warm tier. * **disallowIngestNullNaN** *(boolean) --* Describes the configuration for ingesting NULL and NaN data. By default the feature is allowed. The feature is disallowed if the value is "true". **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / describe_portal describe_portal *************** IoTSiteWise.Client.describe_portal(**kwargs) Retrieves information about a portal. See also: AWS API Documentation **Request Syntax** response = client.describe_portal( portalId='string' ) Parameters: **portalId** (*string*) -- **[REQUIRED]** The ID of the portal. Return type: dict Returns: **Response Syntax** { 'portalId': 'string', 'portalArn': 'string', 'portalName': 'string', 'portalDescription': 'string', 'portalClientId': 'string', 'portalStartUrl': 'string', 'portalContactEmail': 'string', 'portalStatus': { 'state': 'CREATING'|'PENDING'|'UPDATING'|'DELETING'|'ACTIVE'|'FAILED', 'error': { 'code': 'INTERNAL_FAILURE'|'VALIDATION_ERROR'|'LIMIT_EXCEEDED', 'message': 'string' } }, 'portalCreationDate': datetime(2015, 1, 1), 'portalLastUpdateDate': datetime(2015, 1, 1), 'portalLogoImageLocation': { 'id': 'string', 'url': 'string' }, 'roleArn': 'string', 'portalAuthMode': 'IAM'|'SSO', 'notificationSenderEmail': 'string', 'alarms': { 'alarmRoleArn': 'string', 'notificationLambdaArn': 'string' }, 'portalType': 'SITEWISE_PORTAL_V1'|'SITEWISE_PORTAL_V2', 'portalTypeConfiguration': { 'string': { 'portalTools': [ 'string', ] } } } **Response Structure** * *(dict) --* * **portalId** *(string) --* The ID of the portal. * **portalArn** *(string) --* The ARN of the portal, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:portal/$ {PortalId}" * **portalName** *(string) --* The name of the portal. * **portalDescription** *(string) --* The portal's description. * **portalClientId** *(string) --* The IAM Identity Center application generated client ID (used with IAM Identity Center API operations). IoT SiteWise includes "portalClientId" for only portals that use IAM Identity Center to authenticate users. * **portalStartUrl** *(string) --* The URL for the IoT SiteWise Monitor portal. You can use this URL to access portals that use IAM Identity Center for authentication. For portals that use IAM for authentication, you must use the IoT SiteWise console to get a URL that you can use to access the portal. * **portalContactEmail** *(string) --* The Amazon Web Services administrator's contact email address. * **portalStatus** *(dict) --* The current status of the portal, which contains a state and any error message. * **state** *(string) --* The current state of the portal. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **portalCreationDate** *(datetime) --* The date the portal was created, in Unix epoch time. * **portalLastUpdateDate** *(datetime) --* The date the portal was last updated, in Unix epoch time. * **portalLogoImageLocation** *(dict) --* The portal's logo image, which is available at a URL. * **id** *(string) --* The ID of the image. * **url** *(string) --* The URL where the image is available. The URL is valid for 15 minutes so that you can view and download the image * **roleArn** *(string) --* The ARN of the service role that allows the portal's users to access your IoT SiteWise resources on your behalf. For more information, see Using service roles for IoT SiteWise Monitor in the *IoT SiteWise User Guide*. * **portalAuthMode** *(string) --* The service to use to authenticate users to the portal. * **notificationSenderEmail** *(string) --* The email address that sends alarm notifications. * **alarms** *(dict) --* Contains the configuration information of an alarm created in an IoT SiteWise Monitor portal. * **alarmRoleArn** *(string) --* The ARN of the IAM role that allows the alarm to perform actions and access Amazon Web Services resources and services, such as IoT Events. * **notificationLambdaArn** *(string) --* The ARN of the Lambda function that manages alarm notifications. For more information, see Managing alarm notifications in the *IoT Events Developer Guide*. * **portalType** *(string) --* Define the type of portal. The value for IoT SiteWise Monitor (Classic) is "SITEWISE_PORTAL_V1". The value for IoT SiteWise Monitor (AI-aware) is "SITEWISE_PORTAL_V2". * **portalTypeConfiguration** *(dict) --* The configuration entry associated with the specific portal type. The value for IoT SiteWise Monitor (Classic) is "SITEWISE_PORTAL_V1". The value for IoT SiteWise Monitor (AI-aware) is "SITEWISE_PORTAL_V2". * *(string) --* * *(dict) --* The configuration entry associated with the specific portal type. The "portalTypeConfiguration" is a map of the "portalTypeKey" to the "PortalTypeEntry". * **portalTools** *(list) --* The array of tools associated with the specified portal type. The possible values are "ASSISTANT" and "DASHBOARD". * *(string) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / disassociate_time_series_from_asset_property disassociate_time_series_from_asset_property ******************************************** IoTSiteWise.Client.disassociate_time_series_from_asset_property(**kwargs) Disassociates a time series (data stream) from an asset property. See also: AWS API Documentation **Request Syntax** response = client.disassociate_time_series_from_asset_property( alias='string', assetId='string', propertyId='string', clientToken='string' ) Parameters: * **alias** (*string*) -- **[REQUIRED]** The alias that identifies the time series. * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **propertyId** (*string*) -- **[REQUIRED]** The ID of the asset property. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Returns: None **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / describe_computation_model_execution_summary describe_computation_model_execution_summary ******************************************** IoTSiteWise.Client.describe_computation_model_execution_summary(**kwargs) Retrieves information about the execution summary of a computation model. See also: AWS API Documentation **Request Syntax** response = client.describe_computation_model_execution_summary( computationModelId='string', resolveToResourceType='ASSET', resolveToResourceId='string' ) Parameters: * **computationModelId** (*string*) -- **[REQUIRED]** The ID of the computation model. * **resolveToResourceType** (*string*) -- The type of the resolved resource. * **resolveToResourceId** (*string*) -- The ID of the resolved resource. Return type: dict Returns: **Response Syntax** { 'computationModelId': 'string', 'resolveTo': { 'assetId': 'string' }, 'computationModelExecutionSummary': { 'string': 'string' } } **Response Structure** * *(dict) --* * **computationModelId** *(string) --* The ID of the computation model. * **resolveTo** *(dict) --* The detailed resource this execution summary resolves to. * **assetId** *(string) --* The ID of the asset that the resource resolves to. * **computationModelExecutionSummary** *(dict) --* Contains the execution summary of the computation model. * *(string) --* * *(string) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / describe_asset describe_asset ************** IoTSiteWise.Client.describe_asset(**kwargs) Retrieves information about an asset. See also: AWS API Documentation **Request Syntax** response = client.describe_asset( assetId='string', excludeProperties=True|False ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **excludeProperties** (*boolean*) -- Whether or not to exclude asset properties from the response. Return type: dict Returns: **Response Syntax** { 'assetId': 'string', 'assetExternalId': 'string', 'assetArn': 'string', 'assetName': 'string', 'assetModelId': 'string', 'assetProperties': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'alias': 'string', 'notification': { 'topic': 'string', 'state': 'ENABLED'|'DISABLED' }, 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'assetHierarchies': [ { 'id': 'string', 'externalId': 'string', 'name': 'string' }, ], 'assetCompositeModels': [ { 'name': 'string', 'description': 'string', 'type': 'string', 'properties': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'alias': 'string', 'notification': { 'topic': 'string', 'state': 'ENABLED'|'DISABLED' }, 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'id': 'string', 'externalId': 'string' }, ], 'assetCreationDate': datetime(2015, 1, 1), 'assetLastUpdateDate': datetime(2015, 1, 1), 'assetStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'assetDescription': 'string', 'assetCompositeModelSummaries': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'type': 'string', 'description': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ] } **Response Structure** * *(dict) --* * **assetId** *(string) --* The ID of the asset, in UUID format. * **assetExternalId** *(string) --* The external ID of the asset, if any. * **assetArn** *(string) --* The ARN of the asset, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:asset/${ AssetId}" * **assetName** *(string) --* The name of the asset. * **assetModelId** *(string) --* The ID of the asset model that was used to create the asset. * **assetProperties** *(list) --* The list of asset properties for the asset. This object doesn't include properties that you define in composite models. You can find composite model properties in the "assetCompositeModels" object. * *(dict) --* Contains asset property information. * **id** *(string) --* The ID of the asset property. * **externalId** *(string) --* The external ID of the asset property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the property. * **alias** *(string) --* The alias that identifies the property, such as an OPC- UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **notification** *(dict) --* The asset property's notification topic and state. For more information, see UpdateAssetProperty. * **topic** *(string) --* The MQTT topic to which IoT SiteWise publishes property value update notifications. * **state** *(string) --* The current notification state. * **dataType** *(string) --* The data type of the asset property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit (such as "Newtons" or "RPM") of the asset property. * **path** *(list) --* The structured path to the property from the root of the asset. * *(dict) --* Represents one level between a property and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **assetHierarchies** *(list) --* A list of asset hierarchies that each contain a "hierarchyId". A hierarchy specifies allowed parent/child asset relationships. * *(dict) --* Describes an asset hierarchy that contains a hierarchy's name and ID. * **id** *(string) --* The ID of the hierarchy. This ID is a "hierarchyId". * **externalId** *(string) --* The external ID of the hierarchy, if it has one. When you update an asset hierarchy, you may assign an external ID if it doesn't already have one. You can't change the external ID of an asset hierarchy that already has one. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The hierarchy name provided in the CreateAssetModel or UpdateAssetModel API operation. * **assetCompositeModels** *(list) --* The composite models for the asset. * *(dict) --* Contains information about a composite model in an asset. This object contains the asset's properties that you define in the composite model. * **name** *(string) --* The name of the composite model. * **description** *(string) --* The description of the composite model. * **type** *(string) --* The type of the composite model. For alarm composite models, this type is "AWS/ALARM". * **properties** *(list) --* The asset properties that this composite model defines. * *(dict) --* Contains asset property information. * **id** *(string) --* The ID of the asset property. * **externalId** *(string) --* The external ID of the asset property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the property. * **alias** *(string) --* The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **notification** *(dict) --* The asset property's notification topic and state. For more information, see UpdateAssetProperty. * **topic** *(string) --* The MQTT topic to which IoT SiteWise publishes property value update notifications. * **state** *(string) --* The current notification state. * **dataType** *(string) --* The data type of the asset property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit (such as "Newtons" or "RPM") of the asset property. * **path** *(list) --* The structured path to the property from the root of the asset. * *(dict) --* Represents one level between a property and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **id** *(string) --* The ID of the asset composite model. * **externalId** *(string) --* The external ID of the asset composite model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **assetCreationDate** *(datetime) --* The date the asset was created, in Unix epoch time. * **assetLastUpdateDate** *(datetime) --* The date the asset was last updated, in Unix epoch time. * **assetStatus** *(dict) --* The current status of the asset, which contains a state and any error message. * **state** *(string) --* The current status of the asset. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **assetDescription** *(string) --* A description for the asset. * **assetCompositeModelSummaries** *(list) --* The list of the immediate child custom composite model summaries for the asset. * *(dict) --* Contains a summary of the composite model for a specific asset. * **id** *(string) --* The ID of the composite model that this summary describes. * **externalId** *(string) --* An external ID to assign to the asset model. If the composite model is a derived composite model, or one nested inside a component model, you can only set the external ID using "UpdateAssetModelCompositeModel" and specifying the derived ID of the model or property from the created model it's a part of. * **name** *(string) --* The name of the composite model that this summary describes. * **type** *(string) --* The type of asset model. * **ASSET_MODEL** – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model. * **COMPONENT_MODEL** – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model. * **description** *(string) --* A description of the composite model that this summary describes. * **path** *(list) --* The path that includes all the components of the asset model for the asset. * *(dict) --* Represents one level between a composite model and the root of the asset. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_project delete_project ************** IoTSiteWise.Client.delete_project(**kwargs) Deletes a project from IoT SiteWise Monitor. See also: AWS API Documentation **Request Syntax** response = client.delete_project( projectId='string', clientToken='string' ) Parameters: * **projectId** (*string*) -- **[REQUIRED]** The ID of the project. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_asset_model_properties list_asset_model_properties *************************** IoTSiteWise.Client.list_asset_model_properties(**kwargs) Retrieves a paginated list of properties associated with an asset model. If you update properties associated with the model before you finish listing all the properties, you need to start all over again. See also: AWS API Documentation **Request Syntax** response = client.list_asset_model_properties( assetModelId='string', nextToken='string', maxResults=123, filter='ALL'|'BASE', assetModelVersion='string' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. If not specified, the default value is 50. * **filter** (*string*) -- Filters the requested list of asset model properties. You can choose one of the following options: * "ALL" – The list includes all asset model properties for a given asset model ID. * "BASE" – The list includes only base asset model properties for a given asset model ID. Default: "BASE" * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'assetModelPropertySummaries': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'assetModelCompositeModelId': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ], 'interfaceSummaries': [ { 'interfaceAssetModelId': 'string', 'interfaceAssetModelPropertyId': 'string' }, ] }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **assetModelPropertySummaries** *(list) --* A list that summarizes the properties associated with the specified asset model. * *(dict) --* Contains a summary of a property associated with a model. This includes information about which interfaces the property belongs to, if any. * **id** *(string) --* The ID of the property. * **externalId** *(string) --* The external ID of the property. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the property. * **dataType** *(string) --* The data type of the property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit (such as "Newtons" or "RPM") of the property. * **type** *(dict) --* Contains a property type, which can be one of "attribute", "measurement", "metric", or "transform". * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* The forwarding configuration for the given measurement property. * **state** *(string) --* The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* The compute location for the given metric property. * **assetModelCompositeModelId** *(string) --* The ID of the composite model that contains the asset model property. * **path** *(list) --* The structured path to the property from the root of the asset model. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **interfaceSummaries** *(list) --* A list of interface summaries that describe which interfaces this property belongs to, including the interface asset model ID and the corresponding property ID in the interface. * *(dict) --* Contains summary information about an interface that a property belongs to. * **interfaceAssetModelId** *(string) --* The ID of the interface asset model that contains this property. * **interfaceAssetModelPropertyId** *(string) --* The ID of the property in the interface asset model that corresponds to this property. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_dashboard delete_dashboard **************** IoTSiteWise.Client.delete_dashboard(**kwargs) Deletes a dashboard from IoT SiteWise Monitor. See also: AWS API Documentation **Request Syntax** response = client.delete_dashboard( dashboardId='string', clientToken='string' ) Parameters: * **dashboardId** (*string*) -- **[REQUIRED]** The ID of the dashboard to delete. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_portals list_portals ************ IoTSiteWise.Client.list_portals(**kwargs) Retrieves a paginated list of IoT SiteWise Monitor portals. See also: AWS API Documentation **Request Syntax** response = client.list_portals( nextToken='string', maxResults=123 ) Parameters: * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 Return type: dict Returns: **Response Syntax** { 'portalSummaries': [ { 'id': 'string', 'name': 'string', 'description': 'string', 'startUrl': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'roleArn': 'string', 'status': { 'state': 'CREATING'|'PENDING'|'UPDATING'|'DELETING'|'ACTIVE'|'FAILED', 'error': { 'code': 'INTERNAL_FAILURE'|'VALIDATION_ERROR'|'LIMIT_EXCEEDED', 'message': 'string' } }, 'portalType': 'SITEWISE_PORTAL_V1'|'SITEWISE_PORTAL_V2' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **portalSummaries** *(list) --* A list that summarizes each portal. * *(dict) --* Contains a portal summary. * **id** *(string) --* The ID of the portal. * **name** *(string) --* The name of the portal. * **description** *(string) --* The portal's description. * **startUrl** *(string) --* The URL for the IoT SiteWise Monitor portal. You can use this URL to access portals that use IAM Identity Center for authentication. For portals that use IAM for authentication, you must use the IoT SiteWise console to get a URL that you can use to access the portal. * **creationDate** *(datetime) --* The date the portal was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the portal was last updated, in Unix epoch time. * **roleArn** *(string) --* The ARN of the service role that allows the portal's users to access your IoT SiteWise resources on your behalf. For more information, see Using service roles for IoT SiteWise Monitor in the *IoT SiteWise User Guide*. * **status** *(dict) --* Contains information about the current status of a portal. * **state** *(string) --* The current state of the portal. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **portalType** *(string) --* Define the type of portal. The value for IoT SiteWise Monitor (Classic) is "SITEWISE_PORTAL_V1". The value for IoT SiteWise Monitor (AI-aware) is "SITEWISE_PORTAL_V2". * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / create_project create_project ************** IoTSiteWise.Client.create_project(**kwargs) Creates a project in the specified portal. Note: Make sure that the project name and description don't contain confidential information. See also: AWS API Documentation **Request Syntax** response = client.create_project( portalId='string', projectName='string', projectDescription='string', clientToken='string', tags={ 'string': 'string' } ) Parameters: * **portalId** (*string*) -- **[REQUIRED]** The ID of the portal in which to create the project. * **projectName** (*string*) -- **[REQUIRED]** A friendly name for the project. * **projectDescription** (*string*) -- A description for the project. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **tags** (*dict*) -- A list of key-value pairs that contain metadata for the project. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'projectId': 'string', 'projectArn': 'string' } **Response Structure** * *(dict) --* * **projectId** *(string) --* The ID of the project. * **projectArn** *(string) --* The ARN of the project, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:project/ ${ProjectId}" **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" IoTSiteWise / Client / list_access_policies list_access_policies ******************** IoTSiteWise.Client.list_access_policies(**kwargs) Retrieves a paginated list of access policies for an identity (an IAM Identity Center user, an IAM Identity Center group, or an IAM user) or an IoT SiteWise Monitor resource (a portal or project). See also: AWS API Documentation **Request Syntax** response = client.list_access_policies( identityType='USER'|'GROUP'|'IAM', identityId='string', resourceType='PORTAL'|'PROJECT', resourceId='string', iamArn='string', nextToken='string', maxResults=123 ) Parameters: * **identityType** (*string*) -- The type of identity (IAM Identity Center user, IAM Identity Center group, or IAM user). This parameter is required if you specify "identityId". * **identityId** (*string*) -- The ID of the identity. This parameter is required if you specify "USER" or "GROUP" for "identityType". * **resourceType** (*string*) -- The type of resource (portal or project). This parameter is required if you specify "resourceId". * **resourceId** (*string*) -- The ID of the resource. This parameter is required if you specify "resourceType". * **iamArn** (*string*) -- The ARN of the IAM user. For more information, see IAM ARNs in the *IAM User Guide*. This parameter is required if you specify "IAM" for "identityType". * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 Return type: dict Returns: **Response Syntax** { 'accessPolicySummaries': [ { 'id': 'string', 'identity': { 'user': { 'id': 'string' }, 'group': { 'id': 'string' }, 'iamUser': { 'arn': 'string' }, 'iamRole': { 'arn': 'string' } }, 'resource': { 'portal': { 'id': 'string' }, 'project': { 'id': 'string' } }, 'permission': 'ADMINISTRATOR'|'VIEWER', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1) }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **accessPolicySummaries** *(list) --* A list that summarizes each access policy. * *(dict) --* Contains an access policy that defines an identity's access to an IoT SiteWise Monitor resource. * **id** *(string) --* The ID of the access policy. * **identity** *(dict) --* The identity (an IAM Identity Center user, an IAM Identity Center group, or an IAM user). * **user** *(dict) --* An IAM Identity Center user identity. * **id** *(string) --* The IAM Identity Center ID of the user. * **group** *(dict) --* An IAM Identity Center group identity. * **id** *(string) --* The IAM Identity Center ID of the group. * **iamUser** *(dict) --* An IAM user identity. * **arn** *(string) --* The ARN of the IAM user. For more information, see IAM ARNs in the *IAM User Guide*. Note: If you delete the IAM user, access policies that contain this identity include an empty "arn". You can delete the access policy for the IAM user that no longer exists. * **iamRole** *(dict) --* An IAM role identity. * **arn** *(string) --* The ARN of the IAM role. For more information, see IAM ARNs in the *IAM User Guide*. * **resource** *(dict) --* The IoT SiteWise Monitor resource (a portal or project). * **portal** *(dict) --* A portal resource. * **id** *(string) --* The ID of the portal. * **project** *(dict) --* A project resource. * **id** *(string) --* The ID of the project. * **permission** *(string) --* The permissions for the access policy. Note that a project "ADMINISTRATOR" is also known as a project owner. * **creationDate** *(datetime) --* The date the access policy was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the access policy was last updated, in Unix epoch time. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / update_asset_property update_asset_property ********************* IoTSiteWise.Client.update_asset_property(**kwargs) Updates an asset property's alias and notification state. Warning: This operation overwrites the property's existing alias and notification state. To keep your existing property's alias or notification state, you must include the existing values in the UpdateAssetProperty request. For more information, see DescribeAssetProperty. See also: AWS API Documentation **Request Syntax** response = client.update_asset_property( assetId='string', propertyId='string', propertyAlias='string', propertyNotificationState='ENABLED'|'DISABLED', clientToken='string', propertyUnit='string' ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset to be updated. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **propertyId** (*string*) -- **[REQUIRED]** The ID of the asset property to be updated. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **propertyAlias** (*string*) -- The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. If you omit this parameter, the alias is removed from the property. * **propertyNotificationState** (*string*) -- The MQTT notification state (enabled or disabled) for this asset property. When the notification state is enabled, IoT SiteWise publishes property value updates to a unique MQTT topic. For more information, see Interacting with other services in the *IoT SiteWise User Guide*. If you omit this parameter, the notification state is set to "DISABLED". * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **propertyUnit** (*string*) -- The unit of measure (such as Newtons or RPM) of the asset property. If you don't specify a value for this parameter, the service uses the value of the "assetModelProperty" in the asset model. Returns: None **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / list_assets list_assets *********** IoTSiteWise.Client.list_assets(**kwargs) Retrieves a paginated list of asset summaries. You can use this operation to do the following: * List assets based on a specific asset model. * List top-level assets. You can't use this operation to list all assets. To retrieve summaries for all of your assets, use ListAssetModels to get all of your asset model IDs. Then, use ListAssets to get all assets for each asset model. See also: AWS API Documentation **Request Syntax** response = client.list_assets( nextToken='string', maxResults=123, assetModelId='string', filter='ALL'|'TOP_LEVEL' ) Parameters: * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 * **assetModelId** (*string*) -- The ID of the asset model by which to filter the list of assets. This parameter is required if you choose "ALL" for "filter". This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **filter** (*string*) -- The filter for the requested list of assets. Choose one of the following options: * "ALL" – The list includes all assets for a given asset model ID. The "assetModelId" parameter is required if you filter by "ALL". * "TOP_LEVEL" – The list includes only top-level assets in the asset hierarchy tree. Default: "ALL" Return type: dict Returns: **Response Syntax** { 'assetSummaries': [ { 'id': 'string', 'externalId': 'string', 'arn': 'string', 'name': 'string', 'assetModelId': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'hierarchies': [ { 'id': 'string', 'externalId': 'string', 'name': 'string' }, ], 'description': 'string' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **assetSummaries** *(list) --* A list that summarizes each asset. * *(dict) --* Contains a summary of an asset. * **id** *(string) --* The ID of the asset, in UUID format. * **externalId** *(string) --* The external ID of the asset. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **arn** *(string) --* The ARN of the asset, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:asse t/${AssetId}" * **name** *(string) --* The name of the asset. * **assetModelId** *(string) --* The ID of the asset model used to create this asset. * **creationDate** *(datetime) --* The date the asset was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the asset was last updated, in Unix epoch time. * **status** *(dict) --* The current status of the asset. * **state** *(string) --* The current status of the asset. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **hierarchies** *(list) --* A list of asset hierarchies that each contain a "hierarchyId". A hierarchy specifies allowed parent/child asset relationships. * *(dict) --* Describes an asset hierarchy that contains a hierarchy's name and ID. * **id** *(string) --* The ID of the hierarchy. This ID is a "hierarchyId". * **externalId** *(string) --* The external ID of the hierarchy, if it has one. When you update an asset hierarchy, you may assign an external ID if it doesn't already have one. You can't change the external ID of an asset hierarchy that already has one. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The hierarchy name provided in the CreateAssetModel or UpdateAssetModel API operation. * **description** *(string) --* A description for the asset. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_datasets list_datasets ************* IoTSiteWise.Client.list_datasets(**kwargs) Retrieves a paginated list of datasets for a specific target resource. See also: AWS API Documentation **Request Syntax** response = client.list_datasets( sourceType='KENDRA', nextToken='string', maxResults=123 ) Parameters: * **sourceType** (*string*) -- **[REQUIRED]** The type of data source for the dataset. * **nextToken** (*string*) -- The token for the next set of results, or null if there are no additional results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Return type: dict Returns: **Response Syntax** { 'datasetSummaries': [ { 'id': 'string', 'arn': 'string', 'name': 'string', 'description': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **datasetSummaries** *(list) --* A list that summarizes the dataset response. * *(dict) --* The summary details for the dataset. * **id** *(string) --* The ID of the dataset. * **arn** *(string) --* The ARN of the dataset. The format is "arn:${Partition} :iotsitewise:${Region}:${Account}:dataset/${DatasetId}". * **name** *(string) --* The name of the dataset. * **description** *(string) --* A description about the dataset, and its functionality. * **creationDate** *(datetime) --* The dataset creation date, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the dataset was last updated, in Unix epoch time. * **status** *(dict) --* The status of the dataset. This contains the state and any error messages. The state is "ACTIVE" when ready to use. * **state** *(string) --* The current status of the dataset. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / create_bulk_import_job create_bulk_import_job ********************** IoTSiteWise.Client.create_bulk_import_job(**kwargs) Defines a job to ingest data to IoT SiteWise from Amazon S3. For more information, see Create a bulk import job (CLI) in the *Amazon Simple Storage Service User Guide*. Warning: Before you create a bulk import job, you must enable IoT SiteWise warm tier or IoT SiteWise cold tier. For more information about how to configure storage settings, see PutStorageConfiguration.Bulk import is designed to store historical data to IoT SiteWise. * Newly ingested data in the hot tier triggers notifications and computations. * After data moves from the hot tier to the warm or cold tier based on retention settings, it does not trigger computations or notifications. * Data older than 7 days does not trigger computations or notifications. See also: AWS API Documentation **Request Syntax** response = client.create_bulk_import_job( jobName='string', jobRoleArn='string', files=[ { 'bucket': 'string', 'key': 'string', 'versionId': 'string' }, ], errorReportLocation={ 'bucket': 'string', 'prefix': 'string' }, jobConfiguration={ 'fileFormat': { 'csv': { 'columnNames': [ 'ALIAS'|'ASSET_ID'|'PROPERTY_ID'|'DATA_TYPE'|'TIMESTAMP_SECONDS'|'TIMESTAMP_NANO_OFFSET'|'QUALITY'|'VALUE', ] }, 'parquet': {} } }, adaptiveIngestion=True|False, deleteFilesAfterImport=True|False ) Parameters: * **jobName** (*string*) -- **[REQUIRED]** The unique name that helps identify the job request. * **jobRoleArn** (*string*) -- **[REQUIRED]** The ARN of the IAM role that allows IoT SiteWise to read Amazon S3 data. * **files** (*list*) -- **[REQUIRED]** The files in the specified Amazon S3 bucket that contain your data. * *(dict) --* The file in Amazon S3 where your data is saved. * **bucket** *(string) --* **[REQUIRED]** The name of the Amazon S3 bucket from which data is imported. * **key** *(string) --* **[REQUIRED]** The key of the Amazon S3 object that contains your data. Each object has a key that is a unique identifier. Each object has exactly one key. * **versionId** *(string) --* The version ID to identify a specific version of the Amazon S3 object that contains your data. * **errorReportLocation** (*dict*) -- **[REQUIRED]** The Amazon S3 destination where errors associated with the job creation request are saved. * **bucket** *(string) --* **[REQUIRED]** The name of the Amazon S3 bucket to which errors associated with the bulk import job are sent. * **prefix** *(string) --* **[REQUIRED]** Amazon S3 uses the prefix as a folder name to organize data in the bucket. Each Amazon S3 object has a key that is its unique identifier in the bucket. Each object in a bucket has exactly one key. The prefix must end with a forward slash (/). For more information, see Organizing objects using prefixes in the *Amazon Simple Storage Service User Guide*. * **jobConfiguration** (*dict*) -- **[REQUIRED]** Contains the configuration information of a job, such as the file format used to save data in Amazon S3. * **fileFormat** *(dict) --* **[REQUIRED]** The file format of the data in S3. * **csv** *(dict) --* The file is in .CSV format. * **columnNames** *(list) --* **[REQUIRED]** The column names specified in the .csv file. * *(string) --* * **parquet** *(dict) --* The file is in parquet format. * **adaptiveIngestion** (*boolean*) -- If set to true, ingest new data into IoT SiteWise storage. Measurements with notifications, metrics and transforms are computed. If set to false, historical data is ingested into IoT SiteWise as is. * **deleteFilesAfterImport** (*boolean*) -- If set to true, your data files is deleted from S3, after ingestion into IoT SiteWise storage. Return type: dict Returns: **Response Syntax** { 'jobId': 'string', 'jobName': 'string', 'jobStatus': 'PENDING'|'CANCELLED'|'RUNNING'|'COMPLETED'|'FAILED'|'COMPLETED_WITH_FAILURES' } **Response Structure** * *(dict) --* * **jobId** *(string) --* The ID of the job. * **jobName** *(string) --* The unique name that helps identify the job request. * **jobStatus** *(string) --* The status of the bulk import job can be one of following values: * "PENDING" – IoT SiteWise is waiting for the current bulk import job to finish. * "CANCELLED" – The bulk import job has been canceled. * "RUNNING" – IoT SiteWise is processing your request to import your data from Amazon S3. * "COMPLETED" – IoT SiteWise successfully completed your request to import data from Amazon S3. * "FAILED" – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues. * "COMPLETED_WITH_FAILURES" – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / list_interface_relationships list_interface_relationships **************************** IoTSiteWise.Client.list_interface_relationships(**kwargs) Retrieves a paginated list of asset models that have a specific interface asset model applied to them. See also: AWS API Documentation **Request Syntax** response = client.list_interface_relationships( interfaceAssetModelId='string', nextToken='string', maxResults=123 ) Parameters: * **interfaceAssetModelId** (*string*) -- **[REQUIRED]** The ID of the interface asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 Return type: dict Returns: **Response Syntax** { 'interfaceRelationshipSummaries': [ { 'id': 'string' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **interfaceRelationshipSummaries** *(list) --* A list that summarizes each interface relationship. * *(dict) --* Contains summary information about an interface relationship, which defines how an interface is applied to an asset model. This summary provides the essential identifiers needed to retrieve detailed information about the relationship. * **id** *(string) --* The ID of the asset model that has the interface applied to it. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_asset delete_asset ************ IoTSiteWise.Client.delete_asset(**kwargs) Deletes an asset. This action can't be undone. For more information, see Deleting assets and models in the *IoT SiteWise User Guide*. Note: You can't delete an asset that's associated to another asset. For more information, see DisassociateAssets. See also: AWS API Documentation **Request Syntax** response = client.delete_asset( assetId='string', clientToken='string' ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset to delete. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'assetStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetStatus** *(dict) --* The status of the asset, which contains a state ( "DELETING" after successfully calling this operation) and any error message. * **state** *(string) --* The current status of the asset. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / put_asset_model_interface_relationship put_asset_model_interface_relationship ************************************** IoTSiteWise.Client.put_asset_model_interface_relationship(**kwargs) Creates or updates an interface relationship between an asset model and an interface asset model. This operation applies an interface to an asset model. See also: AWS API Documentation **Request Syntax** response = client.put_asset_model_interface_relationship( assetModelId='string', interfaceAssetModelId='string', propertyMappingConfiguration={ 'matchByPropertyName': True|False, 'createMissingProperty': True|False, 'overrides': [ { 'assetModelPropertyId': 'string', 'interfaceAssetModelPropertyId': 'string' }, ] }, clientToken='string' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID. * **interfaceAssetModelId** (*string*) -- **[REQUIRED]** The ID of the interface asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID. * **propertyMappingConfiguration** (*dict*) -- **[REQUIRED]** The configuration for mapping properties from the interface asset model to the asset model where the interface is applied. This configuration controls how properties are matched and created during the interface application process. * **matchByPropertyName** *(boolean) --* If true, properties are matched by name between the interface asset model and the asset model where the interface is applied. * **createMissingProperty** *(boolean) --* If true, missing properties from the interface asset model are automatically created in the asset model where the interface is applied. * **overrides** *(list) --* A list of specific property mappings that override the automatic mapping by name when an interface is applied to an asset model. * *(dict) --* Maps a property from an interface asset model to a property in the asset model where the interface is applied. * **assetModelPropertyId** *(string) --* **[REQUIRED]** The ID of the property in the asset model where the interface is applied. * **interfaceAssetModelPropertyId** *(string) --* **[REQUIRED]** The ID of the property in the interface asset model. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'assetModelId': 'string', 'interfaceAssetModelId': 'string', 'assetModelArn': 'string', 'assetModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetModelId** *(string) --* The ID of the asset model. * **interfaceAssetModelId** *(string) --* The ID of the interface asset model. * **assetModelArn** *(string) --* The ARN of the asset model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:asset- model/${AssetModelId}" * **assetModelStatus** *(dict) --* Contains current status information for an asset model. For more information, see Asset and model states in the *IoT SiteWise User Guide*. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / associate_time_series_to_asset_property associate_time_series_to_asset_property *************************************** IoTSiteWise.Client.associate_time_series_to_asset_property(**kwargs) Associates a time series (data stream) with an asset property. See also: AWS API Documentation **Request Syntax** response = client.associate_time_series_to_asset_property( alias='string', assetId='string', propertyId='string', clientToken='string' ) Parameters: * **alias** (*string*) -- **[REQUIRED]** The alias that identifies the time series. * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset in which the asset property was created. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **propertyId** (*string*) -- **[REQUIRED]** The ID of the asset property. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Returns: None **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / describe_asset_model_composite_model describe_asset_model_composite_model ************************************ IoTSiteWise.Client.describe_asset_model_composite_model(**kwargs) Retrieves information about an asset model composite model (also known as an asset model component). For more information, see Custom composite models (Components) in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.describe_asset_model_composite_model( assetModelId='string', assetModelCompositeModelId='string', assetModelVersion='string' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **assetModelCompositeModelId** (*string*) -- **[REQUIRED]** The ID of a composite model on this asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **assetModelVersion** (*string*) -- The version alias that specifies the latest or active version of the asset model. The details are returned in the response. The default value is "LATEST". See Asset model versions in the *IoT SiteWise User Guide*. Return type: dict Returns: **Response Syntax** { 'assetModelId': 'string', 'assetModelCompositeModelId': 'string', 'assetModelCompositeModelExternalId': 'string', 'assetModelCompositeModelPath': [ { 'id': 'string', 'name': 'string' }, ], 'assetModelCompositeModelName': 'string', 'assetModelCompositeModelDescription': 'string', 'assetModelCompositeModelType': 'string', 'assetModelCompositeModelProperties': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'compositionDetails': { 'compositionRelationship': [ { 'id': 'string' }, ] }, 'assetModelCompositeModelSummaries': [ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'type': 'string', 'description': 'string', 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], 'actionDefinitions': [ { 'actionDefinitionId': 'string', 'actionName': 'string', 'actionType': 'string' }, ] } **Response Structure** * *(dict) --* * **assetModelId** *(string) --* The ID of the asset model, in UUID format. * **assetModelCompositeModelId** *(string) --* The ID of a composite model on this asset model. * **assetModelCompositeModelExternalId** *(string) --* The external ID of a composite model on this asset model. * **assetModelCompositeModelPath** *(list) --* The path to the composite model listing the parent composite models. * *(dict) --* Represents one level between a composite model and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **assetModelCompositeModelName** *(string) --* The unique, friendly name for the composite model. * **assetModelCompositeModelDescription** *(string) --* The description for the composite model. * **assetModelCompositeModelType** *(string) --* The composite model type. Valid values are "AWS/ALARM", "CUSTOM", or "AWS/L4E_ANOMALY". * **assetModelCompositeModelProperties** *(list) --* The property definitions of the composite model. * *(dict) --* Contains information about an asset model property. * **id** *(string) --* The ID of the asset model property. * If you are callling UpdateAssetModel to create a *new* property: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * If you are calling UpdateAssetModel to modify an *existing* property: This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **externalId** *(string) --* The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the asset model property. * **dataType** *(string) --* The data type of the asset model property. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit of the asset model property, such as "Newtons" or "RPM". * **type** *(dict) --* The property type (see "PropertyType"). * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* The forwarding configuration for the given measurement property. * **state** *(string) --* The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* The friendly name of the variable to be used in the expression. * **value** *(dict) --* The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* The compute location for the given metric property. * **path** *(list) --* The structured path to the property from the root of the asset model. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **compositionDetails** *(dict) --* Metadata for the composition relationship established by using "composedAssetModelId" in CreateAssetModelCompositeModel. For instance, an array detailing the path of the composition relationship for this composite model. * **compositionRelationship** *(list) --* An array detailing the composition relationship for this composite model. * *(dict) --* Represents a composite model that composed an asset model of type "COMPONENT_MODEL". * **id** *(string) --* The ID of the component. * **assetModelCompositeModelSummaries** *(list) --* The list of composite model summaries for the composite model. * *(dict) --* Contains a summary of the composite model. * **id** *(string) --* The ID of the composite model that this summary describes.. * **externalId** *(string) --* The external ID of a composite model on this asset model. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The name of the composite model that this summary describes.. * **type** *(string) --* The composite model type. Valid values are "AWS/ALARM", "CUSTOM", or "AWS/L4E_ANOMALY". * **description** *(string) --* The description of the composite model that this summary describes.. * **path** *(list) --* The path that includes all the pieces that make up the composite model. * *(dict) --* Represents one level between a composite model and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **actionDefinitions** *(list) --* The available actions for a composite model on this asset model. * *(dict) --* Contains a definition for an action. * **actionDefinitionId** *(string) --* The ID of the action definition. * **actionName** *(string) --* The name of the action definition. * **actionType** *(string) --* The type of the action definition. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / execute_action execute_action ************** IoTSiteWise.Client.execute_action(**kwargs) Executes an action on a target resource. See also: AWS API Documentation **Request Syntax** response = client.execute_action( targetResource={ 'assetId': 'string', 'computationModelId': 'string' }, actionDefinitionId='string', actionPayload={ 'stringValue': 'string' }, clientToken='string', resolveTo={ 'assetId': 'string' } ) Parameters: * **targetResource** (*dict*) -- **[REQUIRED]** The resource the action will be taken on. * **assetId** *(string) --* The ID of the asset, in UUID format. * **computationModelId** *(string) --* The ID of the computation model. * **actionDefinitionId** (*string*) -- **[REQUIRED]** The ID of the action definition. * **actionPayload** (*dict*) -- **[REQUIRED]** The JSON payload of the action. * **stringValue** *(string) --* **[REQUIRED]** The payload of the action in a JSON string. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. * **resolveTo** (*dict*) -- The detailed resource this action resolves to. * **assetId** *(string) --* **[REQUIRED]** The ID of the asset that the resource resolves to. Return type: dict Returns: **Response Syntax** { 'actionId': 'string' } **Response Structure** * *(dict) --* * **actionId** *(string) --* The ID of the action. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / list_composition_relationships list_composition_relationships ****************************** IoTSiteWise.Client.list_composition_relationships(**kwargs) Retrieves a paginated list of composition relationships for an asset model of type "COMPONENT_MODEL". See also: AWS API Documentation **Request Syntax** response = client.list_composition_relationships( assetModelId='string', nextToken='string', maxResults=123 ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 Return type: dict Returns: **Response Syntax** { 'compositionRelationshipSummaries': [ { 'assetModelId': 'string', 'assetModelCompositeModelId': 'string', 'assetModelCompositeModelType': 'string' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **compositionRelationshipSummaries** *(list) --* A list that summarizes each composition relationship. * *(dict) --* Contains a summary of the components of the composite model. * **assetModelId** *(string) --* The ID of the asset model, in UUID format. * **assetModelCompositeModelId** *(string) --* The ID of a composite model on this asset model. * **assetModelCompositeModelType** *(string) --* The composite model type. Valid values are "AWS/ALARM", "CUSTOM", or "AWS/L4E_ANOMALY". * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_computation_model_data_binding_usages list_computation_model_data_binding_usages ****************************************** IoTSiteWise.Client.list_computation_model_data_binding_usages(**kwargs) Lists all data binding usages for computation models. This allows to identify where specific data bindings are being utilized across the computation models. This track dependencies between data sources and computation models. See also: AWS API Documentation **Request Syntax** response = client.list_computation_model_data_binding_usages( dataBindingValueFilter={ 'asset': { 'assetId': 'string' }, 'assetModel': { 'assetModelId': 'string' }, 'assetProperty': { 'assetId': 'string', 'propertyId': 'string' }, 'assetModelProperty': { 'assetModelId': 'string', 'propertyId': 'string' } }, nextToken='string', maxResults=123 ) Parameters: * **dataBindingValueFilter** (*dict*) -- **[REQUIRED]** A filter used to limit the returned data binding usages based on specific data binding values. You can filter by asset, asset model, asset property, or asset model property to find all computation models using these specific data sources. * **asset** *(dict) --* Filter criteria for matching data bindings based on a specific asset. Used to list all data bindings referencing a particular asset or its properties. * **assetId** *(string) --* **[REQUIRED]** The ID of the asset to filter data bindings by. Only data bindings referencing this specific asset are matched. * **assetModel** *(dict) --* Filter criteria for matching data bindings based on a specific asset model. Used to list all data bindings referencing a particular asset model or its properties. * **assetModelId** *(string) --* **[REQUIRED]** The ID of the asset model to filter data bindings by. Only data bindings referemncing this specific asset model are matched. * **assetProperty** *(dict) --* Filter criteria for matching data bindings based on a specific asset property. Used to list all data bindings referencing a particular property of an asset. * **assetId** *(string) --* **[REQUIRED]** The ID of the asset containing the property to filter by. This identifies the specific asset instance containing the property of interest. * **propertyId** *(string) --* **[REQUIRED]** The ID of the property within the asset to filter by. Only data bindings referencing this specific property of the specified asset are matched. * **assetModelProperty** *(dict) --* Filter criteria for matching data bindings based on a specific asset model property. Used to list all data bindings referencing a particular property of an asset model. * **assetModelId** *(string) --* **[REQUIRED]** The ID of the asset model containing the filter property. This identifies the specific asset model that contains the property of interest. * **propertyId** *(string) --* **[REQUIRED]** The ID of the property within the asset model to filter by. Only data bindings referencing this specific property of the specified asset model are matched. * **nextToken** (*string*) -- The token used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results returned for each paginated request. Return type: dict Returns: **Response Syntax** { 'dataBindingUsageSummaries': [ { 'computationModelIds': [ 'string', ], 'matchedDataBinding': { 'value': { 'assetModelProperty': { 'assetModelId': 'string', 'propertyId': 'string' }, 'assetProperty': { 'assetId': 'string', 'propertyId': 'string' } } } }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **dataBindingUsageSummaries** *(list) --* A list of summaries describing the data binding usages across computation models. Each summary includes the computation model IDs and the matched data binding details. * *(dict) --* A summary of how a specific data binding is used across computation models. This tracks dependencies between data sources and computation models, allowing you to understand the impact of changes to data sources. * **computationModelIds** *(list) --* The list of computation model IDs that use this data binding. This allows identification of all computation models affected by changes to the referenced data source. * *(string) --* * **matchedDataBinding** *(dict) --* The data binding matched by the filter criteria. Contains details about specific data binding values used by the computation models. * **value** *(dict) --* The value of the matched data binding. * **assetModelProperty** *(dict) --* Contains information about an "assetModelProperty" binding value. * **assetModelId** *(string) --* The ID of the asset model, in UUID format. * **propertyId** *(string) --* The ID of the asset model property used in data binding value. * **assetProperty** *(dict) --* The asset property value used in the data binding. * **assetId** *(string) --* The ID of the asset containing the property. This identifies the specific asset instance's property value used in the computation model. * **propertyId** *(string) --* The ID of the property within the asset. This identifies the specific property's value used in the computation model. * **nextToken** *(string) --* The token for the next set of paginated results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_asset_model_interface_relationship delete_asset_model_interface_relationship ***************************************** IoTSiteWise.Client.delete_asset_model_interface_relationship(**kwargs) Deletes an interface relationship between an asset model and an interface asset model. See also: AWS API Documentation **Request Syntax** response = client.delete_asset_model_interface_relationship( assetModelId='string', interfaceAssetModelId='string', clientToken='string' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID. * **interfaceAssetModelId** (*string*) -- **[REQUIRED]** The ID of the interface asset model. This can be either the actual ID in UUID format, or else externalId: followed by the external ID. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'assetModelId': 'string', 'interfaceAssetModelId': 'string', 'assetModelArn': 'string', 'assetModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetModelId** *(string) --* The ID of the asset model. * **interfaceAssetModelId** *(string) --* The ID of the interface asset model. * **assetModelArn** *(string) --* The ARN of the asset model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:asset- model/${AssetModelId}" * **assetModelStatus** *(dict) --* Contains current status information for an asset model. For more information, see Asset and model states in the *IoT SiteWise User Guide*. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / update_gateway update_gateway ************** IoTSiteWise.Client.update_gateway(**kwargs) Updates a gateway's name. See also: AWS API Documentation **Request Syntax** response = client.update_gateway( gatewayId='string', gatewayName='string' ) Parameters: * **gatewayId** (*string*) -- **[REQUIRED]** The ID of the gateway to update. * **gatewayName** (*string*) -- **[REQUIRED]** A unique name for the gateway. Returns: None **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / close close ***** IoTSiteWise.Client.close() Closes underlying endpoint connections. IoTSiteWise / Client / list_asset_relationships list_asset_relationships ************************ IoTSiteWise.Client.list_asset_relationships(**kwargs) Retrieves a paginated list of asset relationships for an asset. You can use this operation to identify an asset's root asset and all associated assets between that asset and its root. See also: AWS API Documentation **Request Syntax** response = client.list_asset_relationships( assetId='string', traversalType='PATH_TO_ROOT', nextToken='string', maxResults=123 ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **traversalType** (*string*) -- **[REQUIRED]** The type of traversal to use to identify asset relationships. Choose the following option: * "PATH_TO_ROOT" – Identify the asset's parent assets up to the root asset. The asset that you specify in "assetId" is the first result in the list of "assetRelationshipSummaries", and the root asset is the last result. * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Return type: dict Returns: **Response Syntax** { 'assetRelationshipSummaries': [ { 'hierarchyInfo': { 'parentAssetId': 'string', 'childAssetId': 'string' }, 'relationshipType': 'HIERARCHY' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **assetRelationshipSummaries** *(list) --* A list that summarizes each asset relationship. * *(dict) --* Contains information about assets that are related to one another. * **hierarchyInfo** *(dict) --* The assets that are related through an asset hierarchy. This object is present if the "relationshipType" is "HIERARCHY". * **parentAssetId** *(string) --* The ID of the parent asset in this asset relationship. * **childAssetId** *(string) --* The ID of the child asset in this asset relationship. * **relationshipType** *(string) --* The relationship type of the assets in this relationship. This value is one of the following: * "HIERARCHY" – The assets are related through an asset hierarchy. If you specify this relationship type, this asset relationship includes the "hierarchyInfo" object. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_computation_model delete_computation_model ************************ IoTSiteWise.Client.delete_computation_model(**kwargs) Deletes a computation model. This action can't be undone. See also: AWS API Documentation **Request Syntax** response = client.delete_computation_model( computationModelId='string', clientToken='string' ) Parameters: * **computationModelId** (*string*) -- **[REQUIRED]** The ID of the computation model. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'computationModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **computationModelStatus** *(dict) --* The status of the computation model. It contains a state (DELETING after successfully calling this operation) and any error messages. * **state** *(string) --* The current state of the computation model. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / list_bulk_import_jobs list_bulk_import_jobs ********************* IoTSiteWise.Client.list_bulk_import_jobs(**kwargs) Retrieves a paginated list of bulk import job requests. For more information, see List bulk import jobs (CLI) in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.list_bulk_import_jobs( nextToken='string', maxResults=123, filter='ALL'|'PENDING'|'RUNNING'|'CANCELLED'|'FAILED'|'COMPLETED_WITH_FAILURES'|'COMPLETED' ) Parameters: * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. * **filter** (*string*) -- You can use a filter to select the bulk import jobs that you want to retrieve. Return type: dict Returns: **Response Syntax** { 'jobSummaries': [ { 'id': 'string', 'name': 'string', 'status': 'PENDING'|'CANCELLED'|'RUNNING'|'COMPLETED'|'FAILED'|'COMPLETED_WITH_FAILURES' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **jobSummaries** *(list) --* One or more job summaries to list. * *(dict) --* Contains the job summary information. * **id** *(string) --* The ID of the job. * **name** *(string) --* The unique name that helps identify the job request. * **status** *(string) --* The status of the bulk import job can be one of following values: * "PENDING" – IoT SiteWise is waiting for the current bulk import job to finish. * "CANCELLED" – The bulk import job has been canceled. * "RUNNING" – IoT SiteWise is processing your request to import your data from Amazon S3. * "COMPLETED" – IoT SiteWise successfully completed your request to import data from Amazon S3. * "FAILED" – IoT SiteWise couldn't process your request to import data from Amazon S3. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues. * "COMPLETED_WITH_FAILURES" – IoT SiteWise completed your request to import data from Amazon S3 with errors. You can use logs saved in the specified error report location in Amazon S3 to troubleshoot issues. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_gateways list_gateways ************* IoTSiteWise.Client.list_gateways(**kwargs) Retrieves a paginated list of gateways. See also: AWS API Documentation **Request Syntax** response = client.list_gateways( nextToken='string', maxResults=123 ) Parameters: * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 Return type: dict Returns: **Response Syntax** { 'gatewaySummaries': [ { 'gatewayId': 'string', 'gatewayName': 'string', 'gatewayPlatform': { 'greengrass': { 'groupArn': 'string' }, 'greengrassV2': { 'coreDeviceThingName': 'string', 'coreDeviceOperatingSystem': 'LINUX_AARCH64'|'LINUX_AMD64'|'WINDOWS_AMD64' }, 'siemensIE': { 'iotCoreThingName': 'string' } }, 'gatewayVersion': 'string', 'gatewayCapabilitySummaries': [ { 'capabilityNamespace': 'string', 'capabilitySyncStatus': 'IN_SYNC'|'OUT_OF_SYNC'|'SYNC_FAILED'|'UNKNOWN'|'NOT_APPLICABLE' }, ], 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1) }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **gatewaySummaries** *(list) --* A list that summarizes each gateway. * *(dict) --* Contains a summary of a gateway. * **gatewayId** *(string) --* The ID of the gateway device. * **gatewayName** *(string) --* The name of the gateway. * **gatewayPlatform** *(dict) --* The gateway's platform configuration. You can only specify one platform type in a gateway. (Legacy only) For Greengrass V1 gateways, specify the "greengrass" parameter with a valid Greengrass group ARN. For Greengrass V2 gateways, specify the "greengrassV2" parameter with a valid core device thing name. If creating a V3 gateway ( "gatewayVersion=3"), you must also specify the "coreDeviceOperatingSystem". For Siemens Industrial Edge gateways, specify the "siemensIE" parameter with a valid IoT Core thing name. * **greengrass** *(dict) --* A gateway that runs on IoT Greengrass. * **groupArn** *(string) --* The ARN of the Greengrass group. For more information about how to find a group's ARN, see ListGroups and GetGroup in the *IoT Greengrass V1 API Reference*. * **greengrassV2** *(dict) --* A gateway that runs on IoT Greengrass V2. * **coreDeviceThingName** *(string) --* The name of the IoT thing for your IoT Greengrass V2 core device. * **coreDeviceOperatingSystem** *(string) --* The operating system of the core device in IoT Greengrass V2. Specifying the operating system is required for MQTT-enabled, V3 gateways ( "gatewayVersion" "3") and not applicable for Classic stream, V2 gateways ( "gatewayVersion" "2"). * **siemensIE** *(dict) --* A SiteWise Edge gateway that runs on a Siemens Industrial Edge Device. * **iotCoreThingName** *(string) --* The name of the IoT Thing for your SiteWise Edge gateway. * **gatewayVersion** *(string) --* The version of the gateway. A value of "3" indicates an MQTT-enabled, V3 gateway, while "2" indicates a Classic streams, V2 gateway. * **gatewayCapabilitySummaries** *(list) --* A list of gateway capability summaries that each contain a namespace and status. Each gateway capability defines data sources for the gateway. To retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration. * *(dict) --* Contains a summary of a gateway capability configuration. * **capabilityNamespace** *(string) --* The namespace of the capability configuration. For example, if you configure OPC UA sources for an MQTT-enabled gateway, your OPC-UA capability configuration has the namespace "iotsitewise:opcuacollector:3". * **capabilitySyncStatus** *(string) --* The synchronization status of the gateway capability configuration. The sync status can be one of the following: * "IN_SYNC" - The gateway is running with the latest configuration. * "OUT_OF_SYNC" - The gateway hasn't received the latest configuration. * "SYNC_FAILED" - The gateway rejected the latest configuration. * "UNKNOWN" - The gateway hasn't reported its sync status. * "NOT_APPLICABLE" - The gateway doesn't support this capability. This is most common when integrating partner data sources, because the data integration is handled externally by the partner. * **creationDate** *(datetime) --* The date the gateway was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the gateway was last updated, in Unix epoch time. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / describe_dataset describe_dataset **************** IoTSiteWise.Client.describe_dataset(**kwargs) Retrieves information about a dataset. See also: AWS API Documentation **Request Syntax** response = client.describe_dataset( datasetId='string' ) Parameters: **datasetId** (*string*) -- **[REQUIRED]** The ID of the dataset. Return type: dict Returns: **Response Syntax** { 'datasetId': 'string', 'datasetArn': 'string', 'datasetName': 'string', 'datasetDescription': 'string', 'datasetSource': { 'sourceType': 'KENDRA', 'sourceFormat': 'KNOWLEDGE_BASE', 'sourceDetail': { 'kendra': { 'knowledgeBaseArn': 'string', 'roleArn': 'string' } } }, 'datasetStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'datasetCreationDate': datetime(2015, 1, 1), 'datasetLastUpdateDate': datetime(2015, 1, 1), 'datasetVersion': 'string' } **Response Structure** * *(dict) --* * **datasetId** *(string) --* The ID of the dataset. * **datasetArn** *(string) --* The ARN of the dataset. The format is "arn:${Partition}:iot sitewise:${Region}:${Account}:dataset/${DatasetId}". * **datasetName** *(string) --* The name of the dataset. * **datasetDescription** *(string) --* A description about the dataset, and its functionality. * **datasetSource** *(dict) --* The data source for the dataset. * **sourceType** *(string) --* The type of data source for the dataset. * **sourceFormat** *(string) --* The format of the dataset source associated with the dataset. * **sourceDetail** *(dict) --* The details of the dataset source associated with the dataset. * **kendra** *(dict) --* Contains details about the Kendra dataset source. * **knowledgeBaseArn** *(string) --* The "knowledgeBaseArn" details for the Kendra dataset source. * **roleArn** *(string) --* The "roleARN" details for the Kendra dataset source. * **datasetStatus** *(dict) --* The status of the dataset. This contains the state and any error messages. State is "CREATING" after a successfull call to this API, and any associated error message. The state is "ACTIVE" when ready to use. * **state** *(string) --* The current status of the dataset. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **datasetCreationDate** *(datetime) --* The dataset creation date, in Unix epoch time. * **datasetLastUpdateDate** *(datetime) --* The date the dataset was last updated, in Unix epoch time. * **datasetVersion** *(string) --* The version of the dataset. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / get_asset_property_value_history get_asset_property_value_history ******************************** IoTSiteWise.Client.get_asset_property_value_history(**kwargs) Gets the history of an asset property's values. For more information, see Querying historical values in the *IoT SiteWise User Guide*. To identify an asset property, you must specify one of the following: * The "assetId" and "propertyId" of an asset property. * A "propertyAlias", which is a data stream alias (for example, "/company/windfarm/3/turbine/7/temperature"). To define an asset property's alias, see UpdateAssetProperty. See also: AWS API Documentation **Request Syntax** response = client.get_asset_property_value_history( assetId='string', propertyId='string', propertyAlias='string', startDate=datetime(2015, 1, 1), endDate=datetime(2015, 1, 1), qualities=[ 'GOOD'|'BAD'|'UNCERTAIN', ], timeOrdering='ASCENDING'|'DESCENDING', nextToken='string', maxResults=123 ) Parameters: * **assetId** (*string*) -- The ID of the asset, in UUID format. * **propertyId** (*string*) -- The ID of the asset property, in UUID format. * **propertyAlias** (*string*) -- The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **startDate** (*datetime*) -- The exclusive start of the range from which to query historical data, expressed in seconds in Unix epoch time. * **endDate** (*datetime*) -- The inclusive end of the range from which to query historical data, expressed in seconds in Unix epoch time. * **qualities** (*list*) -- The quality by which to filter asset data. * *(string) --* * **timeOrdering** (*string*) -- The chronological sorting order of the requested information. Default: "ASCENDING" * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. A result set is returned in the two cases, whichever occurs first. * The size of the result set is equal to 4 MB. * The number of data points in the result set is equal to the value of "maxResults". The maximum value of "maxResults" is 20000. Return type: dict Returns: **Response Syntax** { 'assetPropertyValueHistory': [ { 'value': { 'stringValue': 'string', 'integerValue': 123, 'doubleValue': 123.0, 'booleanValue': True|False, 'nullValue': { 'valueType': 'D'|'B'|'S'|'I'|'U' } }, 'timestamp': { 'timeInSeconds': 123, 'offsetInNanos': 123 }, 'quality': 'GOOD'|'BAD'|'UNCERTAIN' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **assetPropertyValueHistory** *(list) --* The asset property's value history. * *(dict) --* Contains asset property value information. * **value** *(dict) --* The value of the asset property (see "Variant"). * **stringValue** *(string) --* Asset property data of type string (sequence of characters). The allowed pattern: "^$|[^u0000-u001Fu007F]+". The max length is 1024. * **integerValue** *(integer) --* Asset property data of type integer (whole number). * **doubleValue** *(float) --* Asset property data of type double (floating point number). The min value is -10^10. The max value is 10^10. Double.NaN is allowed. * **booleanValue** *(boolean) --* Asset property data of type Boolean (true or false). * **nullValue** *(dict) --* The type of null asset property data with BAD and UNCERTAIN qualities. * **valueType** *(string) --* The type of null asset property data. * **timestamp** *(dict) --* The timestamp of the asset property value. * **timeInSeconds** *(integer) --* The timestamp date, in seconds, in the Unix epoch format. Fractional nanosecond data is provided by "offsetInNanos". * **offsetInNanos** *(integer) --* The nanosecond offset from "timeInSeconds". * **quality** *(string) --* The quality of the asset property value. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ServiceUnavailableException" IoTSiteWise / Client / describe_computation_model describe_computation_model ************************** IoTSiteWise.Client.describe_computation_model(**kwargs) Retrieves information about a computation model. See also: AWS API Documentation **Request Syntax** response = client.describe_computation_model( computationModelId='string' ) Parameters: **computationModelId** (*string*) -- **[REQUIRED]** The ID of the computation model. Return type: dict Returns: **Response Syntax** { 'computationModelId': 'string', 'computationModelArn': 'string', 'computationModelName': 'string', 'computationModelDescription': 'string', 'computationModelConfiguration': { 'anomalyDetection': { 'inputProperties': 'string', 'resultProperty': 'string' } }, 'computationModelDataBinding': { 'string': { 'assetModelProperty': { 'assetModelId': 'string', 'propertyId': 'string' }, 'assetProperty': { 'assetId': 'string', 'propertyId': 'string' }, 'list': [ {'... recursive ...'}, ] } }, 'computationModelCreationDate': datetime(2015, 1, 1), 'computationModelLastUpdateDate': datetime(2015, 1, 1), 'computationModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'computationModelVersion': 'string', 'actionDefinitions': [ { 'actionDefinitionId': 'string', 'actionName': 'string', 'actionType': 'string' }, ] } **Response Structure** * *(dict) --* * **computationModelId** *(string) --* The ID of the computation model. * **computationModelArn** *(string) --* The ARN of the computation model, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account }:computation-model/${ComputationModelId}" * **computationModelName** *(string) --* The name of the computation model. * **computationModelDescription** *(string) --* The description of the computation model. * **computationModelConfiguration** *(dict) --* The configuration for the computation model. * **anomalyDetection** *(dict) --* The configuration for the anomaly detection type of computation model. * **inputProperties** *(string) --* Define the variable name associated with input properties, with the following format "${VariableName}". * **resultProperty** *(string) --* Define the variable name associated with the result property, and the following format "${VariableName}". * **computationModelDataBinding** *(dict) --* The data binding for the computation model. Key is a variable name defined in configuration. Value is a "ComputationModelDataBindingValue" referenced by the variable. * *(string) --* * *(dict) --* Contains computation model data binding value information, which can be one of "assetModelProperty", "list". * **assetModelProperty** *(dict) --* Specifies an asset model property data binding value. * **assetModelId** *(string) --* The ID of the asset model, in UUID format. * **propertyId** *(string) --* The ID of the asset model property used in data binding value. * **assetProperty** *(dict) --* The asset property value used for computation model data binding. * **assetId** *(string) --* The ID of the asset containing the property. This identifies the specific asset instance's property value used in the computation model. * **propertyId** *(string) --* The ID of the property within the asset. This identifies the specific property's value used in the computation model. * **list** *(list) --* Specifies a list of data binding value. * *(dict) --* Contains computation model data binding value information, which can be one of "assetModelProperty", "list". * **computationModelCreationDate** *(datetime) --* The model creation date, in Unix epoch time. * **computationModelLastUpdateDate** *(datetime) --* The date the model was last updated, in Unix epoch time. * **computationModelStatus** *(dict) --* The current status of the asset model, which contains a state and an error message if any. * **state** *(string) --* The current state of the computation model. * **error** *(dict) --* Contains the details of an IoT SiteWise error. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **computationModelVersion** *(string) --* The version of the computation model. * **actionDefinitions** *(list) --* The available actions for this computation model. * *(dict) --* Contains a definition for an action. * **actionDefinitionId** *(string) --* The ID of the action definition. * **actionName** *(string) --* The name of the action definition. * **actionType** *(string) --* The type of the action definition. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / create_portal create_portal ************* IoTSiteWise.Client.create_portal(**kwargs) Creates a portal, which can contain projects and dashboards. IoT SiteWise Monitor uses IAM Identity Center or IAM to authenticate portal users and manage user permissions. Note: Before you can sign in to a new portal, you must add at least one identity to that portal. For more information, see Adding or removing portal administrators in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.create_portal( portalName='string', portalDescription='string', portalContactEmail='string', clientToken='string', portalLogoImageFile={ 'data': b'bytes', 'type': 'PNG' }, roleArn='string', tags={ 'string': 'string' }, portalAuthMode='IAM'|'SSO', notificationSenderEmail='string', alarms={ 'alarmRoleArn': 'string', 'notificationLambdaArn': 'string' }, portalType='SITEWISE_PORTAL_V1'|'SITEWISE_PORTAL_V2', portalTypeConfiguration={ 'string': { 'portalTools': [ 'string', ] } } ) Parameters: * **portalName** (*string*) -- **[REQUIRED]** A friendly name for the portal. * **portalDescription** (*string*) -- A description for the portal. * **portalContactEmail** (*string*) -- **[REQUIRED]** The Amazon Web Services administrator's contact email address. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **portalLogoImageFile** (*dict*) -- A logo image to display in the portal. Upload a square, high- resolution image. The image is displayed on a dark background. * **data** *(bytes) --* **[REQUIRED]** The image file contents, represented as a base64-encoded string. The file size must be less than 1 MB. * **type** *(string) --* **[REQUIRED]** The file type of the image. * **roleArn** (*string*) -- **[REQUIRED]** The ARN of a service role that allows the portal's users to access your IoT SiteWise resources on your behalf. For more information, see Using service roles for IoT SiteWise Monitor in the *IoT SiteWise User Guide*. * **tags** (*dict*) -- A list of key-value pairs that contain metadata for the portal. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* * **portalAuthMode** (*string*) -- The service to use to authenticate users to the portal. Choose from the following options: * "SSO" – The portal uses IAM Identity Center to authenticate users and manage user permissions. Before you can create a portal that uses IAM Identity Center, you must enable IAM Identity Center. For more information, see Enabling IAM Identity Center in the *IoT SiteWise User Guide*. This option is only available in Amazon Web Services Regions other than the China Regions. * "IAM" – The portal uses Identity and Access Management to authenticate users and manage user permissions. You can't change this value after you create a portal. Default: "SSO" * **notificationSenderEmail** (*string*) -- The email address that sends alarm notifications. Warning: If you use the IoT Events managed Lambda function to manage your emails, you must verify the sender email address in Amazon SES. * **alarms** (*dict*) -- Contains the configuration information of an alarm created in an IoT SiteWise Monitor portal. You can use the alarm to monitor an asset property and get notified when the asset property value is outside a specified range. For more information, see Monitoring with alarms in the *IoT SiteWise Application Guide*. * **alarmRoleArn** *(string) --* **[REQUIRED]** The ARN of the IAM role that allows the alarm to perform actions and access Amazon Web Services resources and services, such as IoT Events. * **notificationLambdaArn** *(string) --* The ARN of the Lambda function that manages alarm notifications. For more information, see Managing alarm notifications in the *IoT Events Developer Guide*. * **portalType** (*string*) -- Define the type of portal. The value for IoT SiteWise Monitor (Classic) is "SITEWISE_PORTAL_V1". The value for IoT SiteWise Monitor (AI- aware) is "SITEWISE_PORTAL_V2". * **portalTypeConfiguration** (*dict*) -- The configuration entry associated with the specific portal type. The value for IoT SiteWise Monitor (Classic) is "SITEWISE_PORTAL_V1". The value for IoT SiteWise Monitor (AI- aware) is "SITEWISE_PORTAL_V2". * *(string) --* * *(dict) --* The configuration entry associated with the specific portal type. The "portalTypeConfiguration" is a map of the "portalTypeKey" to the "PortalTypeEntry". * **portalTools** *(list) --* The array of tools associated with the specified portal type. The possible values are "ASSISTANT" and "DASHBOARD". * *(string) --* Return type: dict Returns: **Response Syntax** { 'portalId': 'string', 'portalArn': 'string', 'portalStartUrl': 'string', 'portalStatus': { 'state': 'CREATING'|'PENDING'|'UPDATING'|'DELETING'|'ACTIVE'|'FAILED', 'error': { 'code': 'INTERNAL_FAILURE'|'VALIDATION_ERROR'|'LIMIT_EXCEEDED', 'message': 'string' } }, 'ssoApplicationId': 'string' } **Response Structure** * *(dict) --* * **portalId** *(string) --* The ID of the created portal. * **portalArn** *(string) --* The ARN of the portal, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:portal/$ {PortalId}" * **portalStartUrl** *(string) --* The URL for the IoT SiteWise Monitor portal. You can use this URL to access portals that use IAM Identity Center for authentication. For portals that use IAM for authentication, you must use the IoT SiteWise console to get a URL that you can use to access the portal. * **portalStatus** *(dict) --* The status of the portal, which contains a state ( "CREATING" after successfully calling this operation) and any error message. * **state** *(string) --* The current state of the portal. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **ssoApplicationId** *(string) --* The associated IAM Identity Center application ID, if the portal uses IAM Identity Center. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" IoTSiteWise / Client / delete_gateway delete_gateway ************** IoTSiteWise.Client.delete_gateway(**kwargs) Deletes a gateway from IoT SiteWise. When you delete a gateway, some of the gateway's files remain in your gateway's file system. See also: AWS API Documentation **Request Syntax** response = client.delete_gateway( gatewayId='string' ) Parameters: **gatewayId** (*string*) -- **[REQUIRED]** The ID of the gateway to delete. Returns: None **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / delete_portal delete_portal ************* IoTSiteWise.Client.delete_portal(**kwargs) Deletes a portal from IoT SiteWise Monitor. See also: AWS API Documentation **Request Syntax** response = client.delete_portal( portalId='string', clientToken='string' ) Parameters: * **portalId** (*string*) -- **[REQUIRED]** The ID of the portal to delete. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** { 'portalStatus': { 'state': 'CREATING'|'PENDING'|'UPDATING'|'DELETING'|'ACTIVE'|'FAILED', 'error': { 'code': 'INTERNAL_FAILURE'|'VALIDATION_ERROR'|'LIMIT_EXCEEDED', 'message': 'string' } } } **Response Structure** * *(dict) --* * **portalStatus** *(dict) --* The status of the portal, which contains a state ( "DELETING" after successfully calling this operation) and any error message. * **state** *(string) --* The current state of the portal. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / put_logging_options put_logging_options ******************* IoTSiteWise.Client.put_logging_options(**kwargs) Sets logging options for IoT SiteWise. See also: AWS API Documentation **Request Syntax** response = client.put_logging_options( loggingOptions={ 'level': 'ERROR'|'INFO'|'OFF' } ) Parameters: **loggingOptions** (*dict*) -- **[REQUIRED]** The logging options to set. * **level** *(string) --* **[REQUIRED]** The IoT SiteWise logging verbosity level. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" IoTSiteWise / Client / update_asset_model_composite_model update_asset_model_composite_model ********************************** IoTSiteWise.Client.update_asset_model_composite_model(**kwargs) Updates a composite model and all of the assets that were created from the model. Each asset created from the model inherits the updated asset model's property and hierarchy definitions. For more information, see Updating assets and models in the *IoT SiteWise User Guide*. Warning: If you remove a property from a composite asset model, IoT SiteWise deletes all previous data for that property. You can’t change the type or data type of an existing property.To replace an existing composite asset model property with a new one with the same "name", do the following: * Submit an "UpdateAssetModelCompositeModel" request with the entire existing property removed. * Submit a second "UpdateAssetModelCompositeModel" request that includes the new property. The new asset property will have the same "name" as the previous one and IoT SiteWise will generate a new unique "id". See also: AWS API Documentation **Request Syntax** response = client.update_asset_model_composite_model( assetModelId='string', assetModelCompositeModelId='string', assetModelCompositeModelExternalId='string', assetModelCompositeModelDescription='string', assetModelCompositeModelName='string', clientToken='string', assetModelCompositeModelProperties=[ { 'id': 'string', 'externalId': 'string', 'name': 'string', 'dataType': 'STRING'|'INTEGER'|'DOUBLE'|'BOOLEAN'|'STRUCT', 'dataTypeSpec': 'string', 'unit': 'string', 'type': { 'attribute': { 'defaultValue': 'string' }, 'measurement': { 'processingConfig': { 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'transform': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD', 'forwardingConfig': { 'state': 'DISABLED'|'ENABLED' } } }, 'metric': { 'expression': 'string', 'variables': [ { 'name': 'string', 'value': { 'propertyId': 'string', 'hierarchyId': 'string', 'propertyPath': [ { 'id': 'string', 'name': 'string' }, ] } }, ], 'window': { 'tumbling': { 'interval': 'string', 'offset': 'string' } }, 'processingConfig': { 'computeLocation': 'EDGE'|'CLOUD' } } }, 'path': [ { 'id': 'string', 'name': 'string' }, ] }, ], ifMatch='string', ifNoneMatch='string', matchForVersionType='LATEST'|'ACTIVE' ) Parameters: * **assetModelId** (*string*) -- **[REQUIRED]** The ID of the asset model, in UUID format. * **assetModelCompositeModelId** (*string*) -- **[REQUIRED]** The ID of a composite model on this asset model. * **assetModelCompositeModelExternalId** (*string*) -- An external ID to assign to the asset model. You can only set the external ID of the asset model if it wasn't set when it was created, or you're setting it to the exact same thing as when it was created. * **assetModelCompositeModelDescription** (*string*) -- A description for the composite model. * **assetModelCompositeModelName** (*string*) -- **[REQUIRED]** A unique name for the composite model. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **assetModelCompositeModelProperties** (*list*) -- The property definitions of the composite model. For more information, see Inline custom composite models in the *IoT SiteWise User Guide*. You can specify up to 200 properties per composite model. For more information, see Quotas in the *IoT SiteWise User Guide*. * *(dict) --* Contains information about an asset model property. * **id** *(string) --* The ID of the asset model property. * If you are callling UpdateAssetModel to create a *new* property: You can specify its ID here, if desired. IoT SiteWise automatically generates a unique ID for you, so this parameter is never required. However, if you prefer to supply your own ID instead, you can specify it here in UUID format. If you specify your own ID, it must be globally unique. * If you are calling UpdateAssetModel to modify an *existing* property: This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **externalId** *(string) --* The external ID (if any) provided in the CreateAssetModel or UpdateAssetModel operation. You can assign an external ID by specifying this value as part of a call to UpdateAssetModel. However, you can't change the external ID if one is already assigned. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* **[REQUIRED]** The name of the asset model property. * **dataType** *(string) --* **[REQUIRED]** The data type of the asset model property. If you specify "STRUCT", you must also specify "dataTypeSpec" to identify the type of the structure for this property. * **dataTypeSpec** *(string) --* The data type of the structure for this property. This parameter exists on properties that have the "STRUCT" data type. * **unit** *(string) --* The unit of the asset model property, such as "Newtons" or "RPM". * **type** *(dict) --* **[REQUIRED]** The property type (see "PropertyType"). * **attribute** *(dict) --* Specifies an asset attribute property. An attribute generally contains static information, such as the serial number of an IIoT wind turbine. * **defaultValue** *(string) --* The default value of the asset model property attribute. All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see Updating attribute values in the *IoT SiteWise User Guide*. * **measurement** *(dict) --* Specifies an asset measurement property. A measurement represents a device's raw sensor data stream, such as timestamped temperature values or timestamped power values. * **processingConfig** *(dict) --* The processing configuration for the given measurement property. You can configure measurements to be kept at the edge or forwarded to the Amazon Web Services Cloud. By default, measurements are forwarded to the cloud. * **forwardingConfig** *(dict) --* **[REQUIRED]** The forwarding configuration for the given measurement property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **transform** *(dict) --* Specifies an asset transform property. A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. * **expression** *(string) --* **[REQUIRED]** The mathematical expression that defines the transformation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* **[REQUIRED]** The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **processingConfig** *(dict) --* The processing configuration for the given transform property. You can configure transforms to be kept at the edge or forwarded to the Amazon Web Services Cloud. You can also configure transforms to be computed at the edge or in the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given transform property. * **forwardingConfig** *(dict) --* The forwarding configuration for a given property. * **state** *(string) --* **[REQUIRED]** The forwarding state for the given property. * **metric** *(dict) --* Specifies an asset metric property. A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. * **expression** *(string) --* The mathematical expression that defines the metric aggregation function. You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. For more information, see Quotas in the *IoT SiteWise User Guide*. * **variables** *(list) --* The list of variables used in the expression. * *(dict) --* Contains expression variable information. * **name** *(string) --* **[REQUIRED]** The friendly name of the variable to be used in the expression. * **value** *(dict) --* **[REQUIRED]** The variable that identifies an asset property from which to use values. * **propertyId** *(string) --* The ID of the property to use as the variable. You can use the property "name" if it's from the same asset model. If the property has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** *(string) --* The ID of the hierarchy to query for the property ID. You can use the hierarchy's name instead of the hierarchy's ID. If the hierarchy has an external ID, you can specify "externalId:" followed by the external ID. For more information, see Using external IDs in the *IoT SiteWise User Guide*. You use a hierarchy ID instead of a model ID because you can have several hierarchies using the same model and therefore the same "propertyId". For example, you might have separately grouped assets that come from the same asset model. For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **propertyPath** *(list) --* The path of the property. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **window** *(dict) --* **[REQUIRED]** The window (time interval) over which IoT SiteWise computes the metric's aggregation expression. IoT SiteWise computes one data point per "window". * **tumbling** *(dict) --* The tumbling time interval window. * **interval** *(string) --* **[REQUIRED]** The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. IoT SiteWise computes the "1w" interval the end of Sunday at midnight each week (UTC), the "1d" interval at the end of each day at midnight (UTC), the "1h" interval at the end of each hour, and so on. When IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. IoT SiteWise places the computed data point at the end of the interval. * **offset** *(string) --* The offset for the tumbling window. The "offset" parameter accepts the following: * The offset time. For example, if you specify "18h" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The ISO 8601 format. For example, if you specify "PT18H" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. * If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. * The 24-hour clock. For example, if you specify "00:03:00" for "offset", "5m" for "interval", and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). * The offset time zone. For example, if you specify "2021-07-23T18:00-08" for "offset" and "1d" for "interval", IoT SiteWise aggregates data in one of the following ways: * If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. * If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. * **processingConfig** *(dict) --* The processing configuration for the given metric property. You can configure metrics to be computed at the edge or in the Amazon Web Services Cloud. By default, metrics are forwarded to the cloud. * **computeLocation** *(string) --* **[REQUIRED]** The compute location for the given metric property. * **path** *(list) --* The structured path to the property from the root of the asset model. * *(dict) --* Represents one level between a property and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **ifMatch** (*string*) -- The expected current entity tag (ETag) for the asset model’s latest or active version (specified using "matchForVersionType"). The update request is rejected if the tag does not match the latest or active version's current entity tag. See Optimistic locking for asset model writes in the *IoT SiteWise User Guide*. * **ifNoneMatch** (*string*) -- Accepts ***** to reject the update request if an active version (specified using "matchForVersionType" as "ACTIVE") already exists for the asset model. * **matchForVersionType** (*string*) -- Specifies the asset model version type ( "LATEST" or "ACTIVE") used in conjunction with "If-Match" or "If-None-Match" headers to determine the target ETag for the update operation. Return type: dict Returns: **Response Syntax** { 'assetModelCompositeModelPath': [ { 'id': 'string', 'name': 'string' }, ], 'assetModelStatus': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'PROPAGATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } } } **Response Structure** * *(dict) --* * **assetModelCompositeModelPath** *(list) --* The path to the composite model listing the parent composite models. * *(dict) --* Represents one level between a composite model and the root of the asset model. * **id** *(string) --* The ID of the path segment. * **name** *(string) --* The name of the path segment. * **assetModelStatus** *(dict) --* Contains current status information for an asset model. For more information, see Asset and model states in the *IoT SiteWise User Guide*. * **state** *(string) --* The current state of the asset model. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.PreconditionFailedException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" IoTSiteWise / Client / create_gateway create_gateway ************** IoTSiteWise.Client.create_gateway(**kwargs) Creates a gateway, which is a virtual or edge device that delivers industrial data streams from local servers to IoT SiteWise. For more information, see Ingesting data using a gateway in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.create_gateway( gatewayName='string', gatewayPlatform={ 'greengrass': { 'groupArn': 'string' }, 'greengrassV2': { 'coreDeviceThingName': 'string', 'coreDeviceOperatingSystem': 'LINUX_AARCH64'|'LINUX_AMD64'|'WINDOWS_AMD64' }, 'siemensIE': { 'iotCoreThingName': 'string' } }, gatewayVersion='string', tags={ 'string': 'string' } ) Parameters: * **gatewayName** (*string*) -- **[REQUIRED]** A unique name for the gateway. * **gatewayPlatform** (*dict*) -- **[REQUIRED]** The gateway's platform. You can only specify one platform in a gateway. * **greengrass** *(dict) --* A gateway that runs on IoT Greengrass. * **groupArn** *(string) --* **[REQUIRED]** The ARN of the Greengrass group. For more information about how to find a group's ARN, see ListGroups and GetGroup in the *IoT Greengrass V1 API Reference*. * **greengrassV2** *(dict) --* A gateway that runs on IoT Greengrass V2. * **coreDeviceThingName** *(string) --* **[REQUIRED]** The name of the IoT thing for your IoT Greengrass V2 core device. * **coreDeviceOperatingSystem** *(string) --* The operating system of the core device in IoT Greengrass V2. Specifying the operating system is required for MQTT- enabled, V3 gateways ( "gatewayVersion" "3") and not applicable for Classic stream, V2 gateways ( "gatewayVersion" "2"). * **siemensIE** *(dict) --* A SiteWise Edge gateway that runs on a Siemens Industrial Edge Device. * **iotCoreThingName** *(string) --* **[REQUIRED]** The name of the IoT Thing for your SiteWise Edge gateway. * **gatewayVersion** (*string*) -- The version of the gateway to create. Specify "3" to create an MQTT-enabled, V3 gateway and "2" to create a Classic streams, V2 gateway. If not specified, the default is "2" (Classic streams, V2 gateway). Note: When creating a V3 gateway ( "gatewayVersion=3") with the "GreengrassV2" platform, you must also specify the "coreDeviceOperatingSystem" parameter. We recommend creating an MQTT-enabled gateway for self-hosted gateways and Siemens Industrial Edge gateways. For more information on gateway versions, see Use Amazon Web Services IoT SiteWise Edge Edge gateways. * **tags** (*dict*) -- A list of key-value pairs that contain metadata for the gateway. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'gatewayId': 'string', 'gatewayArn': 'string' } **Response Structure** * *(dict) --* * **gatewayId** *(string) --* The ID of the gateway device. You can use this ID when you call other IoT SiteWise API operations. * **gatewayArn** *(string) --* The ARN of the gateway, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:gateway/ ${GatewayId}" **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" IoTSiteWise / Client / delete_access_policy delete_access_policy ******************** IoTSiteWise.Client.delete_access_policy(**kwargs) Deletes an access policy that grants the specified identity access to the specified IoT SiteWise Monitor resource. You can use this operation to revoke access to an IoT SiteWise Monitor resource. See also: AWS API Documentation **Request Syntax** response = client.delete_access_policy( accessPolicyId='string', clientToken='string' ) Parameters: * **accessPolicyId** (*string*) -- **[REQUIRED]** The ID of the access policy to be deleted. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / list_associated_assets list_associated_assets ********************** IoTSiteWise.Client.list_associated_assets(**kwargs) Retrieves a paginated list of associated assets. You can use this operation to do the following: * "CHILD" - List all child assets associated to the asset. * "PARENT" - List the asset's parent asset. See also: AWS API Documentation **Request Syntax** response = client.list_associated_assets( assetId='string', hierarchyId='string', traversalDirection='PARENT'|'CHILD', nextToken='string', maxResults=123 ) Parameters: * **assetId** (*string*) -- **[REQUIRED]** The ID of the asset to query. This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*. * **hierarchyId** (*string*) -- (Optional) If you don't provide a "hierarchyId", all the immediate assets in the "traversalDirection" will be returned. The ID of the hierarchy by which child assets are associated to the asset. (This can be either the actual ID in UUID format, or else "externalId:" followed by the external ID, if it has one. For more information, see Referencing objects with external IDs in the *IoT SiteWise User Guide*.) For more information, see Asset hierarchies in the *IoT SiteWise User Guide*. * **traversalDirection** (*string*) -- The direction to list associated assets. Choose one of the following options: * "CHILD" – The list includes all child assets associated to the asset. * "PARENT" – The list includes the asset's parent asset. Default: "CHILD" * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. Default: 50 Return type: dict Returns: **Response Syntax** { 'assetSummaries': [ { 'id': 'string', 'externalId': 'string', 'arn': 'string', 'name': 'string', 'assetModelId': 'string', 'creationDate': datetime(2015, 1, 1), 'lastUpdateDate': datetime(2015, 1, 1), 'status': { 'state': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING'|'FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string', 'details': [ { 'code': 'INCOMPATIBLE_COMPUTE_LOCATION'|'INCOMPATIBLE_FORWARDING_CONFIGURATION', 'message': 'string' }, ] } }, 'hierarchies': [ { 'id': 'string', 'externalId': 'string', 'name': 'string' }, ], 'description': 'string' }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **assetSummaries** *(list) --* A list that summarizes the associated assets. * *(dict) --* Contains a summary of an associated asset. * **id** *(string) --* The ID of the asset, in UUID format. * **externalId** *(string) --* The external ID of the asset. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **arn** *(string) --* The ARN of the asset, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:asse t/${AssetId}" * **name** *(string) --* The name of the asset. * **assetModelId** *(string) --* The ID of the asset model used to create the asset. * **creationDate** *(datetime) --* The date the asset was created, in Unix epoch time. * **lastUpdateDate** *(datetime) --* The date the asset was last updated, in Unix epoch time. * **status** *(dict) --* The current status of the asset. * **state** *(string) --* The current status of the asset. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **details** *(list) --* A list of detailed errors. * *(dict) --* Contains detailed error information. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **hierarchies** *(list) --* A list of asset hierarchies that each contain a "hierarchyId". A hierarchy specifies allowed parent/child asset relationships. * *(dict) --* Describes an asset hierarchy that contains a hierarchy's name and ID. * **id** *(string) --* The ID of the hierarchy. This ID is a "hierarchyId". * **externalId** *(string) --* The external ID of the hierarchy, if it has one. When you update an asset hierarchy, you may assign an external ID if it doesn't already have one. You can't change the external ID of an asset hierarchy that already has one. For more information, see Using external IDs in the *IoT SiteWise User Guide*. * **name** *(string) --* The hierarchy name provided in the CreateAssetModel or UpdateAssetModel API operation. * **description** *(string) --* A description for the asset. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / tag_resource tag_resource ************ IoTSiteWise.Client.tag_resource(**kwargs) Adds tags to an IoT SiteWise resource. If a tag already exists for the resource, this operation updates the tag's value. See also: AWS API Documentation **Request Syntax** response = client.tag_resource( resourceArn='string', tags={ 'string': 'string' } ) Parameters: * **resourceArn** (*string*) -- **[REQUIRED]** The ARN of the resource to tag. * **tags** (*dict*) -- **[REQUIRED]** A list of key-value pairs that contain metadata for the resource. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.UnauthorizedException" * "IoTSiteWise.Client.exceptions.TooManyTagsException" IoTSiteWise / Client / put_default_encryption_configuration put_default_encryption_configuration ************************************ IoTSiteWise.Client.put_default_encryption_configuration(**kwargs) Sets the default encryption configuration for the Amazon Web Services account. For more information, see Key management in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.put_default_encryption_configuration( encryptionType='SITEWISE_DEFAULT_ENCRYPTION'|'KMS_BASED_ENCRYPTION', kmsKeyId='string' ) Parameters: * **encryptionType** (*string*) -- **[REQUIRED]** The type of encryption used for the encryption configuration. * **kmsKeyId** (*string*) -- The Key ID of the customer managed key used for KMS encryption. This is required if you use "KMS_BASED_ENCRYPTION". Return type: dict Returns: **Response Syntax** { 'encryptionType': 'SITEWISE_DEFAULT_ENCRYPTION'|'KMS_BASED_ENCRYPTION', 'kmsKeyArn': 'string', 'configurationStatus': { 'state': 'ACTIVE'|'UPDATE_IN_PROGRESS'|'UPDATE_FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string' } } } **Response Structure** * *(dict) --* * **encryptionType** *(string) --* The type of encryption used for the encryption configuration. * **kmsKeyArn** *(string) --* The Key ARN of the KMS key used for KMS encryption if you use "KMS_BASED_ENCRYPTION". * **configurationStatus** *(dict) --* The status of the account configuration. This contains the "ConfigurationState". If there is an error, it also contains the "ErrorDetails". * **state** *(string) --* The current state of the configuration. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / batch_get_asset_property_value_history batch_get_asset_property_value_history ************************************** IoTSiteWise.Client.batch_get_asset_property_value_history(**kwargs) Gets the historical values for one or more asset properties. For more information, see Querying historical values in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.batch_get_asset_property_value_history( entries=[ { 'entryId': 'string', 'assetId': 'string', 'propertyId': 'string', 'propertyAlias': 'string', 'startDate': datetime(2015, 1, 1), 'endDate': datetime(2015, 1, 1), 'qualities': [ 'GOOD'|'BAD'|'UNCERTAIN', ], 'timeOrdering': 'ASCENDING'|'DESCENDING' }, ], nextToken='string', maxResults=123 ) Parameters: * **entries** (*list*) -- **[REQUIRED]** The list of asset property historical value entries for the batch get request. You can specify up to 16 entries per request. * *(dict) --* Contains information for an asset property historical value entry that is associated with the BatchGetAssetPropertyValueHistory API. To identify an asset property, you must specify one of the following: * The "assetId" and "propertyId" of an asset property. * A "propertyAlias", which is a data stream alias (for example, "/company/windfarm/3/turbine/7/temperature"). To define an asset property's alias, see UpdateAssetProperty. * **entryId** *(string) --* **[REQUIRED]** The ID of the entry. * **assetId** *(string) --* The ID of the asset in which the asset property was created. * **propertyId** *(string) --* The ID of the asset property, in UUID format. * **propertyAlias** *(string) --* The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **startDate** *(datetime) --* The exclusive start of the range from which to query historical data, expressed in seconds in Unix epoch time. * **endDate** *(datetime) --* The inclusive end of the range from which to query historical data, expressed in seconds in Unix epoch time. * **qualities** *(list) --* The quality by which to filter asset data. * *(string) --* * **timeOrdering** *(string) --* The chronological sorting order of the requested information. Default: "ASCENDING" * **nextToken** (*string*) -- The token to be used for the next set of paginated results. * **maxResults** (*integer*) -- The maximum number of results to return for each paginated request. A result set is returned in the two cases, whichever occurs first. * The size of the result set is equal to 4 MB. * The number of data points in the result set is equal to the value of "maxResults". The maximum value of "maxResults" is 20000. Return type: dict Returns: **Response Syntax** { 'errorEntries': [ { 'errorCode': 'ResourceNotFoundException'|'InvalidRequestException'|'AccessDeniedException', 'errorMessage': 'string', 'entryId': 'string' }, ], 'successEntries': [ { 'entryId': 'string', 'assetPropertyValueHistory': [ { 'value': { 'stringValue': 'string', 'integerValue': 123, 'doubleValue': 123.0, 'booleanValue': True|False, 'nullValue': { 'valueType': 'D'|'B'|'S'|'I'|'U' } }, 'timestamp': { 'timeInSeconds': 123, 'offsetInNanos': 123 }, 'quality': 'GOOD'|'BAD'|'UNCERTAIN' }, ] }, ], 'skippedEntries': [ { 'entryId': 'string', 'completionStatus': 'SUCCESS'|'ERROR', 'errorInfo': { 'errorCode': 'ResourceNotFoundException'|'InvalidRequestException'|'AccessDeniedException', 'errorTimestamp': datetime(2015, 1, 1) } }, ], 'nextToken': 'string' } **Response Structure** * *(dict) --* * **errorEntries** *(list) --* A list of the errors (if any) associated with the batch request. Each error entry contains the "entryId" of the entry that failed. * *(dict) --* A list of the errors (if any) associated with the batch request. Each error entry contains the "entryId" of the entry that failed. * **errorCode** *(string) --* The error code. * **errorMessage** *(string) --* The associated error message. * **entryId** *(string) --* The ID of the entry. * **successEntries** *(list) --* A list of entries that were processed successfully by this batch request. Each success entry contains the "entryId" of the entry that succeeded and the latest query result. * *(dict) --* Contains success information for an entry that is associated with the BatchGetAssetPropertyValueHistory API. * **entryId** *(string) --* The ID of the entry. * **assetPropertyValueHistory** *(list) --* The requested historical values for the specified asset property. * *(dict) --* Contains asset property value information. * **value** *(dict) --* The value of the asset property (see "Variant"). * **stringValue** *(string) --* Asset property data of type string (sequence of characters). The allowed pattern: "^$|[^u0000-u001Fu007F]+". The max length is 1024. * **integerValue** *(integer) --* Asset property data of type integer (whole number). * **doubleValue** *(float) --* Asset property data of type double (floating point number). The min value is -10^10. The max value is 10^10. Double.NaN is allowed. * **booleanValue** *(boolean) --* Asset property data of type Boolean (true or false). * **nullValue** *(dict) --* The type of null asset property data with BAD and UNCERTAIN qualities. * **valueType** *(string) --* The type of null asset property data. * **timestamp** *(dict) --* The timestamp of the asset property value. * **timeInSeconds** *(integer) --* The timestamp date, in seconds, in the Unix epoch format. Fractional nanosecond data is provided by "offsetInNanos". * **offsetInNanos** *(integer) --* The nanosecond offset from "timeInSeconds". * **quality** *(string) --* The quality of the asset property value. * **skippedEntries** *(list) --* A list of entries that were not processed by this batch request. because these entries had been completely processed by previous paginated requests. Each skipped entry contains the "entryId" of the entry that skipped. * *(dict) --* Contains information for an entry that has been processed by the previous BatchGetAssetPropertyValueHistory request. * **entryId** *(string) --* The ID of the entry. * **completionStatus** *(string) --* The completion status of each entry that is associated with the BatchGetAssetPropertyValueHistory API. * **errorInfo** *(dict) --* The error information, such as the error code and the timestamp. * **errorCode** *(string) --* The error code. * **errorTimestamp** *(datetime) --* The date the error occurred, in Unix epoch time. * **nextToken** *(string) --* The token for the next set of results, or null if there are no additional results. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ServiceUnavailableException" IoTSiteWise / Client / update_portal update_portal ************* IoTSiteWise.Client.update_portal(**kwargs) Updates an IoT SiteWise Monitor portal. See also: AWS API Documentation **Request Syntax** response = client.update_portal( portalId='string', portalName='string', portalDescription='string', portalContactEmail='string', portalLogoImage={ 'id': 'string', 'file': { 'data': b'bytes', 'type': 'PNG' } }, roleArn='string', clientToken='string', notificationSenderEmail='string', alarms={ 'alarmRoleArn': 'string', 'notificationLambdaArn': 'string' }, portalType='SITEWISE_PORTAL_V1'|'SITEWISE_PORTAL_V2', portalTypeConfiguration={ 'string': { 'portalTools': [ 'string', ] } } ) Parameters: * **portalId** (*string*) -- **[REQUIRED]** The ID of the portal to update. * **portalName** (*string*) -- **[REQUIRED]** A new friendly name for the portal. * **portalDescription** (*string*) -- A new description for the portal. * **portalContactEmail** (*string*) -- **[REQUIRED]** The Amazon Web Services administrator's contact email address. * **portalLogoImage** (*dict*) -- Contains an image that is one of the following: * An image file. Choose this option to upload a new image. * The ID of an existing image. Choose this option to keep an existing image. * **id** *(string) --* The ID of an existing image. Specify this parameter to keep an existing image. * **file** *(dict) --* Contains an image file. * **data** *(bytes) --* **[REQUIRED]** The image file contents, represented as a base64-encoded string. The file size must be less than 1 MB. * **type** *(string) --* **[REQUIRED]** The file type of the image. * **roleArn** (*string*) -- **[REQUIRED]** The ARN of a service role that allows the portal's users to access your IoT SiteWise resources on your behalf. For more information, see Using service roles for IoT SiteWise Monitor in the *IoT SiteWise User Guide*. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **notificationSenderEmail** (*string*) -- The email address that sends alarm notifications. * **alarms** (*dict*) -- Contains the configuration information of an alarm created in an IoT SiteWise Monitor portal. You can use the alarm to monitor an asset property and get notified when the asset property value is outside a specified range. For more information, see Monitoring with alarms in the *IoT SiteWise Application Guide*. * **alarmRoleArn** *(string) --* **[REQUIRED]** The ARN of the IAM role that allows the alarm to perform actions and access Amazon Web Services resources and services, such as IoT Events. * **notificationLambdaArn** *(string) --* The ARN of the Lambda function that manages alarm notifications. For more information, see Managing alarm notifications in the *IoT Events Developer Guide*. * **portalType** (*string*) -- Define the type of portal. The value for IoT SiteWise Monitor (Classic) is "SITEWISE_PORTAL_V1". The value for IoT SiteWise Monitor (AI- aware) is "SITEWISE_PORTAL_V2". * **portalTypeConfiguration** (*dict*) -- The configuration entry associated with the specific portal type. The value for IoT SiteWise Monitor (Classic) is "SITEWISE_PORTAL_V1". The value for IoT SiteWise Monitor (AI- aware) is "SITEWISE_PORTAL_V2". * *(string) --* * *(dict) --* The configuration entry associated with the specific portal type. The "portalTypeConfiguration" is a map of the "portalTypeKey" to the "PortalTypeEntry". * **portalTools** *(list) --* The array of tools associated with the specified portal type. The possible values are "ASSISTANT" and "DASHBOARD". * *(string) --* Return type: dict Returns: **Response Syntax** { 'portalStatus': { 'state': 'CREATING'|'PENDING'|'UPDATING'|'DELETING'|'ACTIVE'|'FAILED', 'error': { 'code': 'INTERNAL_FAILURE'|'VALIDATION_ERROR'|'LIMIT_EXCEEDED', 'message': 'string' } } } **Response Structure** * *(dict) --* * **portalStatus** *(dict) --* The status of the portal, which contains a state ( "UPDATING" after successfully calling this operation) and any error message. * **state** *(string) --* The current state of the portal. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / update_access_policy update_access_policy ******************** IoTSiteWise.Client.update_access_policy(**kwargs) Updates an existing access policy that specifies an identity's access to an IoT SiteWise Monitor portal or project resource. See also: AWS API Documentation **Request Syntax** response = client.update_access_policy( accessPolicyId='string', accessPolicyIdentity={ 'user': { 'id': 'string' }, 'group': { 'id': 'string' }, 'iamUser': { 'arn': 'string' }, 'iamRole': { 'arn': 'string' } }, accessPolicyResource={ 'portal': { 'id': 'string' }, 'project': { 'id': 'string' } }, accessPolicyPermission='ADMINISTRATOR'|'VIEWER', clientToken='string' ) Parameters: * **accessPolicyId** (*string*) -- **[REQUIRED]** The ID of the access policy. * **accessPolicyIdentity** (*dict*) -- **[REQUIRED]** The identity for this access policy. Choose an IAM Identity Center user, an IAM Identity Center group, or an IAM user. * **user** *(dict) --* An IAM Identity Center user identity. * **id** *(string) --* **[REQUIRED]** The IAM Identity Center ID of the user. * **group** *(dict) --* An IAM Identity Center group identity. * **id** *(string) --* **[REQUIRED]** The IAM Identity Center ID of the group. * **iamUser** *(dict) --* An IAM user identity. * **arn** *(string) --* **[REQUIRED]** The ARN of the IAM user. For more information, see IAM ARNs in the *IAM User Guide*. Note: If you delete the IAM user, access policies that contain this identity include an empty "arn". You can delete the access policy for the IAM user that no longer exists. * **iamRole** *(dict) --* An IAM role identity. * **arn** *(string) --* **[REQUIRED]** The ARN of the IAM role. For more information, see IAM ARNs in the *IAM User Guide*. * **accessPolicyResource** (*dict*) -- **[REQUIRED]** The IoT SiteWise Monitor resource for this access policy. Choose either a portal or a project. * **portal** *(dict) --* A portal resource. * **id** *(string) --* **[REQUIRED]** The ID of the portal. * **project** *(dict) --* A project resource. * **id** *(string) --* **[REQUIRED]** The ID of the project. * **accessPolicyPermission** (*string*) -- **[REQUIRED]** The permission level for this access policy. Note that a project "ADMINISTRATOR" is also known as a project owner. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / batch_put_asset_property_value batch_put_asset_property_value ****************************** IoTSiteWise.Client.batch_put_asset_property_value(**kwargs) Sends a list of asset property values to IoT SiteWise. Each value is a timestamp-quality-value (TQV) data point. For more information, see Ingesting data using the API in the *IoT SiteWise User Guide*. To identify an asset property, you must specify one of the following: * The "assetId" and "propertyId" of an asset property. * A "propertyAlias", which is a data stream alias (for example, "/company/windfarm/3/turbine/7/temperature"). To define an asset property's alias, see UpdateAssetProperty. Warning: With respect to Unix epoch time, IoT SiteWise accepts only TQVs that have a timestamp of no more than 7 days in the past and no more than 10 minutes in the future. IoT SiteWise rejects timestamps outside of the inclusive range of [-7 days, +10 minutes] and returns a "TimestampOutOfRangeException" error.For each asset property, IoT SiteWise overwrites TQVs with duplicate timestamps unless the newer TQV has a different quality. For example, if you store a TQV "{T1, GOOD, V1}", then storing "{T1, GOOD, V2}" replaces the existing TQV. IoT SiteWise authorizes access to each "BatchPutAssetPropertyValue" entry individually. For more information, see BatchPutAssetPropertyValue authorization in the *IoT SiteWise User Guide*. See also: AWS API Documentation **Request Syntax** response = client.batch_put_asset_property_value( enablePartialEntryProcessing=True|False, entries=[ { 'entryId': 'string', 'assetId': 'string', 'propertyId': 'string', 'propertyAlias': 'string', 'propertyValues': [ { 'value': { 'stringValue': 'string', 'integerValue': 123, 'doubleValue': 123.0, 'booleanValue': True|False, 'nullValue': { 'valueType': 'D'|'B'|'S'|'I'|'U' } }, 'timestamp': { 'timeInSeconds': 123, 'offsetInNanos': 123 }, 'quality': 'GOOD'|'BAD'|'UNCERTAIN' }, ] }, ] ) Parameters: * **enablePartialEntryProcessing** (*boolean*) -- This setting enables partial ingestion at entry-level. If set to "true", we ingest all TQVs not resulting in an error. If set to "false", an invalid TQV fails ingestion of the entire entry that contains it. * **entries** (*list*) -- **[REQUIRED]** The list of asset property value entries for the batch put request. You can specify up to 10 entries per request. * *(dict) --* Contains a list of value updates for an asset property in the list of asset entries consumed by the BatchPutAssetPropertyValue API operation. * **entryId** *(string) --* **[REQUIRED]** The user specified ID for the entry. You can use this ID to identify which entries failed. * **assetId** *(string) --* The ID of the asset to update. * **propertyId** *(string) --* The ID of the asset property for this entry. * **propertyAlias** *(string) --* The alias that identifies the property, such as an OPC-UA server data stream path (for example, "/company/windfarm/3/turbine/7/temperature"). For more information, see Mapping industrial data streams to asset properties in the *IoT SiteWise User Guide*. * **propertyValues** *(list) --* **[REQUIRED]** The list of property values to upload. You can specify up to 10 "propertyValues" array elements. * *(dict) --* Contains asset property value information. * **value** *(dict) --* **[REQUIRED]** The value of the asset property (see "Variant"). * **stringValue** *(string) --* Asset property data of type string (sequence of characters). The allowed pattern: "^$|[^u0000-u001Fu007F]+". The max length is 1024. * **integerValue** *(integer) --* Asset property data of type integer (whole number). * **doubleValue** *(float) --* Asset property data of type double (floating point number). The min value is -10^10. The max value is 10^10. Double.NaN is allowed. * **booleanValue** *(boolean) --* Asset property data of type Boolean (true or false). * **nullValue** *(dict) --* The type of null asset property data with BAD and UNCERTAIN qualities. * **valueType** *(string) --* **[REQUIRED]** The type of null asset property data. * **timestamp** *(dict) --* **[REQUIRED]** The timestamp of the asset property value. * **timeInSeconds** *(integer) --* **[REQUIRED]** The timestamp date, in seconds, in the Unix epoch format. Fractional nanosecond data is provided by "offsetInNanos". * **offsetInNanos** *(integer) --* The nanosecond offset from "timeInSeconds". * **quality** *(string) --* The quality of the asset property value. Return type: dict Returns: **Response Syntax** { 'errorEntries': [ { 'entryId': 'string', 'errors': [ { 'errorCode': 'ResourceNotFoundException'|'InvalidRequestException'|'InternalFailureException'|'ServiceUnavailableException'|'ThrottlingException'|'LimitExceededException'|'ConflictingOperationException'|'TimestampOutOfRangeException'|'AccessDeniedException', 'errorMessage': 'string', 'timestamps': [ { 'timeInSeconds': 123, 'offsetInNanos': 123 }, ] }, ] }, ] } **Response Structure** * *(dict) --* * **errorEntries** *(list) --* A list of the errors (if any) associated with the batch put request. Each error entry contains the "entryId" of the entry that failed. * *(dict) --* Contains error information for asset property value entries that are associated with the BatchPutAssetPropertyValue API. * **entryId** *(string) --* The ID of the failed entry. * **errors** *(list) --* The list of update property value errors. * *(dict) --* Contains error information from updating a batch of asset property values. * **errorCode** *(string) --* The error code. * **errorMessage** *(string) --* The associated error message. * **timestamps** *(list) --* A list of timestamps for each error, if any. * *(dict) --* Contains a timestamp with optional nanosecond granularity. * **timeInSeconds** *(integer) --* The timestamp date, in seconds, in the Unix epoch format. Fractional nanosecond data is provided by "offsetInNanos". * **offsetInNanos** *(integer) --* The nanosecond offset from "timeInSeconds". **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ServiceUnavailableException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException" IoTSiteWise / Client / create_dashboard create_dashboard **************** IoTSiteWise.Client.create_dashboard(**kwargs) Creates a dashboard in an IoT SiteWise Monitor project. See also: AWS API Documentation **Request Syntax** response = client.create_dashboard( projectId='string', dashboardName='string', dashboardDescription='string', dashboardDefinition='string', clientToken='string', tags={ 'string': 'string' } ) Parameters: * **projectId** (*string*) -- **[REQUIRED]** The ID of the project in which to create the dashboard. * **dashboardName** (*string*) -- **[REQUIRED]** A friendly name for the dashboard. * **dashboardDescription** (*string*) -- A description for the dashboard. * **dashboardDefinition** (*string*) -- **[REQUIRED]** The dashboard definition specified in a JSON literal. * IoT SiteWise Monitor (Classic) see Create dashboards (CLI) * IoT SiteWise Monitor (AI-aware) see Create dashboards (CLI) in the *IoT SiteWise User Guide* * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. * **tags** (*dict*) -- A list of key-value pairs that contain metadata for the dashboard. For more information, see Tagging your IoT SiteWise resources in the *IoT SiteWise User Guide*. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'dashboardId': 'string', 'dashboardArn': 'string' } **Response Structure** * *(dict) --* * **dashboardId** *(string) --* The ID of the dashboard. * **dashboardArn** *(string) --* The ARN of the dashboard, which has the following format. "arn:${Partition}:iotsitewise:${Region}:${Account}:dashboar d/${DashboardId}" **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" IoTSiteWise / Client / update_project update_project ************** IoTSiteWise.Client.update_project(**kwargs) Updates an IoT SiteWise Monitor project. See also: AWS API Documentation **Request Syntax** response = client.update_project( projectId='string', projectName='string', projectDescription='string', clientToken='string' ) Parameters: * **projectId** (*string*) -- **[REQUIRED]** The ID of the project to update. * **projectName** (*string*) -- **[REQUIRED]** A new friendly name for the project. * **projectDescription** (*string*) -- A new description for the project. * **clientToken** (*string*) -- A unique case-sensitive identifier that you can provide to ensure the idempotency of the request. Don't reuse this client token if a new idempotent request is required. This field is autopopulated if not provided. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" IoTSiteWise / Client / put_storage_configuration put_storage_configuration ************************* IoTSiteWise.Client.put_storage_configuration(**kwargs) Configures storage settings for IoT SiteWise. See also: AWS API Documentation **Request Syntax** response = client.put_storage_configuration( storageType='SITEWISE_DEFAULT_STORAGE'|'MULTI_LAYER_STORAGE', multiLayerStorage={ 'customerManagedS3Storage': { 's3ResourceArn': 'string', 'roleArn': 'string' } }, disassociatedDataStorage='ENABLED'|'DISABLED', retentionPeriod={ 'numberOfDays': 123, 'unlimited': True|False }, warmTier='ENABLED'|'DISABLED', warmTierRetentionPeriod={ 'numberOfDays': 123, 'unlimited': True|False }, disallowIngestNullNaN=True|False ) Parameters: * **storageType** (*string*) -- **[REQUIRED]** The storage tier that you specified for your data. The "storageType" parameter can be one of the following values: * "SITEWISE_DEFAULT_STORAGE" – IoT SiteWise saves your data into the hot tier. The hot tier is a service-managed database. * "MULTI_LAYER_STORAGE" – IoT SiteWise saves your data in both the cold tier and the hot tier. The cold tier is a customer- managed Amazon S3 bucket. * **multiLayerStorage** (*dict*) -- Identifies a storage destination. If you specified "MULTI_LAYER_STORAGE" for the storage type, you must specify a "MultiLayerStorage" object. * **customerManagedS3Storage** *(dict) --* **[REQUIRED]** Contains information about a customer managed Amazon S3 bucket. * **s3ResourceArn** *(string) --* **[REQUIRED]** The ARN of the Amazon S3 object. For more information about how to find the ARN for an Amazon S3 object, see Amazon S3 resources in the *Amazon Simple Storage Service User Guide*. * **roleArn** *(string) --* **[REQUIRED]** The ARN of the Identity and Access Management role that allows IoT SiteWise to send data to Amazon S3. * **disassociatedDataStorage** (*string*) -- Contains the storage configuration for time series (data streams) that aren't associated with asset properties. The "disassociatedDataStorage" can be one of the following values: * "ENABLED" – IoT SiteWise accepts time series that aren't associated with asset properties. Warning: After the "disassociatedDataStorage" is enabled, you can't disable it. * "DISABLED" – IoT SiteWise doesn't accept time series (data streams) that aren't associated with asset properties. For more information, see Data streams in the *IoT SiteWise User Guide*. * **retentionPeriod** (*dict*) -- The number of days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier. * **numberOfDays** *(integer) --* The number of days that your data is kept. Note: If you specified a value for this parameter, the "unlimited" parameter must be "false". * **unlimited** *(boolean) --* If true, your data is kept indefinitely. Note: If configured to "true", you must not specify a value for the "numberOfDays" parameter. * **warmTier** (*string*) -- A service managed storage tier optimized for analytical queries. It stores periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob API. * **warmTierRetentionPeriod** (*dict*) -- Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled. * **numberOfDays** *(integer) --* The number of days the data is stored in the warm tier. * **unlimited** *(boolean) --* If set to true, the data is stored indefinitely in the warm tier. * **disallowIngestNullNaN** (*boolean*) -- Describes the configuration for ingesting NULL and NaN data. By default the feature is allowed. The feature is disallowed if the value is "true". Return type: dict Returns: **Response Syntax** { 'storageType': 'SITEWISE_DEFAULT_STORAGE'|'MULTI_LAYER_STORAGE', 'multiLayerStorage': { 'customerManagedS3Storage': { 's3ResourceArn': 'string', 'roleArn': 'string' } }, 'disassociatedDataStorage': 'ENABLED'|'DISABLED', 'retentionPeriod': { 'numberOfDays': 123, 'unlimited': True|False }, 'configurationStatus': { 'state': 'ACTIVE'|'UPDATE_IN_PROGRESS'|'UPDATE_FAILED', 'error': { 'code': 'VALIDATION_ERROR'|'INTERNAL_FAILURE', 'message': 'string' } }, 'warmTier': 'ENABLED'|'DISABLED', 'warmTierRetentionPeriod': { 'numberOfDays': 123, 'unlimited': True|False }, 'disallowIngestNullNaN': True|False } **Response Structure** * *(dict) --* * **storageType** *(string) --* The storage tier that you specified for your data. The "storageType" parameter can be one of the following values: * "SITEWISE_DEFAULT_STORAGE" – IoT SiteWise saves your data into the hot tier. The hot tier is a service-managed database. * "MULTI_LAYER_STORAGE" – IoT SiteWise saves your data in both the cold tier and the hot tier. The cold tier is a customer-managed Amazon S3 bucket. * **multiLayerStorage** *(dict) --* Contains information about the storage destination. * **customerManagedS3Storage** *(dict) --* Contains information about a customer managed Amazon S3 bucket. * **s3ResourceArn** *(string) --* The ARN of the Amazon S3 object. For more information about how to find the ARN for an Amazon S3 object, see Amazon S3 resources in the *Amazon Simple Storage Service User Guide*. * **roleArn** *(string) --* The ARN of the Identity and Access Management role that allows IoT SiteWise to send data to Amazon S3. * **disassociatedDataStorage** *(string) --* Contains the storage configuration for time series (data streams) that aren't associated with asset properties. The "disassociatedDataStorage" can be one of the following values: * "ENABLED" – IoT SiteWise accepts time series that aren't associated with asset properties. Warning: After the "disassociatedDataStorage" is enabled, you can't disable it. * "DISABLED" – IoT SiteWise doesn't accept time series (data streams) that aren't associated with asset properties. For more information, see Data streams in the *IoT SiteWise User Guide*. * **retentionPeriod** *(dict) --* The number of days your data is kept in the hot tier. By default, your data is kept indefinitely in the hot tier. * **numberOfDays** *(integer) --* The number of days that your data is kept. Note: If you specified a value for this parameter, the "unlimited" parameter must be "false". * **unlimited** *(boolean) --* If true, your data is kept indefinitely. Note: If configured to "true", you must not specify a value for the "numberOfDays" parameter. * **configurationStatus** *(dict) --* Contains current status information for the configuration. * **state** *(string) --* The current state of the configuration. * **error** *(dict) --* Contains associated error information, if any. * **code** *(string) --* The error code. * **message** *(string) --* The error message. * **warmTier** *(string) --* A service managed storage tier optimized for analytical queries. It stores periodically uploaded, buffered and historical data ingested with the CreaeBulkImportJob API. * **warmTierRetentionPeriod** *(dict) --* Set this period to specify how long your data is stored in the warm tier before it is deleted. You can set this only if cold tier is enabled. * **numberOfDays** *(integer) --* The number of days the data is stored in the warm tier. * **unlimited** *(boolean) --* If set to true, the data is stored indefinitely in the warm tier. * **disallowIngestNullNaN** *(boolean) --* Describes the configuration for ingesting NULL and NaN data. By default the feature is allowed. The feature is disallowed if the value is "true". **Exceptions** * "IoTSiteWise.Client.exceptions.InvalidRequestException" * "IoTSiteWise.Client.exceptions.ResourceAlreadyExistsException" * "IoTSiteWise.Client.exceptions.ResourceNotFoundException" * "IoTSiteWise.Client.exceptions.InternalFailureException" * "IoTSiteWise.Client.exceptions.ThrottlingException" * "IoTSiteWise.Client.exceptions.LimitExceededException" * "IoTSiteWise.Client.exceptions.ConflictingOperationException"