Share

Maximo to Tandem - Update Asset Properties

Asset property data is synchronized from Maximo to Tandem through the updating of user-defined parameters in Tandem. Actionable insights such as open work order and service request counts, dynamic URLs for each asset, and other key operational details are provided. Tandem assets are also enriched with Maximo properties such as installation date, description, and manufacturer, with Tandem's visualization capabilities being leveraged for enhanced asset management.

Prerequisites

A Tandem facility and its assets must be set up for synchronization. It is also assumed that the Tandem assets are configured with the required user-defined properties that need to be updated. A table is provided below that lists the properties the solution expects to be configured. The security requirements for the solution should also be reviewed.

Access and Authentication

Access credentials with the appropriate permissions should be available to read and write data to Tandem and to access the Maximo API.

For Autodesk Tandem, an application with access to the Tandem Data API must be created in Autodesk Platform Services. For steps on creating the application, see this link. The Client ID from this application should be added as a user in the Tandem Facility with Edit/Manage permissions. More details on how to set this up are included on this page.

For the Maximo API, an API key must be created under the "Integration > API Keys" module in the Maximo instance. For more details on how to create and manage API keys, see this link.

User-Defined Properties

The Tandem facility must be set up with the facility template containing the following properties. These properties are used to map Maximo fields to Tandem asset properties. Each property should be created under the Maximo category. The table also provides the plugin parameter that holds this configuration.

If needed, additional properties from Maximo can be synchronized to Tandem. See the Adding Additional Properties section below.

Property Name Description Data Type
OrgId Organization ID, which is the account represented on IBM Maximo. String
SiteId The building ID, which represents a facility in Tandem. String
AssetId The unique ID of an asset coming from IBM Maximo. Number
AssetNum The asset name or number from IBM Maximo, which must match the asset name in Tandem. String
Description Asset description. String

Solution Features

Feature Description
Asset Properties Maximo asset data is synchronized to corresponding properties on Tandem assets.
Work Orders and Service Requests Counts The number of work orders and service requests for each asset is tracked and grouped by status.
Navigate to Maximo from Tandem Links to work orders and service requests in Maximo are generated for each asset to allow easy navigation.

Basic Setup

This section covers the minimum configuration required for the solution to run. The necessary parameters and their values for each plugin are detailed below. The instructions in the solution walkthrough should be followed to set up the solution.

IBM Maximo Stream Plugin

Parameter Name Description Required
Authentication Method The authentication method for Maximo APIs. Yes
Authentication Value The corresponding authentication value. Yes
Maximo Base URL The Maximo application base URL (must use HTTPS). Yes
Entity The entity that must be read from Maximo. Must be configured as Assets with WO&SR. Yes
Static Data The JSON object which contains the configuration for the solution. Both OrgId and SiteId are required. Copy it from the Appendix section IBM Maximo Stream - Static Data. Yes.
  • The Maximo Base URL can be determined by referencing the URL used to access Maximo in a web browser. For example, if Maximo is accessed at https://maximo.example.com/maximo, the Maximo Base URL would be https://maximo.example.com.
  • The base URL may also be found in the Maximo API documentation. In some installations, a specific API endpoint such as https://maximo.example.com/api is configured in System Configuration > Platform Configuration > System Properties, filtered by the property mxe.oslc.restwebappurl.
  • The OrgId and SiteId are required and can be found in the Maximo instance.

Autodesk Tandem Service/Connector Plugin

For the Autodesk Tandem service plugin, the credentials created while setting up the application in Autodesk Platform Service (APS) and the Tandem facility details should be entered.

Parameter Name Description Required
Client ID The client ID from the APS account setup. Yes
Client Secret The client secret from the APS account setup. Yes
Facility URN The URN (Uniform Resource Name) of the Tandem facility. Yes
Data Processing The type of data processing to be performed. Yes.

Data Processing must be set to Retrieve Asset Properties for the Autodesk Tandem Service plugin and Update Asset Properties for the Autodesk Tandem Connector plugins.

Advanced Setup

Solution Overview

UpdateAssetProperties

IBM Maximo Stream

Assets are read from IBM Maximo along with their work orders and service requests by the IBM Maximo Stream plugin, and they are passed to the next plugin in the solution. The following parameters are used to configure the plugin and its behavior:

  • Entity: The Assets with WO&SR entity is read from IBM Maximo. This entity is configured to include assets along with their work orders and service requests. The fields to be read for assets, work orders, and service requests are defined in the Entity Parameter List parameter.

  • Entity Parameter List: The Entity Parameter List parameter is a JSON object that defines the fields to be read for assets, work orders, and service requests. Default values are provided in the Appendix section of this document. Each entity has configuration such as select, which specifies which columns or properties of the entity are to be read; filter, which filters entities based on the condition provided; and mapping, which transforms columns from Maximo into the appropriate Tandem properties.

  • Static Data: The Static Data parameter is a JSON object that contains the configuration for the solution. This is provided in the Appendix section of this document, along with a guide on how to configure it.

    The Appendix contains a detailed explanation of how to configure and use the Entity Parameter List and Static Data parameters.

Converters

Two instances of this plugin are used in the solution.

  • Transform: This plugin contains the transformation logic for converting Maximo properties to Tandem user-defined properties. This converter reads the data from Maximo and the configuration from the Scheduled data stream for the user-defined properties. The transformation logic for the properties and the fixedProperties is then applied. The values for all dynamicProperties are calculated and sent as a batch to Tandem to be updated for the asset. If the user-defined properties in Tandem are configured differently from the out-of-the-box properties provided, they must be updated accordingly as mentioned above in the Scheduled Data Stream plugin.

  • PrepTandem: This converter plugin prepares the incoming object to be in the format accepted by the Tandem Service. A tcMetadata object is created that contains the facilityId, modelId, and the assetId with the data object containing the properties and their values.

Autodesk Tandem Service

The Autodesk Tandem Service plugin is responsible for scanning and updating assets with properties from Maximo in Tandem.

  • Retrieve Generic Assets: This instance is used to retrieve assets from Tandem and update them with properties from Maximo. The tcMetadata object created by the PrepTandem converter plugin is used to update the properties for each asset.

Autodesk Tandem Connector

The Autodesk Tandem Connector plugin is responsible for sending data to Tandem and updating the user-defined properties in Tandem.

  • Update Asset Properties: This instance is used to update the properties for assets in Tandem. The tcMetadata object created by the PrepTandem converter plugin is used to update the properties for each asset.

Adding Additional Properties

This section explains how the solution can be configured to add more Maximo properties to be synced to Tandem. The source where the list of properties is configured is under the IBM Maximo Stream plugin's Entity Parameter List parameter, which holds a JSON object that has a property called mapping. This is a list of key-value pairs that lists all Maximo properties as keys and the associated Tandem user-defined property as the value. Additional properties that need to be synced to Tandem can be mentioned in this list.

Note:

The existing keys should NOT be removed. Additional properties should be added after the existing keys.

Note: The value of the additional keys must also be configured as user-defined properties under the same category as the existing key-value pairs.

Work Order and Service Request Configuration

By default, the solution retrieves the count of work orders and service requests for each asset grouped by status and adds a direct link to the work order list and service request list in Maximo into the Tandem property.

The solution can be configured to turn off the count synchronization. The list of statuses that are counted is all configured under the IBM Maximo Stream plugin's Static Data configuration's Work Order Configuration and Service Request Configuration keys. Both of these keys have similar properties.

See the Appendix section IBM Maximo Stream - Static Data for more details on this.

Troubleshooting

As a first step to troubleshoot the issue, please always check the plugin parameters against the Appendix section Plugin Parameters - Preset for the solution. to ensure that the parameters are set correctly.

Debugging Using Data Trace or Plugin Exceptions

  • If Data Trace is enabled, an (x) icon is shown on the plugin where the issue occurs. The icon can be double-clicked to open the logs and review the error.
  • If Data Trace is not enabled, the Exceptions tab of each plugin should be reviewed, starting from the last plugin and moving backward to the first plugin.
  • The Common Issues and Suggested Actions section below should be reviewed for frequent issues and recommended resolutions.
  • Plugin configuration parameters should be verified against the Appendix section.
  • If the issue is not listed below or the suggested actions do not resolve it, Tandem Connect Support should be contacted with the error message or a screenshot of the error, along with the solution name and version.

Common Issues and Suggested Actions

  • Authentication Issues:
    • Access credentials and permissions should be verified as correct.
    • The API key should be verified as correct and granted appropriate permissions.
    • For Autodesk Tandem, the Client ID and Client Secret should be verified and confirmed to have appropriate permissions.
    • For IBM Maximo, the API key should be verified and confirmed to have appropriate permissions.
  • Data / Assets are not being updated in Tandem:
    • The configuration of the IBM Maximo Stream plugin should be reviewed to ensure the following:
      • The correct properties are being retrieved from Maximo.
      • The Tandem properties are mapped correctly to the Maximo properties.
      • The Tandem facility is configured with the correct template and includes the required user-defined properties under the same category specified in the Static Data configuration.
    • No logs are being written:
      • Plugin logs should be reviewed to ensure no errors are present.
      • If no errors are present and logs are still not written, Tandem Connect Support should be contacted with the error message or a screenshot of the error, along with the solution name and version.

Appendix

Plugin Parameters - Preset for the solution.

Below are the configurations that are preset for the solution.

Plugin Name Plugin Parameter Value
IBM Maximo Stream Entity Name List Assets with WOAndSR
IBM Maximo Stream Entity Parameter List See Appendix section IBM Maximo Stream - Entity Parameter List
IBM Maximo Stream Static Data See Appendix section IBM Maximo Stream - Static Data
Autodesk Tandem Service Data Processing Retrieve Asset Properties
Autodesk Tandem Connector Data Processing Update Asset Properties
Autodesk Tandem Connector Update Asset Operation Mode Compare and Insert/Update Operation

IBM Maximo Stream - Entity Parameter List

Section Field Description
Assets select A comma-separated list of asset fields to be retrieved from Maximo.
filter A filter condition to select specific assets (e.g., by site or status).
mapping Maps Maximo field names to Tandem property names.
orderBy The field used to order the asset results by (e.g., +assetnum).
Work Orders select A comma-separated list of work order fields to be retrieved from Maximo.
groupByCountField The field used to group and count work orders (e.g., by status). This is required to be set to status if status counts are to be displayed in Tandem.
ServiceRequests select A comma-separated list of service request fields to be retrieved from Maximo.
groupByCountField The field used to group and count service requests (e.g., by status). This is required to be set to status if status counts are to be displayed in Tandem.
  • The select and filter fields control which data is retrieved from Maximo.
  • The mapping object ensures Maximo fields are correctly mapped to Tandem properties.
  • groupByCountField is used to aggregate counts by status for work orders and service requests.
  {
  "Assets": {
    "select": "assetid,assetnum,description",
    "filter": "siteid=\"<SITE_NAME>\"",
    "mapping": {
      "orgid": "OrgId",
      "siteid": "SiteId",
      "assetid": "AssetId",
      "assetnum": "AssetNum",
      "description": "Description"
    },
    "orderBy": "+assetnum"
  },
  "Work Orders": {
    "select": "wonum,status,assetnum",
    "groupByCountField": "status"
  },
  "ServiceRequests": {
    "select": "ticketid,status,assetnum",
    "groupByCountField": "status"
    }
  }

IBM Maximo Stream - Static Data

The static data JSON object is used to provide configuration and additional parameters that are passed through the solution pipeline. This object controls how Maximo and Tandem interact, which properties are synchronized, and how work order and service request information is handled.

How to Configure

The static data object consists of two main sections:

  • Maximo Configuration: Connection details for IBM Maximo are contained here, such as the base URL, site ID, and the property name used for asset numbers.

  • Tandem Configuration: How asset data is mapped and updated in Autodesk Tandem is defined here. This includes:

    • Classification: The category in Tandem where properties are stored (e.g., Maximo).
    • Maximo Asset Number Property: The property in Tandem that holds the Maximo asset number.
    • Work Order Configuration (Optional):
      • Add Status Counts: Set to true to enable status count synchronization.
      • Status to Lookup: A list of work order statuses to be tracked (e.g., In Progress, Waiting for Approval).
      • Properties For Status Counts: Each status is mapped to a property name in Tandem.
      • Add Work Order URL: Set to true to include a direct URL to work orders for each asset.
    • Service Request Configuration (Optional):
      • Add Status Counts: Set to true to enable service request status count synchronization.
      • Status to Lookup: A list of service request statuses to be tracked.
      • Properties For Status Counts: Each status is mapped to a property name in Tandem.
      • Add Service Request URL: Set to true to include a direct URL to service requests for each asset.
    • Fixed Properties (Optional):
      • Key-value pairs for static properties to be set on all assets (e.g., a FlexField for filtering or troubleshooting).

How to Use

  1. The static data JSON object should be copied from the Appendix.
  2. The values for your environment should be updated (e.g., the correct baseurl, siteId, and any custom property names should be set).
  3. The updated JSON should be pasted into the Static Data parameter field when configuring the Maximo Stream plugin in the solution walkthrough.
  4. It should be ensured that the properties and classifications referenced in the JSON exist in your Tandem facility template.
Note:
  • The Work Order Configuration and Service Request Configuration sections are optional. If omitted, status counts and URLs will not be updated in Tandem.
  • The Fixed Properties section is also optional and can be used for any static values that should be applied to all assets.

This configuration ensures that the solution will correctly synchronize asset data, work order and service request counts, and any static properties between Maximo and Tandem.

{
  "Maximo Configuration": {
    "baseurl": "",
    "siteId": "",
    "Asset Number Property": "AssetNum"
  },
  "Tandem Configuration": {
    "Classification": "Maximo",
    "Maximo Asset Number Property": "Maximo.AssetNum",
    "Work Order Configuration": {
      "Add Status Counts": true,
      "Status to Lookup": [
        "In Progress",
        "Waiting for Approval",
        "Waiting for Material",
        "Waiting for Planning",
        "Waiting for Scheduling"
      ],
      "Properties For Status Counts": {
        "In Progress": "WOInProgress",
        "Waiting for Approval": "WOWaitingApproval",
        "Waiting for Material": "WOWaitingMaterial",
        "Waiting for Planning": "WOWaitingPlanning",
        "Waiting for Scheduling": "WOWaitingScheduling"
      },
      "Add Work Order URL": true
    },
    "Service Request Configuration": {
      "Add Status Counts": true,
      "Status to Lookup": [
        "New",
        "Queued",
        "Pending",
        "In Progress"
      ],
      "Properties For Status Counts": {
        "New": "SRNew",
        "Queued": "SRQueued",
        "Pending": "SRPending",
        "In Progress": "SRInProgress"
      },
      "Add Service Request URL": true
    },
    "Fixed Properties": {
      "FlexField": ""
    }
  }
}

Specifications

Version: 2.0.0

Publish Date: October 20, 2025

Plugin Name Plugin Version
IBM Maximo Stream 2.0.3
Autodesk Tandem Service 4.1.0
Autodesk Tandem Connector 4.1.0

Was this information helpful?